Skip to content
Free JSON tools for developers

JSON to CSV converter

Turn a JSON array into a CSV file you can open in Excel or Google Sheets, with nested fields flattened into columns.

🔒 100% Secure & Private: All processing occurs locally within your browser RAM. Your data is never transmitted to any server.

Separator

Input JSON

1 line, 0 B

Paste JSON here, drop a .json file, or use Load sample.

The result appears here

Paste JSON into the input to start.

Copy and download unlock once the JSON is valid.

Convert JSON to CSV for Excel and Google Sheets

The JSON to CSV converter turns an array of JSON objects into a spreadsheet: each object becomes a row and each key becomes a column. Nested objects are flattened into columns like address.city, and API responses wrapped in an object, such as {"data": [...]}, are detected automatically.

Choose a comma, semicolon or tab separator, preview the result as a table, and download a CSV that opens correctly in Excel, Vietnamese characters included, thanks to the UTF-8 byte order mark. Text that starts with =, +, - or @ is protected so Excel never runs it as a formula.

Safe for API keys, tokens and customer data

API responses, config files and database exports often contain access tokens, emails and personal data, and many online formatters send whatever you paste to their servers. This tool runs entirely in your browser: parsing, validation, highlighting and CSV conversion all happen in local memory, and nothing is uploaded or logged. It also handles large files, up to 20 MB, without server-side limits.

Frequently asked questions

Why does Excel put all my data in one column?

Excel uses the list separator from your Windows regional settings, which is a semicolon in Vietnam and many European countries. Switch the separator to Semicolon and download again.

Why do Vietnamese characters look broken in Excel?

Excel needs a marker to recognize UTF-8 files. Keep "Excel-friendly UTF-8" turned on and names like "Nguyễn" display correctly.

What happens to nested arrays?

Arrays inside an object are kept as JSON text in a single cell, for example ["vip","newsletter"]. Nested objects are flattened into separate columns.

What if my objects have different keys?

Every key found in any object becomes a column. Rows without that key get an empty cell, and the tool tells you how many cells were left empty.