JSON to CSV Converter
Paste a JSON array of objects and get a CSV table ready to open in Excel or Google Sheets. Everything is processed locally in your browser, with no data ever uploaded to a server.
How it works
- Paste a JSON array of flat objects into the input panel (or use the built-in example).
- The tool checks that the content is an array of objects with no nested structures.
- Each object becomes a CSV row, using its keys as column headers.
- Copy the resulting CSV or download it as a .csv file.
Use cases
- Turn an API's JSON response into a table you can analyze in a spreadsheet.
- Export data from an app or database into a format Excel can open.
- Generate CSV reports from JSON configuration data or structured logs.
- Share data with non-technical people in an easy-to-open tabular format.
Use cases
- Turn an API's JSON response into a table you can analyze in a spreadsheet.
- Export data from an app or database into a format Excel can open.
- Generate CSV reports from JSON configuration data or structured logs.
- Share data with non-technical people in an easy-to-open tabular format.
Common mistakes
- Pasting a single JSON object instead of an array.The tool requires an array of objects, even if it's just one. Wrap your object in brackets, like [{...}], before converting.
- Including nested objects or arrays inside array elements.CSV is a flat format and can't represent nesting. The tool detects those cases and shows an error explaining the problem instead of generating an incorrect CSV.
- Assuming every object in the array has exactly the same keys.If an object is missing a field present in others, that cell is left empty in the resulting CSV; check the result column by column before using it.
Frequently asked questions
No. The JSON-to-CSV conversion happens entirely in your browser. Your JSON never leaves your device or gets uploaded anywhere.
It needs to be an array of flat objects, for example [{"name":"Ana","age":28}]. If the JSON isn't an array, or any element contains nested objects or arrays, the tool will show an error explaining the problem.
The tool creates a column for every key found across all objects. If an object is missing a field that others have, that cell is left empty in the resulting CSV.
Yes, the downloaded file uses the standard comma-separated CSV format and opens correctly in Excel, Google Sheets, or any spreadsheet program.
Alternatives
You can achieve the same thing with jq -r in the terminal, pandas.DataFrame(data).to_csv() in Python, or the json2csv library in Node. This tool is convenient for a quick conversion without opening a code editor, especially if you want to paste the result straight into a spreadsheet.