JSON to CSV

Paste a JSON array of objects and get CSV instantly, side by side. Everything runs in your browser — nothing is uploaded.

Drop your file here

or click to browse

All files or paste with ⌘V

How it works

Paste a JSON array of objects and get CSV instantly, side by side. Everything runs in your browser — nothing is uploaded.

Paste your JSON on the left and the CSV appears on the right as you type — no button, no wait. The input must be a top-level array of objects, like [{"name": "a", "age": 1}, {"name": "b", "age": 2}]. The tool builds a header row from the union of all keys across every object, then writes one row per object. Missing values become empty cells, so ragged objects still line up. Values containing commas, quotes, or newlines are quoted and escaped per RFC 4180, and nested objects or arrays are JSON-stringified into the cell. You can also load a .json file instead of pasting, and copy or download the CSV when you're done. All of it happens locally in your browser — the JSON never touches a server. Need the other direction? Use CSV to JSON.

How to use it

  1. Paste your JSON. Paste a top-level array of objects on the left, or load a .json file.
  2. Watch the CSV appear. The conversion is live — headers come from the union of all keys, one row per object.
  3. Check the escaping. Commas, quotes, and newlines are quoted per RFC 4180 so the CSV opens cleanly in Excel or Sheets.
  4. Copy or download. Grab the CSV with the copy button or download it as a file.

Frequently asked questions

What JSON shape does this expect?
A top-level array of objects: [{"a": 1, "b": 2}, {"a": 3, "b": 4}]. Nested objects and arrays are stringified into a single cell. A bare object (not wrapped in an array) isn't converted.
How are commas and quotes handled?
Any value containing a comma, double-quote, or newline is wrapped in double-quotes, and inner quotes are doubled — standard RFC 4180 escaping — so the CSV opens cleanly in Excel, Sheets, or any parser.
Does my JSON get uploaded?
No. The conversion runs entirely in your browser. Nothing is sent to a server, and there are no accounts or tracking.
Saved