JSON to CSV Converter
Paste JSON, get a downloadable CSV — nested objects flattened automatically.
A free online JSON to CSV converter — paste a JSON array of objects (or a single object), and get a properly-escaped CSV with a union header across all rows. No signup, runs entirely in your browser.
What does a JSON to CSV converter do?
A JSON to CSV converter turns a JSON array of objects — the shape most APIs return — into a flat, spreadsheet-friendly CSV table. Each object becomes a row, each unique key becomes a column, nested objects are flattened with dot notation, and values are properly quoted and escaped so commas, quotes, and line breaks inside the data don't corrupt the CSV structure.
How nested data is handled
Nested objects are flattened into dot-notation column names — {"address":{"city":"NYC"}} becomes a column called address.city. Arrays of plain values (strings, numbers) are joined into one cell with "; " as the separator. Arrays containing objects — which don't map cleanly to a single cell — are kept as a JSON string in that cell instead of being silently dropped.
Handling inconsistent keys
Real-world JSON often has objects with slightly different keys — some records might be missing an optional field. The CSV header is built from the union of every key seen across all rows, in the order they first appear, and any row missing a key just gets an empty cell there rather than the whole conversion failing.
CSV escaping
Any value containing a comma, a double quote, or a line break is wrapped in double quotes, with internal double quotes doubled up (the standard CSV escaping rule) — so a value like Smith, John or text containing quotation marks won't be misread as extra columns when opened in Excel, Google Sheets, or Numbers.
Frequently asked questions
Related tools: JSON Formatter · Diff Checker · XML Formatter