L LocalUse Source

JSON to CSV

Turn an array of JSON records into a spreadsheet. Nested objects are flattened into dotted column names, and the header is the union of every record’s keys - so rows that omit a field still line up.

Delimiter
Max flatten depth
JSON
Output

Output appears here as you type.

Runs entirely in your browser. Nothing you paste here is uploaded or stored.

Questions

Is my data uploaded anywhere?

No. The conversion is a pure function running in your browser tab. Nothing is transmitted, which is what makes it safe for production exports.

What happens to nested objects and arrays?

Objects become dotted columns such as team.name. Arrays become indexed columns such as tags[0], tags[1], or a single JSON-encoded cell if you turn on "Arrays as JSON" - which is usually what you want when the array length varies per row.

My export opens with broken accents in Excel.

Turn on "UTF-8 BOM". Excel assumes the legacy code page unless the file starts with a byte order mark, which mangles any non-ASCII text.

My JSON is wrapped in a { "data": [...] } envelope.

That is handled. When the top level is a small object containing exactly one array, that array is used as the row source and the tool tells you which key it picked.

More convert tools