Loading...

CSV to JSON Converter Online — Bidirectional, Free, Client-Side

Convert CSV to JSON and JSON to CSV instantly. Paste a spreadsheet export, pick a delimiter, and get a typed JSON array — or paste a JSON array of objects and get a tidy CSV with consistent quoting. Every conversion runs entirely in your browser, so private data, customer rows, or unreleased product info never leave your machine. Use this tool to bridge spreadsheets and APIs, prepare seed data for tests, or sanity-check a CSV before importing into a database.

Features

  • Bidirectional conversion

    CSV → JSON and JSON → CSV in the same tool. Swap input and output with one click.

  • RFC 4180 CSV parser

    Handles quoted fields, embedded delimiters, escaped quotes, and CRLF line endings correctly.

  • Custom delimiters

    Comma, semicolon, tab, pipe, or any custom character — useful for European Excel exports.

  • Optional type coercion

    Auto-convert numeric, boolean, and null values to native JSON types, or keep everything as strings.

  • Download or copy

    Copy to clipboard for quick pasting, or download the result as a .json or .csv file.

How to convert CSV to JSON (or back) online

Three clicks to swap formats — no upload, no signup.

  1. Pick a directionClick CSV → JSON to parse CSV, or JSON → CSV to flatten an array of objects to CSV.
  2. Set delimiter and headerDefault is comma + first row as header. Adjust if your file uses semicolons or has no header.
  3. Paste your inputDrop the CSV or JSON into the left pane. Conversion runs as you type.
  4. Copy or downloadUse the Copy button for quick reuse, or Download to save as a file.

Examples

CSV → JSON (with header)

Input
name,age,email
Alice,30,[email protected]
Bob,25,[email protected]
Output
[
  { "name": "Alice", "age": 30, "email": "[email protected]" },
  { "name": "Bob", "age": 25, "email": "[email protected]" }
]

JSON → CSV (array of objects)

Input
[{ "id": 1, "title": "Hello, world", "tags": ["a", "b"] }]
Output
id,title,tags
1,"Hello, world","[""a"",""b""]"

Nested values are stringified as JSON inside a quoted CSV field.

Frequently Asked Questions

Does the file leave my browser?
No. CSV ↔ JSON runs entirely in client-side JavaScript. Nothing is uploaded; nothing is logged. Open DevTools and the Network tab will be empty while you convert.
How are quoted fields and embedded commas handled?
The parser follows RFC 4180. Fields wrapped in double quotes can contain commas, newlines, and escaped quotes (""). When emitting CSV, fields containing the delimiter, quote, or newline are automatically quoted.
What is "Coerce types"?
When enabled, numbers (like 42 or 3.14), booleans (true/false), null, and empty strings are converted to their native JSON types. Disable it if you need every value to remain a string — for example to preserve leading zeros in IDs or zip codes.
Can I convert TSV (tab-separated values)?
Yes. Pick Tab (\t) from the delimiter dropdown. Custom delimiters such as `|` are also supported.
What happens with nested JSON when converting to CSV?
Nested arrays and objects are stringified as JSON inside a single CSV cell. If you need flat CSV from deeply nested data, pre-process the JSON to flatten the structure first.
Is there a row limit?
There is no fixed limit — performance scales with browser memory. The tool comfortably handles tens of thousands of rows.