Skip to the tool
GigaJSON

JSON to Excel

All tools
Format and check
View and query
Convert
Encode and decode
Sample files
Guides Open GigaJSON

Turn a JSON array of objects into an Excel workbook. Each key becomes a column, under a bold header row that stays in view as you scroll. Nested objects become dotted columns such as address.city, and a list inside a row is kept as JSON text. Numbers and true/false keep their type. Text stays text, so 007 keeps its zeros and =SUM(A1) is not run as a formula. The file also opens in Google Sheets, Numbers and LibreOffice. For a plain text table, use JSON to CSV.

How to use it

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

Read more: How to open a JSON file on Windows, Mac, a phone or in Excel · 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. Already loaded features keep working if your connection drops. Loading another tool or jq for the first time needs a connection. When one tool isn't enough, GigaJSON opens your data with a tree, a table, JSONPath/JMESPath/jq queries, transforms, diff and history.

Questions

How do I open a JSON file in Excel?

Convert it here and open the .xlsx file: it needs no import step. Excel can also read JSON itself with Data → Get Data → From File → From JSON (Power Query). That suits a file you refresh often, but you build the table yourself.

How are nested objects handled?

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

Why is a long number shown as text?

Excel keeps 15 significant digits, so an ID such as 1234567890123456 would lose its last digit. Numbers with more than 15 digits are written as text, so every digit stays.

What are the limits?

An Excel sheet holds 1,048,576 rows and 16,384 columns, and a cell holds 32,767 characters. Anything past that is left out, and the page says how much. JSON to CSV has no such limit.

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