Related tools
What this JSON to CSV tool offers
This free JSON to CSV converter flattens nested objects into columns. Paste or upload a JSON array of objects (or a single object), and get CSV with nested keys flattened using dot notation. Choose your delimiter, then download the CSV file or copy it to the clipboard.
- Flatten nested objects: Nested keys become columns like address.city or user.profile.name. Arrays and dates are converted to strings.
- Array of objects or single object: Feed a JSON array of objects (e.g. API response) or one object; both are converted to CSV with a header row from the keys.
- Custom delimiter: Choose comma (default), semicolon, tab, or pipe so the CSV works in Excel, regional locales, or downstream tools.
- Paste or upload: Paste JSON directly into the text area or upload a .json file via drag-and-drop or file picker.
- Download and copy: Download the result as a .csv file or copy the CSV to the clipboard in one click.
- Quoted fields: Values that contain the delimiter, quotes, or newlines are automatically quoted in the CSV output.
Why convert JSON to CSV?
CSV is widely supported by spreadsheets, databases, and ETL tools. Converting JSON to CSV lets you open API or app data in Excel, Google Sheets, or import it into other systems.
- Spreadsheets: Open the CSV in Excel or Google Sheets for viewing, filtering, or sharing with others who don’t work with JSON.
- Import and ETL: Many databases and data pipelines accept CSV. Flattened columns (e.g. user.name) keep structure in a single table.
- No server: Nested keys are flattened with dot notation, so no field is lost.
How JSON to CSV conversion works
Your JSON is parsed and each object is flattened so nested keys become dot-separated column names. All unique keys across all objects form the header row; each object becomes one row, with missing keys left empty.
- Parse JSON: The tool parses the pasted or uploaded JSON. A single object is treated as one row; an array of objects becomes one row per element.
- Flatten: Nested objects are flattened with dot notation (e.g. {"a":{"b":1}} becomes column a.b with value 1). Arrays and Date objects are stringified.
- Build CSV: The header row is the union of all keys (sorted for consistency). Each row is built from the flattened object; values that need quoting are quoted.
- Download or copy: Download the CSV file or copy it to the clipboard.
Options explained
These options control how the CSV is built.
- Delimiter: Comma is the default and standard for CSV. Semicolon is common in European locales; tab produces TSV; pipe is often used in data pipelines. Choose what your target app expects.
- Flattening: Nested objects are always flattened with dot notation. There is no option to keep nested structure; the result is a single flat table with one column per key path.
- Encoding (file): When reading an uploaded file, choose UTF-8 (default), Windows-1252, or ISO-8859-1 so special characters decode correctly.
When to use each delimiter
Match the delimiter to where the CSV will be used.
- Comma (,): Default and most common. Use for generic CSV, imports, and most spreadsheets in English locales.
- Semicolon (;): Common in European locales where comma is the decimal separator. Use when opening in Excel in such regions.
- Tab: Use for tab-separated values (TSV) or when pasting into tools that expect tabs.
- Pipe (|): Often used in data pipelines and ETL. Use when your downstream system expects pipe-delimited files.
Powered by optimised spreadsheet processing.
Frequently asked questions
How does the JSON to CSV converter work?
Paste or upload a JSON array of objects, or a single object, and click Convert to CSV. The tool flattens nested keys with dot notation, builds a header row from all keys, and outputs each object as a row. You can then download the CSV file or copy it to the clipboard.
Is my data private and secure?
Yes. Every key across every object is collected first, so rows with missing fields still line up. Values containing commas, quotes or newlines are quoted so the CSV stays valid. The whole conversion runs on your device, not our servers.
What JSON structure is supported and how is nesting handled?
Provide a JSON array of objects such as [{"id":1},{"id":2}], or a single object that becomes one row. Nested objects are flattened with dot notation, so {"user":{"name":"A"}} becomes a column user.name. Arrays and dates are stringified, and the header row is the sorted union of all keys.
Which delimiters and encodings can I choose?
You can output with a comma (default), semicolon, tab for TSV, or pipe delimiter to match Excel, European locales, or data pipelines. When uploading a file, pick UTF-8, Windows-1252, or ISO-8859-1 so accented and special characters decode correctly before conversion.
Is there a file size limit and is it free?
The tool is completely free with no watermarks or row limits. The practical size limit depends on available memory rather than a server cap. Large arrays are handled locally, and fields containing delimiters, quotes, or newlines are automatically quoted.
Can I use it offline and on mobile?
Yes. The converter works in any modern browser on desktop, tablet, or phone, and once the page has loaded it keeps working without an internet connection. You can paste JSON or upload a .json file, convert, then download the CSV or copy it to paste into Excel or Google Sheets.