CSV and JSON converter

Spreadsheets export CSV and APIs speak JSON, so the gap between them has to be crossed constantly — a column of records exported from a report and needed as a request body, or a response that has to land in a spreadsheet someone else will read. This converter goes both ways and handles the parts of CSV that trip up a naive split on commas: quoted fields, commas and line breaks inside them, and doubled quotes. It can also read values as their real types, so a column of numbers arrives as numbers rather than strings. The whole conversion runs in your browser, which matters because exported spreadsheets are usually full of customer data.

How to convert between CSV and JSON

  1. Choose a direction: CSV to JSON, or JSON to CSV.
  2. Paste your data into the box, or drop a .csv, .tsv or .json file onto it.
  3. Set the delimiter if the file does not use commas — semicolons are common in European exports, and tabs in data copied out of a spreadsheet.
  4. Choose whether the first row holds the column names, and whether values that look like numbers or true and false should be converted. Then press Convert and copy or download the result.

Questions about converting CSV and JSON

Is my data uploaded?

No. The file is read and parsed by your browser inside the page. Nothing is sent over the network, which is worth knowing when the export contains names, emails or order records.

Does it handle commas and line breaks inside a field?

Yes. The parser follows RFC 4180: a field wrapped in double quotes can contain the delimiter, line breaks, and doubled quotes to mean a literal quote character. That is exactly what a spreadsheet writes when a cell holds an address or a sentence.

Why are my postal codes losing their leading zeros?

They are not — type conversion deliberately leaves them alone. A value like 01234 is not a valid plain number, so it stays a string. Turn type conversion off entirely if you want every value to remain text.

What happens to duplicate or empty column names?

An empty header becomes column1, column2 and so on, and a repeated name gets a numbered suffix. Without that, later columns would silently overwrite earlier ones, because a JSON object cannot hold the same key twice.

Can it convert nested JSON to CSV?

Only shallowly. CSV is a flat grid, so a nested object or array is written as JSON text inside its cell rather than spread across columns. Flatten the structure first if you need each field in its own column.

Other tools

Languages