JSON to CSV

Convert JSON into CSV.

Loading tool…

About JSON to CSV

JSON to CSV converts a JSON array of objects into clean, spreadsheet-ready CSV. The header row is built from the union of every object's keys, and any value that contains a comma, quote, or line break is automatically wrapped in quotes and escaped so it stays in one cell. You get a live row and column count, plus Copy and Download .csv buttons.

It's completely free with no sign-up, no watermarks, and no limits. Everything happens right in your browser using plain JavaScript, so your JSON is never uploaded to a server. Paste, convert, and download in seconds.

Frequently asked questions

Is this JSON to CSV converter free?
Yes, it's 100% free with no sign-up, no watermarks, and no usage limits. You can convert as many files as you want.
Is my data uploaded to a server?
No. All conversion happens locally in your browser using JavaScript. Your JSON never leaves your device and nothing is sent to any server, which makes it safe for sensitive or private data.
What JSON format does it expect?
Paste a JSON array of objects, for example [{"name":"Ada","age":30}, {"name":"Grace","age":40}]. A single object also works and becomes a one-row CSV. Each object becomes a row and each unique key becomes a column.
How does it handle commas, quotes, and line breaks in values?
It follows the standard CSV rules (RFC 4180): any value containing a comma, double quote, or newline is wrapped in double quotes, and internal double quotes are doubled. This keeps your data intact and importable into Excel, Google Sheets, and databases.
What happens if my objects have different keys?
The header row is the union of all keys across every object, in the order they first appear. If an object is missing a key, that cell is left empty, so mismatched or partial records still convert cleanly.
How are nested objects and null values handled?
Nested objects and arrays are converted to their JSON string representation inside the cell, and null or missing values become empty cells. Numbers and booleans are written as plain text.