JSON to CSV
Turn an array of JSON objects into a spreadsheet-ready CSV. Nested fields are flattened with dot notation.
How JSON is mapped to CSV
The converter looks for an array of records: either the root array, or the first array-valued property of the root object (common for API responses like { "data": [...] }). Each record becomes a row. Nested objects are flattened, so user.address.city becomes a column, and array items become tags[0], tags[1], and so on. Columns are the union of all keys, so records with missing fields simply leave those cells empty.
Spreadsheet-safe output
Values containing the delimiter, quotes or newlines are quoted and escaped per RFC 4180, so the file opens cleanly in Excel, Google Sheets and Numbers. Pick a comma, semicolon, tab or pipe delimiter to match your locale or your import tool.
Like every tool on TheJSON, this runs entirely in your browser. Nothing you paste is uploaded, logged or stored on a server, so it is safe to use with API responses that contain tokens or customer data.
Frequently asked questions
Why does Excel put everything in one column?
- In many European locales Excel expects a semicolon as the CSV separator. Switch the delimiter to Semicolon before downloading, or use the Import wizard and choose comma.
What happens to nested arrays?
- Each element becomes its own column, named with an index: tags[0], tags[1] and so on. Arrays of objects are flattened the same way, giving columns like items[0].price.
My JSON is a single object, not an array. Can I still convert it?
- Yes. A lone object becomes a one-row CSV. If the object contains an array of records, that array is used for the rows instead.