JSON to CSV
Turn a JSON array into CSV, ready for a spreadsheet. Nothing you paste ever leaves this tab.
0 characters
Nothing you type here is sent anywhere.
What this tool does
JSON to CSV turns a JSON array — of objects or of arrays — into a CSV file, ready to open in a spreadsheet or hand off to something that only speaks CSV. It's the reverse of CSV to JSON, for the equally common need to get structured data out of an API response and into a spreadsheet-friendly form.
Paste a JSON array and the CSV appears automatically, updating as you edit.
How to use it
Paste a JSON array of objects (each object's keys become columns) or a JSON array of arrays (each inner array becomes a row directly). Choose a delimiter and whether to include a header row. The CSV appears below immediately.
Copy the result with one click, or download it as a `.csv` file. Clear the input any time to start over.
Why nothing leaves your device
The JSON people convert to CSV is very often an API response or export that's about to become a spreadsheet someone opens directly — user records, order history, form submissions. That's exactly the kind of structured, often personal data that shouldn't need to touch a third-party server just to change its file format.
Conversion runs entirely with code already loaded into this tab. Nothing is sent anywhere; check your network tab while using it and you'll see no request carrying what you pasted.
What this does well — and what it doesn't
This handles nested or irregular objects reasonably — if different objects in the array have different keys, every column that appears anywhere gets included, and missing values come through as empty cells rather than breaking the conversion. Fields that themselves contain commas, quotes, or newlines are quoted correctly so the result opens cleanly in Excel, Google Sheets, or any standard CSV reader.
A value that's itself an object or array gets serialized back to a JSON string inside its cell, since CSV has no native way to represent nested structure — that's the honest limit of flattening structured data into a two-dimensional grid, not a bug. For deeply nested JSON, expect those cells to contain readable-but-nested JSON text rather than further-flattened columns.