Development
JSON to CSV Converter
Turn a JSON array of records into CSV with combined columns, quoted cells, and downloadable output. Understand missing values, nested objects, and spreadsheet imports.
About this tool
When to use it
Turn a JSON array of records into CSV with combined columns, quoted cells, and downloadable output. Understand missing values, nested objects, and spreadsheet imports.
How to use it
Use this converter to inspect an API record list in a spreadsheet or pass a simple table to another tool. Paste or upload the array, select Convert to CSV, then inspect the header and a few rows before downloading devmate-export.csv. Editing, pasting, uploading, or clearing the input clears the previous result. If your response wraps the records inside a data property, extract that array first.
Guide updated . Examples checked against this implementation.
Worked examples
Combine fields across records
Input
[{"name":"Asha","role":"Developer"},{"name":"Sam","active":true}]Expected output
name,role,active
Asha,Developer,
Sam,,trueColumns are collected across all records in first-seen key order. A missing field becomes a blank cell. Downloaded CSV separates records with CRLF line endings.
Quote a cell containing a comma
Input
[{"name":"Asha, N","count":2}]Expected output
name,count
"Asha, N",2The comma stays inside one quoted cell. Quotes inside a cell are doubled; embedded line breaks are also quoted.
Errors and unsupported input
{"data":[{"name":"Asha"}]}Use [{"name":"Asha"}] as the input. The root must be a nonempty array and every item must be an object.
[{}]Add at least one named property so the CSV has a header. A list of primitives or arrays cannot supply record field names.
Continue this workflow
- JSON Formatter & Validator: Inspect a wrapped API response and find its record array.
- List Converter: Change separators for a simple one-dimensional list instead of creating a record table.
Format references
Questions
Frequently asked questions
Does this flatten nested objects into extra columns?
No. A nested value becomes JSON text in one cell. Select and flatten the fields you need before converting.
Why do missing values and null look the same?
Both are exported as blank cells. Add an explicit status column before conversion if your receiving system needs to distinguish them.