Loading tool…
Turn a CSV table (with a header row) into a JSON array of objects, or convert a JSON array back into CSV. Quoted fields, commas and embedded quotes are handled correctly.
Loading tool…
CSV ⇄ JSON is a free, private online tool that lets you convert a CSV table to a JSON array of objects, or JSON back to CSV. It runs entirely in your browser, so nothing you enter is uploaded to a server.
Privacy: this tool runs entirely in your browser. Your input is never sent to, received by, or stored on any server — there are no uploads and no tracking of what you enter.
The first CSV row is treated as the header. Each subsequent row becomes a JSON object whose keys are the header names. This is ideal for feeding spreadsheet exports into APIs or JavaScript.
Given a JSON array of objects, the converter collects the union of all keys as the header row and writes one CSV line per object. Values containing commas, quotes or newlines are safely quoted and escaped per RFC 4180.
Spreadsheet data is often sensitive. Because this tool runs locally, your rows never leave your device — unlike many online converters that upload your file.
"") and commas/newlines inside quotes.CSV (comma-separated values) and JSON are the two most common ways to move tabular data around. CSV is compact and is what spreadsheets, databases and analytics tools import and export — each line is a row, each value separated by a comma. JSON is what web APIs and JavaScript expect — an array of objects, each object a row keyed by column name. Converting between them is a daily task for developers, analysts and marketers.
The converter treats the first CSV line as the header row and uses those names as the keys for every object it creates. Each subsequent line becomes one JSON object. Crucially, it follows the CSV rules from RFC 4180: fields wrapped in double quotes may contain commas, newlines and escaped quotes (""), so a value like "Smith, John" is parsed as a single field rather than split in two.
Going the other way, the tool scans your JSON array of objects and collects the union of all keys to build a complete header row — so even if some objects are missing a field, the columns line up. Each object becomes a CSV line, and any value containing a comma, quote or newline is automatically wrapped in quotes and escaped, producing output that opens cleanly in Excel, Google Sheets or any CSV parser.
When converting CSV to JSON, every cell is kept as a string by default. This is deliberate: it prevents silent data loss such as stripping leading zeros from postal codes or product IDs, or misreading a long number in scientific notation. If your application needs real numbers or booleans, cast them explicitly in your own code where you control the rules — the converter never guesses.
Typical jobs include turning a spreadsheet export into the JSON body for an API request, flattening an API's JSON response into a CSV for stakeholders, migrating data between systems, and quickly eyeballing a dataset in a friendlier shape. Because the work is done locally in your browser, you can convert spreadsheets containing customer or financial data without it ever touching a server.