Skip to content

JSON to CSV

Flatten JSON into a spreadsheet-ready CSV.

Paste an array of objects and get a CSV you can open in Excel. Nested objects are flattened into dotted column names, and a key that only appears in some records still gets its own column.

How to use it

  1. Paste your JSON, or drop in a .json file.
  2. Check the preview and choose a separator.
  3. Save the CSV.

Why use this tool

Completely private

Everything runs inside your browser. Your files and text are never sent to a server.

Free, with no limits

No sign-up, no watermarks and no cap on how many times you can use it.

Instant results

There is no upload or queue to wait for, so results appear as fast as your device can work.

Works on any device

Runs in any modern browser on phone, tablet or desktop. Nothing to install.

Frequently asked questions

What happens to nested objects?
They become dotted columns: {"user": {"name": "Ivan"}} becomes a column called user.name. That is what spreadsheet exports do, and what most importers expect back.
What if my records have different keys?
Every key found anywhere gets a column, in the order it first appears. Records missing a key get an empty cell rather than being shifted.
Should I add the BOM for Excel?
Yes, if you are going to open it in Excel on Windows. Without it Excel reads a UTF-8 file as the local code page and Cyrillic comes out as gibberish. Leave it off for anything you are going to process with code.
What about arrays inside a record?
An array of simple values is joined with commas into one cell. Anything more complicated is written as JSON in the cell, so nothing is lost.

Related tools