What is a JSON to CSV converter?

A JSON to CSV converter takes a JSON array of objects and rewrites it as comma-separated values, with one column per property and one row per object. Paste the response from an API, a database query, or an exported document and get back a file you can open directly in Excel, Google Sheets, or Numbers. The property names become the header row and every object becomes a data row underneath.
Here is what this online JSON to CSV converter does with an uneven input. Paste [{"id":1,"name":"Lovelace, Ada","address":{"city":"London"}},{"id":2,"name":"Grace Hopper","tags":["navy","cobol"]}] and click Convert to CSV. The header comes out as id,name,address.city,tags: the nested city becomes its own column, and tags, which only the second object has, is added at the end. The first row is 1,"Lovelace, Ada",London, with the name quoted because it contains a comma, and the second row keeps the tags array as JSON in one cell with its quotes doubled.
JSON is the format APIs and JavaScript programs speak, but spreadsheets, business intelligence tools, and non-technical colleagues need tabular CSV. Doing the conversion by hand means picking the columns, handling records that are missing a field, and quoting any value that contains a comma or a line break. This tool builds the header from the union of every key across all objects, so rows with different shapes still line up, and it escapes fields using the RFC 4180 rules so a value like a full address survives the trip into a spreadsheet intact. Nested objects can be flattened into dot-notation columns such as address.city, and arrays can be joined or kept as JSON in a single cell.
Everything runs in your browser with no libraries and no server, so the JSON you paste - which often holds API payloads, user records, or internal data - is never uploaded or stored. The converter works offline once loaded, lets you choose the delimiter and line ending, and warns you when an item is not an object or when the input is a single object rather than an array.
How to use the JSON to CSV converter?
Paste or load your JSON
Paste a JSON array of objects into the input panel, or click Load Sample to start from a realistic example. A single object works too and becomes one row.
Choose flattening and arrays
Flatten nested objects is on by default and expands address.city style columns; untick it to keep a nested object as JSON in one cell. Pick As JSON or Join with ; for arrays.
Set the delimiter and line ending
Select comma, semicolon, tab, or pipe, and choose LF (Unix) or CRLF (Excel) line endings. CRLF is the line ending RFC 4180 specifies and the safer pick for older Windows software.
Copy or download the CSV
Click Convert to CSV. Copy the result to your clipboard or download it as data.csv, then open it in your spreadsheet or import tool.
Key Features
Union Header Detection
The header row is built from every key seen across all objects in first-seen order, so records with different fields still produce aligned columns
Nested Object Flattening
Optionally expand nested objects into dot-notation columns like address.city and address.zip instead of dumping raw JSON into one cell
RFC 4180 Escaping
Any value containing the delimiter, a quotation mark, or a line break is wrapped in double quotes and internal quotes are doubled, so the file parses correctly
Delimiter and Line-Ending Control
Export with comma, semicolon, tab, or pipe separators and LF or CRLF line endings to match Excel, Sheets, or your import pipeline
Frequently Asked Questions
Related Tools
CSV to JSON Converter
Convert CSV to JSON online. Parses quoted fields and any delimiter, infers numbers and booleans, and outputs an array of objects. Client-side, no signup.
CSV to SQL Converter
Convert CSV data into SQL CREATE TABLE and INSERT statements for MySQL, PostgreSQL, or SQLite. Infers column types, escapes values, runs client-side.
CSV Viewer
Open, search, and sort CSV files as a clean table in your browser. Auto-detects delimiters, handles quoted fields, and exports to CSV or JSON.
JSON to SQL Converter
Convert a JSON array of objects into SQL CREATE TABLE and INSERT statements for MySQL, PostgreSQL, or SQLite. Infers types, runs client-side.
Comments
0 comments
No comments yet. Be the first to share your thoughts!