JSON to CSV Converter

Paste an array of JSON objects to turn it into a CSV table you can open in a spreadsheet, or switch the direction to turn CSV back into JSON. Pick the delimiter and header row to match your file. Everything runs in your browser, so your data stays on your device.

Paste or type JSON to convert it
Delimiter
Result (CSV)

What the JSON to CSV converter does

JSON stores data as objects with named fields, while CSV stores it as rows and columns that a spreadsheet can read. This converter maps one to the other. Going to CSV, it collects every key across your objects to build the columns, then writes one row per object. Going to JSON, it reads the header row for the field names and turns each row into an object. Nested values are kept as JSON inside a cell, so no data is lost in the round trip.

Why use our JSON to CSV converter

  • ·Free. No signup, no paywall, no limits.
  • ·Runs in your browser. Your data is never uploaded, so it is safe for private records.
  • ·Both directions. Convert JSON to CSV and CSV to JSON in the same place, with a one click swap.
  • ·Spreadsheet ready. Proper quoting keeps commas, quotes, and line breaks in the right columns in Excel and Google Sheets.
  • ·Your choice of format. Pick the delimiter, header row, and whether to detect numbers and booleans.

JSON to CSV conversion options

Direction

Switch between JSON to CSV and CSV to JSON. When you switch, the current result moves into the input box, so you can convert straight back the other way.

BeforeJSON to CSVAfterCSV to JSON

Delimiter

Pick the character between fields: comma for standard CSV, semicolon for files from spreadsheets in some regions, or tab for TSV. It applies to both directions.

Beforea,b,cAftera;b;c

Header row

Going to CSV, write the object keys as the first row. Coming from CSV, treat the first row as the field names. Turn it off and columns become column1, column2, and so on.

Beforename,roleAfterAda,Engineer

Detect numbers and true/false

When building JSON from CSV, turn plain numbers into numbers and true or false into booleans. Values with a leading zero, like 007, stay text so ids are not changed.

Before"active": "true"After"active": true

How nested JSON and missing fields are handled

  • ·Every key becomes a column. The converter collects the keys from all objects, in the order they first appear. If one object has a field the others do not, that column is still added and left empty for the rest.
  • ·Nested objects and arrays stay together. A value like {"city": "Paris"} or ["a", "b"] is written into a single cell as JSON text, so no data is lost. If you need each nested field in its own column, flatten the JSON first.
  • ·Empty values.null becomes an empty cell.
  • ·Commas and quotes inside values. Any value that contains the delimiter, a quote, or a line break is wrapped in double quotes, so spreadsheets read it as one cell.

Opening the CSV in Excel without breaking it

Excel sometimes changes a CSV when you double-click to open it. These are the problems people hit most:

  • ·Accented letters look garbled. Excel on Windows may not read the file as UTF-8, so é turns into é. Open Excel first and use Data, then From Text/CSV, and pick UTF-8 as the file origin.
  • ·Leading zeros disappear. Excel turns 007 or a zip code like 01234 into a number. Import the file with Data, then From Text/CSV, and set that column to Text.
  • ·Everything lands in one column. Your region may expect semicolons instead of commas. Pick the semicolon delimiter above, or choose the delimiter in Excel's import screen.

When to convert JSON to CSV

JSON is how APIs and apps move data around, but people read and edit data in spreadsheets. Here are the most common reasons to convert between the two:

  • ·Opening an API response in Excel. Turn a list of records from an API into a CSV you can sort, filter, and share.
  • ·Importing a spreadsheet into an app. Convert an exported CSV into JSON to seed a database or feed a script.
  • ·Handing data to a non technical teammate. Give someone a CSV they can open anywhere instead of raw JSON.
  • ·Cleaning up an export. Move CSV to JSON, edit the structure, then move it back to CSV.
  • ·Building a quick report. Convert saved JSON data into a table you can chart in a spreadsheet.

Frequently asked questions

How do I convert JSON to CSV?
Paste an array of JSON objects into the input box and keep the direction on JSON to CSV. Pick your delimiter and whether to write a header row, then click Convert to CSV. The table appears below, ready to copy or download as a .csv file you can open in Excel, Google Sheets, or Numbers.
How do I convert CSV to JSON?
Switch the direction to CSV to JSON and paste your CSV. Each row becomes a JSON object using the header row for the keys. Turn on Detect numbers and true/false if you want numeric and boolean values instead of strings, then click Convert to JSON.
What JSON shape works best for CSV?
An array of flat objects, like a list of records, maps cleanly to rows and columns. The tool collects every key across all objects to build the columns. Nested objects and arrays are kept as JSON text inside a single cell so no data is lost.
Can I use a semicolon or tab instead of a comma?
Yes. The delimiter setting lets you choose comma, semicolon, or tab. Semicolon is common for CSV files created by spreadsheets in regions where the comma is the decimal mark, and tab gives you a TSV file.
Will my data open correctly in Excel?
Yes. The CSV follows the standard rules: fields with a comma, quote, or line break are wrapped in double quotes, and quotes inside a field are doubled. That keeps names, addresses, and notes in the right columns when you open the file in a spreadsheet.
Does the first row have to be a header?
No. Header row is on by default because most files have one, but you can turn it off. Coming from CSV with it off, the keys become column1, column2, and so on. Going to CSV with it off, the tool skips the header line and writes only the data.
Is my data kept private?
Yes. The conversion runs entirely in your browser. Your JSON and CSV are never uploaded to a server or saved anywhere, so you can safely paste in data that contains private values. Once the page has loaded you can even use it offline.