Convert JSON to CSV
Flatten a JSON array into CSV you can open in a spreadsheet.
Flattening an array into rows
Give it an array of objects and each object becomes a row, with the keys as column headers. A single object is treated as a one-row table.
Columns are the union of every key across every row, not just the keys of the first one. That detail matters: JSON from an API frequently omits null fields, so taking the first object's keys as the schema silently discards data that appears only in later rows. Missing values become empty cells.
Quoting is handled properly
Any value containing the delimiter, a quote, a newline or leading and trailing whitespace is wrapped in quotes, with internal quotes doubled — the actual CSV convention. Without that, a single address field with a comma corrupts the entire file for whoever opens it next.
Nested objects
CSV is flat and JSON is not, so a nested object or array has nowhere to go. Nested values are serialised as JSON text inside their cell, which preserves the information rather than losing it. If you need nested fields as real columns, flatten the structure before converting.
Delimiters and Excel
Comma is standard. Semicolon is what Excel expects in locales where the comma is a decimal separator — pick it if your spreadsheet opens the file as one long column. Tab-separated output is the most robust choice when the data itself contains many commas.
It runs in your browser
Nothing is uploaded, which matters because JSON exports routinely contain personal data. Everything is computed on your device.
Common questions
What if my objects have different keys?
Columns are the union of all keys across all rows, so nothing is dropped. Missing values become empty cells.
How are nested objects handled?
They are written as JSON text inside the cell. CSV is flat, so flatten first if you need real columns.
Why does Excel put everything in one column?
Your locale expects semicolons. Choose semicolon as the delimiter.
Are commas inside values escaped?
Yes, values are quoted and internal quotes doubled, following the CSV convention.
Is my data uploaded?
No, conversion happens in your browser.