Or upload a JSON file (up to 5 MB):
Waiting for input…
Your data is processed in your browser and never uploaded or stored.
How to convert JSON to CSV
Paste your JSON into the box above, or upload a JSON file. The CSV appears instantly. Click Copy CSV to paste it into Excel or Google Sheets, or click Download .csv to save a file you can open in a spreadsheet. The converter works best with a list of objects, which is what most APIs return.
For example, this JSON:
[{"name":"Alex","age":30},{"name":"Sam","age":25}]
becomes a table with the header row name,age, followed by one row for each person.
What do the options do?
- Delimiter: choose comma, semicolon, tab or pipe. Some regional versions of Excel expect semicolons.
- Include header row: adds the field names as the first line.
- Flatten nested objects: turns an object inside an object into separate columns, such as
address.cityandaddress.zip. When it is off, the nested object is placed in one cell as JSON text. - Quote all values: wraps every value in double quotes. Values with commas, quotes or line breaks are always quoted automatically.
- Add UTF-8 BOM to download: helps Excel display accented and non-English characters correctly.
How are different kinds of JSON handled?
- Objects with different fields get one column for every field found, and missing values are left blank.
- A list of simple values inside a field, such as
["HTML","CSS"], is joined into one cell with semicolons. - A single object becomes one row, and an object that holds one list, like an API response with a “users” list, uses that list automatically.
- A list of lists is converted row by row with no headers.
If your JSON shows an error, find the exact problem with our JSON Validator. To go the other way, try our CSV to JSON converter.