JSON to CSV
Convert an array of JSON objects into CSV using the union of all keys, with an explicit policy for nested data.
Runs in your browser — nothing is uploadedFree trial: 1 run of JSON to CSV every day. After that, 2 credits per run.
Flatten a JSON array into a spreadsheet-ready CSV
Give it an array of objects and get CSV back, written to RFC 4180 so quotes and embedded commas survive. Nested objects become dotted column names such as user.id, arrays are written as JSON text in the cell, and the column set is the union of every key across every row — so no field is dropped because it was missing from the first record.
What JSON to CSV gives you
Union of all keys
Columns come from every row, not just the first, so an optional field present only near the end still appears.
Nested objects flattened
A nested object becomes dotted columns, turning a tree into the grid a spreadsheet needs.
Four delimiters
Comma, semicolon, tab or pipe, for whichever locale or tool will read the file next.
Correct quoting
Values containing the delimiter, quotes or line breaks are escaped properly instead of breaking the row.
Clear input errors
If the root is not an array, or an element is not an object, you are told which index is at fault.
How to use JSON to CSV
Paste your JSON
It must be an array of objects at the top level.
Choose a delimiter
Comma suits most tools; semicolon is common in Europe.
Convert
Columns are collected and the rows written out.
Download the CSV
Open it in Excel, Numbers, Sheets or any text editor.
Other names for this tool
People also look for this as JSON to CSV converter, JSON to spreadsheet, export JSON as CSV, flatten JSON to table and convert JSON array to CSV. It is the same tool on this page.
Looking for the opposite job? CSV to JSON.
Limitations
- Values are not escaped against spreadsheet formula injection.
Questions about JSON to CSV
What happens to nested objects?
They are flattened into dotted column names, so { user: { id: 1 } } becomes a column called user.id. Arrays are stringified as JSON.
Is the output safe to open in a spreadsheet?
Fields are quoted per RFC 4180, but values beginning with =, +, - or @ are written unchanged. Treat CSV from an untrusted source with care in any spreadsheet.
How do I convert a JSON array to CSV?
Paste an array of objects, choose a delimiter, and convert. The columns are collected from every row and the file is written to RFC 4180, so quotes and embedded commas survive being opened in a spreadsheet.
Why is my JSON being rejected?
The top level must be an array of objects. A single object needs wrapping in square brackets first, and if any element is not an object you are told which index is at fault rather than getting a half-written file.
Will a field missing from the first record still appear?
Yes. Columns are the union of every key across every row, so an optional field that only shows up near the end of the data still gets its own column rather than being silently dropped.
Which delimiter should I pick?
Comma for most tools. Semicolon often works better in locales where the comma is the decimal separator, which is why many European spreadsheet exports use it. Tab and pipe are there for systems that expect them.
Is the CSV safe to open directly in Excel?
Review it first if the data came from somewhere you do not control. Leading =, + and @ characters are not escaped, so those cells can be interpreted as formulas when a spreadsheet opens the file.