JSON to CSV Converter

Delimiter
Quote fields
Arrays
Line ending
CSV
Your CSV shows up here.

About the JSON to CSV Converter

JSON is how most APIs and apps hand out data. CSV is what spreadsheets, databases and many import tools want. This tool turns one into the other. Paste or upload JSON and the CSV appears as you type, with a table preview so you can check the columns before you copy or download.

Nested data is the hard part. By default nested objects become extra columns named with dot notation, such as address.city, and arrays become columns like tags.0 and tags.1. You can also keep arrays in one cell or as JSON text, or switch flattening off. You choose the delimiter, the quoting rule and the line ending, and the output follows RFC 4180. Everything runs in your browser.

How to convert JSON to CSV

  1. Paste your JSON, upload a file or press Sample.
  2. Fix any error shown with its line and column.
  3. Choose the delimiter, quoting, array handling and whether to flatten nested keys.
  4. Check the table, then copy the CSV or download it as a .csv file.

Frequently asked questions

How do I convert JSON to CSV?

Paste your JSON or upload a file. The CSV appears as you type. Pick a delimiter, choose whether to flatten nested objects, then copy the result or download it as a .csv file.

What JSON shapes does it handle?

An array of objects gives one row per object. An object of objects, such as {"u1": {...}, "u2": {...}}, gives one row per property with the property name in a key column. A wrapper like {"data": [...]} is detected when it holds a single list. For anything else, type a path such as data.items in Rows from.

What does flatten nested keys do?

It turns nested objects into extra columns named with dot notation, so {"address": {"city": "Oslo"}} becomes a column called address.city. With it off, the whole nested object is written into one cell as JSON text.

How are arrays handled?

You choose. Separate columns gives tags.0, tags.1 and so on. One cell joins the values with a comma and a space. JSON text keeps the array as it was written. Arrays of objects inside a joined cell are written as JSON.

Is the CSV valid?

Yes. It follows RFC 4180. A field is wrapped in double quotes when it contains the delimiter, a double quote or a line break, and quotes inside a field are doubled. Rows end with CRLF by default, and you can switch to LF. You can also quote every field, or only text.

Why does Excel show garbled characters?

Excel may open a UTF-8 file as if it were an older encoding. Turn on the UTF-8 BOM option before you download and Excel reads accented letters and symbols correctly. If your Excel expects semicolons, choose the semicolon delimiter.

Are long numbers kept exact?

Yes. Numbers are copied exactly as written in the JSON, so long IDs and values like 1.50 are not rounded or reformatted.

What happens if my JSON is invalid?

The tool shows the line and column of the first problem, explains what is wrong and prints the line with a marker under the exact spot.

Can it handle large files?

Yes. The conversion runs in the background, so the page stays responsive. Files over about 1 MB are kept out of the text box. The table shows the first 200 rows, while copy and download use every row. The limit is the memory in your browser.

Is my data uploaded anywhere?

No. Everything runs in your browser and nothing leaves your device.