JSON to CSV Converter (and CSV to JSON)
Convert JSON to CSV in one click and open the result in Excel or Google Sheets. The converter turns an array of objects into rows and columns, flattens nested fields into columns like address.city, and can also convert CSV back into JSON for APIs and code.
Everything runs in your browser. Nothing you enter is sent to or stored on our server.
Try another free tool
Quick answer: Paste a JSON array of objects and the CSV appears on the right. Each object becomes a row, each key becomes a column, and nested objects become columns like address.city. Click Download file to save a .csv that opens in Excel or Google Sheets.
How to convert JSON to CSV
- Paste your JSON into the Input box. A sample with nested fields is loaded to start.
- Choose the delimiter. Use a semicolon if your Excel uses commas as the decimal separator, as in much of Europe.
- Copy the output or download it. The downloaded CSV includes a UTF-8 marker so Excel shows accents and other scripts correctly.
- To go the other way, choose CSV to JSON, paste your CSV with a header row and copy the JSON.
How the converter handles tricky data
- Nested objects are flattened with dots:
{"address": {"city": "Pune"}}becomes a column calledaddress.city. - Arrays of simple values are joined with semicolons, such as “admin; editor”. Arrays of objects are kept as JSON text in one cell.
- Missing keys leave an empty cell, and every key found in any object becomes a column.
- Commas, quotes and line breaks inside values are wrapped in double quotes, following the CSV standard (RFC 4180).
- A JSON object that holds an array, such as an API response like
{"data": [...]}, is converted using that array.
CSV to JSON
The first CSV row is used as the keys. With “Turn numbers and true/false into JSON types” ticked, values like 42 and true become real numbers and booleans, while values with leading zeros, such as ZIP codes and phone numbers, stay as text. The delimiter can be detected automatically.
Opening CSV in Excel and Google Sheets
In Excel, double-click the downloaded file, or use Data > From Text/CSV to choose the delimiter. In Google Sheets, use File > Import > Upload. Large numbers such as IDs over 15 digits may be rounded by spreadsheets, so format those columns as text if needed.
Check that your JSON is valid first with the JSON formatter, clean up lists with remove duplicate lines, or encode data for URLs with the URL encoder.
FAQ
Is my data uploaded?
No. The conversion runs in your browser, so private exports and customer lists stay on your device.
How big a file can I convert?
Several megabytes work well in a modern browser. For files of hundreds of megabytes, use a command-line tool such as jq or Python.
