JSON to CSV Converter
Paste or upload JSON below and click Convert to get a clean CSV spreadsheet. Nested objects flatten into parent.child columns and arrays stay as JSON text in their cell. Everything happens locally in your browser — your data never leaves your device.
Read the guide: How to convert JSON to CSVInput
Output
Processed locally in your browser — nothing is uploaded.
How the JSON to CSV Converter works
- Your text is parsed using the browser's built-in JSON parser.
- A top-level array is treated as a list of rows; a single object becomes one row.
- Nested objects are flattened into parent.child columns; arrays and other complex values are written as JSON text.
- Columns are collected in first-seen order across all rows, then each row is emitted with proper CSV quoting.
Examples
Array of objects
[{"name":"Ada","age":36,"address":{"city":"London"}},{"name":"Alan","age":41,"address":{"city":"Manchester"}}]Single object
{"id":1,"active":true,"tags":["a","b","c"]}Useful tips
- Use a top-level array for the cleanest one-row-per-record spreadsheet.
- If a record is missing a key, its cell is left empty so columns still line up.
Frequently asked questions
Is my JSON sent to a server?+
No. All conversion happens entirely in your browser. Nothing is uploaded or stored.
What JSON shapes can I convert?+
A top-level array becomes one row per element; a single object becomes a single row. Anything else (a bare string, number, or boolean) will show an error.
How are nested objects and arrays handled?+
Nested objects flatten into dot-notation columns (for example, address.city). Arrays and other non-primitive values are written as JSON text inside their cell so the structure is preserved.
Are commas and quotes escaped correctly?+
Yes. Any value containing a comma, double quote or newline is wrapped in quotes and quotes are doubled, following standard CSV rules, so the file opens cleanly in Excel and Google Sheets.