CSV ↔ JSON converter — offline
Spreadsheet exports to JSON and back, with a live table preview — nothing uploaded.
Convert CSV to JSON without uploading your spreadsheet
A CSV export is almost never anonymous. Customer lists, order histories, mailing lists, payroll extracts, analytics dumps — the format exists precisely for moving records between systems, and those records are usually about people. Uploading one to a converter site hands over the entire dataset, which for personal data is a disclosure with real regulatory weight, not just an awkward moment.
Parsing here uses the open-source Papa Parse library running in your browser, in both directions, with a table preview of the first rows so you can confirm the columns landed correctly. Nothing is transmitted — the site has no backend, and a Content-Security-Policy blocks third-party requests. You can drop a .csv file straight in.
Both directions, with delimiters detected for you
CSV with a header row becomes an array of JSON objects, using the header names as keys. A JSON array of objects becomes CSV with a header row derived from the keys. That covers the two everyday needs: getting a spreadsheet export into an API request, and getting an API response into something a spreadsheet will open.
Comma, semicolon, and tab delimiters are detected automatically on input, which matters more than it sounds. Excel in much of Europe writes semicolon-separated files — because the comma is the decimal separator there — and a converter assuming commas turns each row into a single mangled column. Output uses commas.
Where CSV gets messy
CSV has no real specification, which is why it causes so much trouble. Worth watching for:
- Nesting. CSV is flat. Nested JSON objects and arrays have no natural column representation, so structure has to be flattened or serialised.
- Type loss. Everything in CSV is text. Numbers, booleans, and dates all arrive as strings and need parsing on the far side.
- Leading zeros. Spreadsheets famously mangle postcodes, phone numbers, and product codes by treating them as numbers —
01234becomes1234. - Embedded separators. Commas and newlines inside quoted fields are handled correctly here, but they are the classic source of corrupted rows in hand-rolled parsers.
Related and equally local: JSON formatter, JSON, YAML and TOML converter, and mock data generator when you would rather not use the real export at all.
How to convert CSV to JSON without uploading
- 1
Pick the direction.
- 2
Paste CSV (or drop a .csv file) or a JSON array.
- 3
Check the preview table, copy the result.
CSV ↔ JSON — frequently asked questions
Are my spreadsheets uploaded to convert them?
No — parsing uses the open-source Papa Parse library in your browser. Exports full of customer data stay on your machine.
Which direction does it convert?
Both: CSV (with a header row) becomes an array of JSON objects, and a JSON array of objects becomes CSV. A table preview shows the first rows.
Are delimiters detected automatically?
Yes — comma, semicolon, and tab are auto-detected on input; output uses commas.