Convert JSON to an Excel or CSV table

Paste JSON or choose a .json file and get a spreadsheet you can sort, filter and share. Nested objects are flattened into columns, so API responses become readable tables.

Private by design: your file never leaves your device. This tool runs 100% in your browser, with no uploads.

Loading the tool...

How to use the JSON to Excel tool

  1. Choose a .json, .ndjson or .txt file, or paste JSON into the box.
  2. Pick Excel (.xlsx) or CSV as the output format.
  3. Keep Bold and freeze the header row ticked if you want the column names to stay visible while scrolling.
  4. Press Convert, check the preview table and download the file.

Worked example: two customers from an API

customers.json holds an array of 2 objects. Each has an id, a name, an address object with city and zip, and a tags list, for example "tags": ["vip", "new"].

  • The result reads 3 rows x 5 columns: one header row plus one row per customer.
  • The columns are id, name, address.city, address.zip and tags.
  • The tags cell for the first customer holds the text ["vip","new"], so nothing is lost.

The download is named customers.xlsx, or customers.csv if you pick CSV.

Which JSON shapes work

The most common shape is an array of objects, which is what most APIs and database exports produce. An array of arrays becomes rows directly. A single object becomes a one-row table, and an object that wraps a list, such as {"data": [...]}, is unwrapped to the first non-empty list inside it. Newline-delimited JSON, with one object per line, is read too. Keys are collected from every object in order of first appearance, so objects that lack some keys simply leave those cells empty.

Limits worth knowing

Flattening goes up to six levels deep; anything deeper is stored as JSON text. Very large pasted text can make the page slow, so for big exports choose the file instead of pasting it. Invalid JSON is reported with the parser’s message so you can find the broken spot. Numbers and true or false values keep their type in Excel, while everything else is stored as text.

Your files stay on your device

The JSON you paste or choose is parsed and turned into a spreadsheet by code in this browser tab, using a background worker. It is not sent to any server, so API responses that contain tokens or personal data stay on your device.

Frequently asked questions

How are nested objects handled?

They are flattened into dotted column names, for example address.city and address.zip.

What happens to arrays inside an object?

They are kept as JSON text in one cell, so you can still see every value.

Can I paste JSON instead of uploading a file?

Yes. Paste it into the box. Nothing is uploaded either way; the file option simply reads from your device.

Does it support NDJSON or JSON Lines?

Yes. A file with one JSON object per line is read as a list of rows.

Why is a column empty for some rows?

Those objects did not contain that key. The tool collects every key it finds and leaves missing values empty.