Quick steps
- 01Add JSON filesChoose files or drop them on the page.
- 02Converted on your deviceNothing is uploaded. Adjust settings if you like.
- 03DownloadSave each file, or all of them as one ZIP.

What’s JSON?
The data format of APIs and apps. Objects and lists, often nested.
Convert a JSON array of records into a CSV file you can open in Excel or Google Sheets, with nested fields spread into their own columns. The JSON is parsed by your browser and never uploaded, and the tool is free to use.
How to convert JSON to CSV
- Click Choose files or drop .json files onto the page.
- Each file is converted as soon as it’s added, using commas and flattened nested fields.
- Change the Separator or turn off Flatten nested fields in the settings panel on the right, then click Apply to all files.
- Save the CSV, or Download all (.zip) for several files.
Which part of the JSON becomes rows
If the file is an array, each item becomes a row. Most API responses wrap the list in an object, such as one with a data or results key next to some metadata. In that case the tool searches the object, level by level, and uses the first array of objects it finds. A single object with no list inside becomes a single row.
Columns are the union of every key in every record, in the order they first appear. A record that lacks a field gets an empty cell there. Null becomes an empty cell, and booleans are written as true and false.
An array whose items are themselves arrays gets columns named 1, 2, 3 and so on. A list of plain values, such as numbers or strings, gets a single column named value.
What the settings do
Arrays inside a record are always kept as JSON text in a single cell, for example ["red","blue"]. Splitting them would need one row per item, which would change what each row means.
- Separator. Comma (the default), Semicolon or Tab. Use Semicolon if your Excel uses the comma as a decimal mark, and Tab for TSV files or pasting into a sheet.
- Flatten nested fields. On by default. A nested object like address with a city inside becomes a column named address.city, and deeper levels add more dots, as in address.geo.lat. Turn it off to keep each nested object as JSON text in one cell.
Opening the CSV in Excel
The CSV is UTF-8 and starts with a byte order mark, so Excel shows accented letters and non-Latin scripts correctly when you double-click it. Fields that contain the separator, quotes or line breaks are quoted.
Excel may still reformat some values on opening: long ID numbers can turn into scientific notation and values like 0042 lose their zeros. To prevent that, import with Data › From Text/CSV and set those columns to Text.
Common problems and fixes
- “This isn’t valid JSON near line 12.” The file has a syntax error, often a trailing comma, a missing quote or a missing bracket. The line and column point you to it.
- The file is JSON Lines (one object per line). That isn’t a single JSON document, so it won’t parse. Wrap the lines in square brackets and add a comma at the end of each line except the last.
- The wrong list became the rows. The tool picked the first array of objects it found. Edit the file so the list you want comes first, or save just that list as its own file.
- Too many columns. Deeply nested data flattens into many dotted columns. Turn off Flatten nested fields, or delete the columns you don’t need after opening.
Privacy
API exports often contain customer names, emails and IDs. Here the file is read and converted entirely by JavaScript in your browser tab, and nothing is sent to a server. To go the other way, use CSV to JSON.
Guides
At a glance
- Price
- Free. No sign-up, no watermark.
- Privacy
- Files are processed in your browser and never uploaded.
- Accepts
- JSON
- You get
- CSV
- Batch
- Convert many files at once and download them as a ZIP
- Works in
- Chrome, Edge, Firefox and Safari, on phones and computers
- Offline
- Keeps working without internet once the page has loaded
Questions
Are my files uploaded?
Never. JSON to CSV conversion runs in your browser, so your files stay on your device.
What happens to nested objects?
They become dotted columns like address.city. Arrays are kept as JSON text in one cell.
Can I convert many at once?
Yes. Add as many as you like and download them all as one ZIP.
Is there a size limit?
Files of tens of megabytes are fine on most computers.
Does it support JSON Lines or NDJSON?
No. The file has to be one valid JSON document, such as an array of objects. Wrap JSON Lines in square brackets with commas between items first.
My JSON is an object with a data list inside. Will it work?
Yes. The tool finds the first array of objects inside the wrapper and uses it as the rows.
What happens when records have different fields?
Every field from every record gets a column. Records that don’t have a field are left blank in that column.
Can I choose which columns to export?
Not in the tool. Delete unwanted columns after opening the CSV, or remove the fields from the JSON first.
How are arrays inside records handled?
They are written as JSON text in one cell, for example ["a","b"].