Convert complex JSON arrays with nested objects and child lists into tidy CSV spreadsheets
Export hierarchical JSON arrays into clean CSV tables with flattened dot-notated columns.
Interactive Sample Data
| id | name | address.city | address.zip | roles |
|---|---|---|---|---|
| 1 | Grace Kerubo | Nairobi | 00100 | admin; editor |
| 2 | Peter Njoroge | Mombasa | 80100 | viewer |
How this tool works
Things that usually go wrong
- Arrays inside objects (tags: ['a','b']) are joined as 'a,b' (a single string) in the CSV column.
- Very deep nesting (6+ levels) produces very long column names.
Edge cases we tested
Headers unioned across all records; missing values output as empty cells.
Wrapped in RFC 4180 double quotes to prevent delimiter breakage.
Configurable between JSON-string serialization or indexed columns.
Frequently Asked Questions
How are array-valued fields handled?
Array values are joined with a pipe (|) by default. Change the separator in the options.
Can I control which nested levels are flattened?
Yes — set a maximum nesting depth. Objects deeper than the limit are serialised as raw JSON strings.
How are arrays inside objects handled?
Array values are joined with a pipe (|) by default. Enable 'Expand arrays' to create separate columns for each array index: tags_0, tags_1, tags_2.
What is the maximum nesting depth supported?
Up to 10 levels of nesting. Objects nested deeper than 10 levels are serialised as JSON strings in a single column.
Related tools
CSV to JSON
Transform tabular CSV spreadsheets into structured JSON arrays of objects in your browser.
Open Tool →JSON to CSV
Transform complex JSON arrays and nested API responses into clean, spreadsheet-ready CSV tables.
Open Tool →CSV to TSV
Convert CSV data into tab-delimited values (TSV) for seamless copy-pasting directly into Excel, Sheets, and bioinformatics tools.
Open Tool →