Convert JSON to CSV
Turn JSON into a CSV table, as a file or as pasted text. The data is processed in your browser and not uploaded.
Drag a JSON file hereChoose JSON file
One JSON file up to 50 MB. Best suited: a list of objects. Long numbers keep every digit.
Processed on your device, no upload
Paste text instead of choosing a file
Guide and details
How it works
- Choose a JSON file or paste the JSON text.
- The page checks the JSON and shows the detected structure and a table preview.
- In the advanced settings choose the delimiter and how nested values are handled.
- Download the CSV file.
Which JSON works
A list of objects works best: every object becomes a row and every key a column. If the list sits under a key such as “items” or “data”, it is detected. A single object becomes one row. JSON without a table shape, such as a single value or a mix of lists and objects, is refused with an explanation instead of guessing.
Nested objects and lists can be kept as JSON text in one cell or spread into columns (address.city). If two values would land in the same column, the tool stops with a note instead of overwriting data.
No silent losses
Large numbers do not go through floating point and every digit is kept. Repeated keys in an object are reported. The page tells you how many null values, empty texts and missing values occur. In CSV an empty text and a missing value look the same; null can be written as an empty cell or as the text “null”.
The file is read in a background process with its own parser and no eval, up to 50 MB and up to 3,000,000 cells. The nesting depth is limited.
Frequently asked questions
Is my JSON uploaded?
No. The JSON is read and converted only in your browser.
Which JSON shapes are supported?
Lists of objects, a single object or a list sitting under a key. Single values and mixed lists have no table shape and are refused with an explanation.
What happens to nested objects?
You can keep them as JSON text in one cell or spread them into columns such as address.city.
Are large numbers rounded?
No. The digits are taken as text and not converted to floating point numbers.
Does CSV tell null from empty?
Not by itself. The tool writes null as an empty cell or, if you prefer, as the text “null”, and shows how many such cases there were.