JSON to CSV Converter
Turn an array of JSON objects into a CSV with a header row, or a CSV into JSON objects. Quotes, commas and line breaks inside values are handled, nested objects become dot-path columns, and the delimiter can be a comma, semicolon, tab or pipe. Nothing is uploaded.
Frequently asked questions
How are nested objects and arrays handled?
Nested objects become columns named with dot paths, so {"address":{"city":"Oslo"}} gives an address.city column. Arrays are written into one cell as JSON text. Rows that lack a key get an empty cell, and every key seen in any row becomes a column.
Which delimiter should I use for Excel?
Excel uses your system's list separator. In the US and UK that is a comma; in much of Europe, where the comma is the decimal mark, it is a semicolon. If Excel puts everything in one column, convert again with semicolons. The CSV is UTF-8.
Are numbers turned into JSON numbers?
Yes, when "Turn numbers, true/false and null into JSON values" is on: 42 and 3.5 become numbers, true and false booleans, null null. Values like 007 or long ID numbers stay text so nothing is lost. 450,50 with a decimal comma stays text too.
Is my data uploaded?
No. The conversion runs in your browser, and the data is never written into the address, so Copy link shares an empty converter. Before opening a CSV from someone else in a spreadsheet, note that cells starting with = can run as formulas.