Free tool

JSON to CSV.

Paste an API response, a JSON array or JSON Lines and get a CSV that opens cleanly in Excel and Google Sheets. Nested objects become customer.name columns, every key from every record is kept, and accents survive the trip into Excel.

data.json
451 B3 rows × 7 columns
data.csv
idcustomer.namecustomer.countrytotaltagsnotepaid
00417Rivera, AnaUS184.5["priority"]Said "ship Friday"
00418Ben OkaforNG62false
00419Zoë MüllerDE1240=HYPERLINK("http://example.com")true
Delimiter
Shape
File

Skip the attachment. Publishes the rows to Comma as a readable table with the CSV folded underneath — one link that opens the same on any device, private or open to anyone who has it, and reviewers comment on the exact row. Free, no card.

What the converter gets right

  • Nested JSON, flat columns. {"customer": {"name": …}} becomes a customer.name column — and the CSV to JSON converter nests it back, so the round trip is lossless.
  • No column is dropped. The header is the union of every record’s keys in first-seen order, not just the keys of the first record.
  • API responses as they come. A {"data": […]} or {"results": […]} envelope is unwrapped, and JSON Lines input is read one record per line.
  • Opens right in Excel. The download carries a UTF-8 byte-order mark so é doesn’t turn into é, and a semicolon delimiter for locales where Excel expects one (why Excel opens CSVs wrong).
  • Proper quoting. Fields with commas, quotes or line breaks are quoted per RFC 4180, inner quotes doubled — and an optional guard neutralises =, +, - and @ cells before a spreadsheet runs them as formulas.

Questions

How do I convert JSON to CSV?
Paste the JSON into the editor on this page or drop a .json file onto it. The CSV is generated as you type — one row per record, one column per key. Copy it, or download a .csv that opens straight in Excel, Google Sheets or Numbers. Nothing installs and nothing uploads.
How are nested objects converted?
With “Flatten nested objects” on, {"customer": {"name": "Ana"}} becomes a column called customer.name — the same dot-path convention the CSV to JSON converter reads back into nested objects, so the round trip is lossless. Arrays stay in one cell as JSON text, because spreading them across columns would give every record a different shape.
What if my records don't all have the same keys?
Every key that appears in any record becomes a column, in the order it was first seen, and records missing a key get an empty cell. Converters that take the header from the first record silently drop every column it doesn't have.
My JSON is an API response with the array inside a data field. Does that work?
Yes. When the top level is an object holding exactly one array — {"data": […]}, {"results": […]}, {"items": […]} — that array is used as the rows and the envelope fields are ignored. Newline-delimited JSON (JSON Lines, one object per line) is detected too.
Why do accents and emoji look garbled when I open the CSV in Excel?
Excel on Windows assumes a CSV without a byte-order mark is in the legacy system code page, so UTF-8 “é” shows up as “é”. The download here starts with a UTF-8 BOM by default, which Excel, Google Sheets and Numbers all read correctly. Turn it off only if a script that reads the file chokes on the BOM.
Excel puts everything in one column — how do I fix it?
In locales that use a comma as the decimal separator (most of Europe and Latin America), Excel expects semicolons between fields. Pick the Semicolon delimiter before downloading and the file opens split into columns.
What does “Escape formulas” do?
A cell starting with =, +, - or @ is run as a formula when the CSV opens in a spreadsheet — the basis of CSV injection attacks. With the option on, those cells get a leading apostrophe so they display as text. Ordinary negative numbers are left alone. Turn it on whenever the JSON came from users, an API or anywhere you don't control.
Is my data uploaded anywhere?
No. Parsing and conversion happen in your browser. The data only leaves your machine if you click “Share as a table” and create a report.

Related: CSV to JSON · JSON formatter · JSON to HTML table · JSON to chart · HTML table to CSV · all free tools