Convert JSON to CSV
Paste your JSON, convert it to CSV, and download it — all in your browser, nothing uploaded to any server.
🔒 100% private — all parsing happens on your device, nothing is uploaded to any server.
-
1. Paste your JSON
An array of objects, or a single object for one row.
-
2. Convert
Nested objects are automatically flattened into columns.
-
3. Download or copy
As a .csv file ready for Excel or Google Sheets, or to your clipboard.
How it works
The tool parses the JSON you paste using the browser's native engine. If it's an array of objects, each object becomes a row; the objects' keys become the columns, using the union of all keys that appear in any row. Nested objects are flattened with dot notation (for example, a "city" field inside "address" becomes the column "address.city"), and arrays are stored as JSON text inside the cell, since they don't have a natural column form.
Why it's private
There's no server involved: parsing and conversion happen in your browser with JavaScript. Nothing you paste here is sent anywhere, so you can use it with sensitive data without worrying.
Frequently asked questions
Is my JSON uploaded to a server?
No. All parsing and conversion happens in your browser, with JavaScript. Nothing you paste here is sent anywhere.
What JSON format do I need?
Ideally an array of objects, for example [{"name":"Ana"},{"name":"Luis"}] — each object becomes a row. If you paste a single object (no brackets), it's treated as one row.
What happens with nested objects?
They're flattened using dot notation: a city field inside an address object becomes a column named "address.city". Arrays are stored as JSON text inside the cell, since they don't have a natural column form.
What if some rows have columns that others don't?
The union of all columns that appear in any row is used. If a row is missing a given field, that cell is left empty in the CSV.