JSON to Excel Converter
Paste JSON or drop a file and get a real Excel workbook: the rows are found even inside an API response, nested fields get their own columns, and numbers, dates and true/false stay typed. Text is never run as a formula.
JSON to Excel
Add your files. Recommended settings are ready, so you can process in one click.
PDF, Word, images, audio, video, archives and more
Up to 100 files · 250 MB · No account- 1Add files
- 2Choose an action
- 3Download or keep going
What happens to your file.
The JSON is parsed in your browser and every list of records in it is found, including lists nested under data, results or items next to paging information. The keys across all the records become the header row, so a field that only appears in later records still gets a column. Nested objects become dotted columns such as customer.name, or stay together as JSON text if you prefer. Numbers are written as numbers, true and false as booleans, and unambiguous ISO dates as real Excel dates. Text is always stored as text, so a postcode keeps its leading zero and a value starting with = is never run as a formula. The workbook is a native XLSX file with a frozen, filterable header. Process file does the same on our server, and also reads files saved by PowerShell (UTF-16) or with a byte-order mark, records keyed by id as a Firebase export stores them, and rows written as arrays with a header row. Each list of records in an export of several collections becomes its own sheet.
Where it stops: A spreadsheet is flat, so a list of objects inside a record is kept as JSON text in one cell rather than spread over extra rows. Excel holds at most 1,048,576 rows and 16,384 columns per sheet and 32,767 characters per cell; anything beyond that is cut and the page says so. Numbers longer than 15 digits, such as IDs, are kept as text so no digit is lost.
How JSON becomes rows and columns
| In the JSON | In the spreadsheet |
|---|---|
| A list of objects | One row per object and one column per key |
| A nested object, such as "customer": {"name": "Ana"} | A column called customer.name, or the object as JSON text |
| A list of values, such as ["red", "blue"] | One cell reading red, blue, or the list as JSON text |
| A list of objects inside a record | One cell of JSON text, since it cannot fit in one row |
| "2024-05-01" or "2024-05-01T09:30:00Z" | A real Excel date that sorts and filters as a date |
| A number longer than 15 digits | Text, so every digit is kept |
| "00123" or "=SUM(A1)" | Text, exactly as written |
Why a missing key does not shift the columns
The header is built from the keys of every record, not just the first one. A record without a key simply gets an empty cell in that column, so every value stays under the right heading even when the records differ.
What people use it for.
Everything you need, without a paywall.
Common questions.
How do I convert JSON to Excel?
Paste the JSON or drop a .json file. The rows are found and previewed as a table; check the preview, adjust the settings if you need to, and download the Excel file. Nothing is uploaded.
What happens to nested objects?
By default each nested field gets its own column with a dotted name, such as customer.address.city. You can instead keep each nested object together as JSON text in one cell.
My JSON is an API response with the data inside. Will that work?
Yes. Every list of records in the document is found, wherever it sits. In the visual editor, tick the ones you want and each becomes its own sheet; Process file gives every list of records its own sheet.
Can it read a JSON Lines file or a PowerShell export?
Yes. A file with one JSON record per line, as BigQuery, MongoDB and log tools export, becomes one row per line, and a file PowerShell saved with Out-File (UTF-16) or with a byte-order mark is read as it was written.
Why are some numbers stored as text?
Excel keeps only 15 significant digits in a number, so a longer ID would be silently rounded. Those are kept as text so every digit survives. Values that are text in the JSON, such as "00123", also stay text.
Is this a real Excel file or a renamed CSV?
A real XLSX workbook, with typed cells, a frozen header and filter buttons, which spreadsheet apps open directly without an import step.
Is my data uploaded?
Not with the visual editor, which reads the JSON and builds the workbook in your browser. Process file sends it to our server, where it is written to a temporary folder for that request and deleted as soon as the job finishes.
You might also need.
Convert arrays of JSON objects into CSV tables with automatic column discovery and UTF-8 output.
Convert CSV data into a native Excel XLSX workbook with delimiter detection and encoding controls.
Convert XLS and XLSX worksheet rows into JSON objects with optional sheet selection.
Format, validate, beautify and minify JSON or convert JSON to XML, CSV and YAML using one online toolbox.