Skip to content

CSV ↔ JSON converter — offline

Spreadsheet exports to JSON and back, with a live table preview — nothing uploaded.

100% private — files never leave your device
CSV
JSON

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 — 01234 becomes 1234.
  • 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. 1

    Pick the direction.

  2. 2

    Paste CSV (or drop a .csv file) or a JSON array.

  3. 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.