Convert a JSON Array to Excel Columns (Step-by-Step)
Last updated: 13 June 2026
The most common JSON shape is an array of objects - a list where each item has the same kind of fields. That maps perfectly onto a spreadsheet: each object becomes a row and each field becomes a column. This guide walks through one realistic array end to end so you can predict exactly what columns and rows you'll get before you even open the file.
A realistic array of objects
Here is a small users array that packs the three cases you hit in real data - a scalar list (tags), a nested object (address), and a leading-zero code:
[
{
"id": "U-001",
"name": "Ada Lovelace",
"tags": ["admin", "beta"],
"address": { "city": "London", "zip": "SW1A" }
},
{
"id": "U-002",
"name": "Linus Torvalds",
"tags": ["maintainer"],
"address": { "city": "Helsinki", "zip": "00100" }
}
]The resulting table
In the default Separate columns mode that array becomes two rows with these headers (the converter sorts the column set alphabetically):
| address.city | address.zip | id | name | tags |
|---|---|---|---|---|
| London | SW1A | U-001 | Ada Lovelace | admin, beta |
| Helsinki | 00100 | U-002 | Linus Torvalds | maintainer |
Nested objects flatten to dotted columns
The address object did not land in a single cell - it spread into address.city and address.zip. That dotted-path naming is what lets you filter and pivot on a sub-field in Excel. If you would rather keep a subtree intact, switch to JSON in one cell and address stays as one JSON string. For deeper trees, see the nested JSON to Excel guide.
Scalar arrays become one comma-joined cell
The tags field held a list of plain strings, so it collapsed into a single cell - admin, beta for the first row and maintainer for the second. This keeps each object on exactly one row instead of multiplying rows out for every tag. A list of objects (rather than strings) is instead kept as JSON text in one cell, again so your row count stays one-to-one with the array.
Different keys across objects
Real arrays are rarely uniform. If one object carries a phone field and the others don't, the converter still builds the column from the union of all keys and simply leaves the cell blank where a value is missing - so a sparse field never silently drops the rest of the row.
Convert it
- Paste your JSON array, or drop a .json file (up to 15 MB), into the converter.
- Preview the columns and rows to confirm the mapping.
- Download the .xlsx and open it anywhere.
It's free, needs no signup, and runs entirely in your browser. If your data came from an API wrapper such as { "data": [ … ] } rather than a bare array, the API response to Excel guide shows how the record array is detected automatically.
Frequently asked questions
- How does the converter decide the column headers?
- It takes the union of every key across all objects in the array, then sorts the headers alphabetically. So if the first object has name and age and a later one adds a phone field, phone becomes its own column and earlier rows simply leave that cell blank. Nothing is dropped because one object happens to be missing a key.
- What happens to a scalar array like tags: ["admin", "beta"]?
- A list of simple values (strings, numbers, booleans) is joined into a single comma-separated cell - tags becomes the cell "admin, beta". The row count never changes, so one object in your array is always exactly one row in the sheet.
- Will IDs like U-001 or a zip of 00100 stay exact?
- Yes. Values that are quoted strings in your JSON stay text, so leading zeros survive (00100 does not become 100) and order codes like U-001 are untouched. Long numeric IDs are read with a big-number-safe parser, so they keep every digit instead of being rounded or shown in scientific notation.
- What if some objects in the array hold a nested list of objects?
- A field whose value is a list of objects (for example a line_items array inside each order) is kept as JSON text in one cell by default, so each top-level object stays a single row. If you want those expanded instead, see the nested JSON guide for how deeper structures are handled.
Related guides
- JSON to Excel
- NDJSON / JSONL to Excel
- Nested JSON to Excel
- Postman JSON to Excel
- API Response to Excel
- JSON to CSV vs Excel
- MongoDB / Firebase to Excel
- GST JSON to Excel
- Best JSON to Excel Converter
- How to Open JSON
- JSON to Google Sheets
See all guides or the FAQ.