How do I convert JSON to a CSV file for Excel?
Paste a JSON array into FixDoks's JSON to CSV converter and click Convert. It flattens nested objects into columns like address.city, turns simple arrays into one cell, and adds a BOM so Hindi and other non-English text opens correctly in Excel. Check the preview table, then download the .csv file, all in your browser.
JSON to CSV at a glance
| Input | JSON array of objects |
|---|---|
| Output | CSV file with one row per object, BOM option for Excel |
| Processing | In your browser; your files are not uploaded |
| Price | Free |
| Works on | Chrome, Edge, Safari and Firefox on Windows, Mac, Android and iPhone |
How to use JSON to CSV Converter
- Paste your JSON or click Open JSON file.
- Pick a delimiter. Comma works for most people. Choose semicolon if your Excel expects it.
- Keep Flatten nested objects on to turn nested fields into columns like address.city.
- Click Convert to CSV, check the preview table, and download the .csv file.
Open JSON data in a spreadsheet
APIs, apps and databases export JSON, but most people want to sort, filter and chart data in Excel or Google Sheets. This tool turns a JSON array of objects into a CSV file with one row per object and one column per key. A preview table shows the first 20 rows so you can check the columns before downloading.
How the JSON is mapped
- Array of objects (the usual case): every object becomes a row. The columns are the union of all keys, in the order they first appear, so objects with missing keys simply get empty cells.
- Nested objects: with flattening on, {"address":{"city":"Pune","pin":"411001"}} becomes two columns, address.city and address.pin. With it off, the nested object is written into one cell as JSON text.
- Arrays of simple values such as ["red","blue"] become one cell: red; blue.
- Arrays of objects inside a row are written as JSON text in one cell, because they cannot be flattened into a single row without duplicating data.
- Wrapped responses like {"data":[...]} or {"items":[...]}: the tool finds the first array inside the object and converts that.
- Array of arrays: each inner array becomes a row as it is.
Quoting and special characters
Cells that contain the delimiter, double quotes or line breaks are wrapped in double quotes, and quotes inside are doubled. This is the standard CSV format, so Excel, Google Sheets, LibreOffice and databases all read the file correctly.
Hindi and other languages in Excel
Excel on Windows guesses the text encoding when opening a CSV and often shows Hindi, Tamil, Arabic or accented text as garbled symbols. The Add BOM for Excel option puts a small invisible marker at the start of the file that tells Excel the file is UTF-8, so the text opens correctly. Leave it on unless the file is going to a program that does not expect it.
Comma or semicolon?
Excel uses your computer's regional settings to decide the separator. In India, the US and the UK that is a comma. In much of Europe it is a semicolon, and a comma separated file opens with everything in column A. If that happens, convert again with the semicolon delimiter. Google Sheets handles either.
Tips
If the tool says the input is not valid JSON, run it through the JSON formatter, which points to the exact line and column of the error. Large IDs with more than 15 digits can be rounded by Excel when it opens a CSV. To keep them exact, import the file with Data, From Text/CSV and set that column to Text.