Skip to the tool
GigaJSON

JSON to CSV

All tools
Guides Open GigaJSON

Turn a list of JSON objects into a CSV table for Excel, Google Sheets or Numbers. Each key becomes a column. Nested objects become dotted columns such as address.city, and a list inside a row is kept as JSON text.

How to use it

  1. Paste a JSON array (or an object that holds one), or open a file.
  2. A CSV preview appears with the number of rows and columns.
  3. Download the .csv file or copy it.

Read more: Convert JSON to CSV: nested objects, arrays and Excel gotchas

Private, and made for big files

This tool runs in your browser, in a background worker: nothing you paste or open is uploaded, and nothing is kept after you leave. JSON and XML input can be up to 1 GB, depending on available memory. Processing runs in a background worker; large analyses can take a minute or more. If your connection drops while you're here, the tool keeps working. When one tool isn't enough, GigaJSON opens your data with a tree, a table, JSONPath/JMESPath/jq queries, transforms, diff and history.

Questions

What JSON can be converted?

A list of objects works best. If you give it an object with one list inside, that list becomes the rows. Anything else becomes a single row.

How are nested objects handled?

They are flattened into dotted column names: {"address": {"city": "Lima"}} gives a column called address.city. Lists inside a row are written as JSON text.

Is my data uploaded?

No. The tool runs in your browser, in a background worker. Nothing you paste or open goes to a server, and nothing is kept after you leave the page.

How large a file can it handle?

JSON and XML input can be up to 1 GB, depending on memory. CSV/YAML input and JSON repair are limited to 128 MB. Conversion runs in a background worker. jq, text editing and text-based exports have separate limits, shown when you use them.

All tools