CSV to JSON Converter

Convert spreadsheet data between CSV and JSON in either direction, with automatic delimiter detection and proper handling of quoted fields.

🔒 Runs in your browser — your text is never uploaded.Shortcuts: / search · Ctrl/⌘ + Enter main button

How to use the CSV to JSON Converter

  1. Choose CSV → JSON or JSON → CSV.
  2. Paste your data or open a file.
  3. Adjust the delimiter and header options.
  4. Copy or download the converted output.

Example

Input
name,age
Ann,31
Result
[
  { "name": "Ann", "age": 31 }
]

CSV to JSON

  • The delimiter is detected automatically, or you can choose comma, semicolon, tab or pipe.
  • With “First row is header” on, each row becomes an object whose keys come from the header. Empty headers are named column1, column2 and so on.
  • With it off, each row becomes an array of values.
  • “Convert numbers & true/false” turns values such as 42 or 3.14 into numbers and true, false and null into their JSON types. Values with a leading zero, such as the ZIP code 01234, are always kept as text. Turn the option off to keep every value as text, for example for ID numbers.

A summary shows the number of rows and columns and the delimiter that was used. Quoted fields, quotes inside quotes and commas inside quoted text are handled.

JSON to CSV

Switch to JSON → CSV and paste an array of objects or an array of arrays. The columns are collected from the keys of every object, so items with missing keys get empty cells. Nested objects and arrays are stored as JSON text inside the cell, and values that contain the delimiter, quotes or line breaks are quoted correctly.

Preparing data

  • Export spreadsheets as CSV first. In Excel and Google Sheets use File → Download or Save As → CSV.
  • Check that every row has the same number of columns.
  • If your file uses semicolons, which is common in regions that use a comma as the decimal mark, pick Semicolon.
  • Large files can be opened with “Open file”, up to 5 MB.

After converting

Tidy the JSON with the JSON Formatter and compare two versions with the JSON Compare. If your values need encoding for a web address or a URL, see the URL Encoder/Decoder.

Frequently asked questions

Does it handle commas inside values?

Yes. Values wrapped in double quotes can contain commas, line breaks and escaped quotes (""), following the CSV standard (RFC 4180).

How is nested JSON converted to CSV?

Top-level keys become columns. Nested objects and arrays are written into a cell as JSON text.

Will leading zeros be kept?

Yes. A value such as 01234 is not treated as a number because of its leading zero, so it stays text. If you want values like 12345 kept as text too, turn off “Convert numbers & true/false”.

Can I convert a file with no header row?

Yes. Untick “First row is header” and each row becomes an array of values.

Learn more

More tools you may like