JSON to CSV Converter
Convert a JSON array into CSV, with nested flattening, delimiter choice and proper quoting. Nothing is uploaded — the conversion is local.
JSON to CSV
CSV is a flat table of rows and columns, while JSON can nest data. Converting one to the other means deciding how nested values become columns, and how values containing commas or quotes are escaped. This tool does both, in your browser.
How it works
- Nested objects become dotted columns, such as
user.name. - Arrays of simple values are joined with a semicolon; arrays of objects are expanded by index.
- The header row is the union of all keys, in first-seen order.
- Values containing the delimiter, a quote or a newline are quoted; quotes are doubled.
- Going the other way? Use the the CSV to JSON converter.
Frequently asked questions
What does this tool do?
It converts a JSON array of objects into CSV, flattening nested objects into dotted column names and quoting values as needed.
Is my data uploaded?
No. The conversion runs entirely in your browser; nothing is sent to a server.
How are nested objects handled?
Nested keys become dot-separated column names, for example user.name. Arrays of simple values are joined with a semicolon.
Can I choose a different separator?
Yes. You can output comma or tab separated values, and turn the header row on or off.
How are commas and quotes handled?
Cells containing the separator, a quote or a line break are wrapped in double quotes, and inner quotes are doubled, following the CSV convention.
Is row order preserved?
Yes. Rows are written in the order they appear in the JSON.
Related: the the CSV to JSON converter, JSON formatter, or browse every browser-only tool on the all tools page.