JSON to CSV Converter
DataConvert a JSON array to CSV instantly — paste your JSON, choose a delimiter, and download or copy the CSV output. Runs entirely in your browser, nothing uploaded.
What is a JSON→CSV?
A JSON to CSV Converter transforms a JSON array of objects into comma-separated values format — the tabular structure used by spreadsheets, databases, and data analysis tools. Every object in the JSON array becomes one row in the CSV, and the keys of those objects become the column headers.
JSON is ideal for hierarchical, nested data — APIs, configuration files, and application logs are all naturally expressed in JSON. CSV, on the other hand, is the lingua franca of tabular data: every spreadsheet, BI tool, and data import wizard can read it. When you need to move data from a JSON API response into Excel, Google Sheets, Airtable, or a SQL import, converting to CSV is the standard step.
This converter handles the conversion entirely in your browser — no upload, no server, no rate limits. It supports all four common delimiters (comma, semicolon, tab, pipe), automatically adds a header row from the JSON keys, and correctly escapes fields that contain the delimiter character or quotes. Nested objects are flattened using dot-separated key paths (e.g. address.city) so the output stays truly flat.
For the reverse operation — converting a CSV file into a JSON array — use the CSV to JSON Converter.
How to use this JSON→CSV calculator
- Paste your JSON array into the JSON Array input field. The default shows a three-row example.
- Choose a Delimiter from the dropdown — comma is the default and works with most tools.
- Toggle Include header row on or off depending on whether you need column names.
- The CSV Output appears instantly as you type or change options.
- Click the Copy button to copy the CSV to your clipboard.
- Paste into a spreadsheet or save as a
.csvfile.
Formula & Methodology
Input requirements: A JSON array where each element is an object ([{}, {}, ...]). Arrays of primitives are also accepted and placed in a singlevaluecolumn. Key collection: All keys across all objects are collected into an ordered set. The order follows the key order in the first object, with any additional keys from subsequent objects appended. Flattening: Nested objects are recursively flattened.{"a": {"b": 1}}becomes{"a.b": 1}. Field escaping (RFC 4180): A field is quoted if it contains the delimiter, a"character, a newline, or a carriage return. Inside quoted fields,"is escaped as"". Before (JSON):json [{"name": "Alice, Jr.", "score": 98}, {"name": "Bob", "score": 85}]After (CSV, comma delimiter):name,score "Alice, Jr.",98 Bob,85