Developer Tools
JSON to CSV Converter
JSON to CSV Converter is part of Toolspire and is ready as soon as this page loads. Paste JSON or open a file and get a clean CSV table as you type — nested objects flattened into columns, Excel-ready UTF-8, and a live table preview. Convert CSV back to JSON too.
On this page
What you can do here
Table preview
See the result as a spreadsheet-style table before downloading, or switch to the raw CSV text.
Handles messy JSON
Objects with different keys, nested objects, lists and wrapper objects are all turned into a proper rectangular table.
Excel and Sheets ready
The download opens correctly in Excel, Google Sheets and Numbers, including Indian languages and the ₹ sign.
Formula-safe option
Optionally stop cells that start with =, +, - or @ from running as spreadsheet formulas (CSV injection).
Both directions
Switch to CSV → JSON to turn a spreadsheet export back into clean, nested JSON for an API or config.
Exact error messages
Invalid JSON is reported with the line and column of the mistake.
The sequence
How to convert JSON to CSV
- 1
Add your JSON
Paste JSON into the left box, click Open file, or try the Sample.
- 2
Check the table
The CSV appears as a table straight away. Nested objects become columns like address.city.
- 3
Adjust the options
Pick the delimiter, and open Options to flatten, join lists or make the file Excel-ready.
- 4
Download
Click Download for a .csv file, or Copy to paste into a spreadsheet.
Worth knowing
- JSON to CSV Converter on Toolspire: converts a JSON array of objects into CSV rows, with every key as a column — even keys that only some objects have.
- Finds the rows inside API responses like
{"data": {"users": [...]}}automatically, and reads JSON Lines (NDJSON). - Nested objects become
parent.childcolumns; lists of values are joined in one cell (or written as JSON). - Numbers are copied digit for digit, so long IDs like 12345678901234567890 and prices like 1.10 aren’t rounded.
- Comma, semicolon, tab or pipe delimiters, RFC 4180 quoting, and an optional UTF-8 BOM so Excel shows Hindi, ₹ and accents correctly.
- Also converts CSV to JSON, detecting the delimiter, turning numbers and true/false into JSON types (leading zeros stay text) and
a.bcolumns back into nested objects. - Runs in this tab — your data is not sent to us.
How JSON becomes a table
| JSON | CSV |
|---|---|
| [{"name": "Asha", "age": 31}] | Columns name, age — one row per object |
| {"address": {"city": "Pune"}} | Column address.city |
| {"skills": ["SQL", "Excel"]} | One cell: SQL; Excel (or ["SQL","Excel"]) |
| {"data": [ … ]} | Rows are taken from the data array |
| null | Empty cell |
| "Mehta, Jr." | "Mehta, Jr." — quoted because of the comma |
Opening CSV files in Excel
Keep Excel-ready (UTF-8 BOM) switched on: without it, Excel on Windows may show Hindi text or the ₹ sign as garbled characters. If your Excel uses a comma as the decimal separator (common in Europe), choose the semicolon delimiter.
Excel drops leading zeros from numbers like phone numbers and PIN codes when it opens a CSV. The data in the file is correct — to keep the zeros, import it with Data → From Text/CSV and set that column to Text.
FAQ
Questions about JSON to CSV Converter
Where does JSON to CSV Converter run?
Can it convert nested JSON to CSV?
What if my objects have different keys?
Is my data uploaded anywhere?
How large a file can it handle?
Why do my Hindi or ₹ characters look wrong in Excel?
Can I convert CSV back to JSON?
Keep going
Related tools
Last updated Report a problem or suggest a feature