JSON to Excel Converter
Convert JSON to XLSX locally. Preserve long IDs, preview columns and handle nested data.
This tool runs entirely in your browser. Your data is never uploaded, never stored, and never leaves your device.
Convert a JSON record array into a local XLSX workbook with exact text cells, nested-data options and a column preview.
How to use it
- 1Paste a JSON array of objects or open a .json file.
- 2Keep nested JSON in cells or flatten objects, then preview the first rows.
- 3Create the Excel workbook and download the .xlsx file.
What happens to your data
JSON and workbook creation stay in your browser. All output cells are text to protect IDs and avoid executing formula-like input.
Last updated October 2026
Convert a JSON array of objects into an Excel XLSX file without uploading the data. Preview the columns and first rows, choose how nested objects should appear, and save a workbook with a frozen header. This converter is designed for exports where an identifier must survive exactly, even if it looks like a number.
Ordinary JSON.parse can round a long integer before a spreadsheet is even created. Excel can then change long identifiers or remove leading zeros when values are treated as numbers. This workflow reads the JSON number tokens and writes explicit text cells. An ID such as 9007199254740993 stays exactly that, and the postcode string 00123 keeps both zeros. The trade-off is deliberate: calculations need a later, explicit conversion of the appropriate columns to numbers.
Nested data needs an explicit layout. Keep nested values as JSON text when each original record should stay readable in one row, or flatten nested objects into separate columns. Flattened headings use JSON Pointer notation, such as /person/name. Arrays remain JSON inside a cell instead of multiplying records into rows. That prevents accidental row explosion and keeps this page's conversion rules visible.
How it works
The input must be one JSON array containing objects. Keys across all records form the columns; missing fields produce blank cells, while an explicit null becomes the text null. Strings, booleans and number tokens are written as text. A value beginning with = is data, not an executable Excel formula. Nested JSON retains its source spelling in cell mode. In flattened mode, JSON Pointer escapes a slash as ~1 and a tilde as ~0, so a literal key a/b is distinct from a nested object path.
Preview the first 10 records before exporting. The supported bounds are 5 million input characters, a 5 MiB file, 100,000 JSON tokens, 60 nesting levels, 50,000 records, 500 columns and 250,000 rectangular cells including the header. Each cell must fit Excel's 32,767-character limit. A file can hit a structural limit before the byte limit. Invalid input or a lossy unsupported shape is refused rather than silently truncated.
The output is an XLSX workbook, not CSV renamed with a different extension. Browser libraries are loaded when required and the file is assembled on the device. Wrapped API responses must first be reduced to the record array. The tool does not infer dates, calculate formulas, expand nested arrays, or create multiple sheets from separate arrays.
Worked example: retain identifiers while flattening a record
- Input
- [{"id":9007199254740993,"postcode":"00123","person":{"name":"Ada"},"tags":["a","b"]}]
- Result
- /id: 9007199254740993 · /postcode: 00123 · /person/name: Ada · /tags: ["a","b"]
Flatten nested objects mode. Every output value is an explicit text cell, including the long ID.
Common use cases
- Sharing an API record array with someone using Excel
- Keeping customer IDs, product codes and postcodes intact
- Flattening nested object fields without duplicating rows for arrays
- Reviewing column coverage before creating a workbook
Frequently asked questions
How do I convert JSON to Excel?+
Paste a JSON array of objects or load a local .json file. Choose the nested-data layout, inspect the preview and create the Excel file. Download the .xlsx result and review its columns.
Will a long JSON integer or leading zero be changed?+
The converter preserves number tokens and writes explicit text cells. An unquoted integer such as 9007199254740993 and a string such as 00123 stay intact. Excel calculations require an intentional conversion of selected columns afterward.
How does nested JSON become spreadsheet columns?+
The default keeps nested objects and arrays as JSON in a cell. Flatten nested objects creates JSON Pointer headings such as /person/name. Arrays still remain a JSON cell; they are not expanded into additional records.
Why are spreadsheet numbers stored as text?+
This prevents silent identifier rounding, dropped leading zeros and formula interpretation. It is an accuracy choice for data interchange. Convert only the columns you intend to calculate with after checking their meaning.
What is the difference between a missing field and null?+
A missing field produces an empty cell. An explicit JSON null is written as the text null. The converter does not claim the XLSX file is a fully reversible JSON archive; retain the source if type fidelity is required.
Can I convert an API response containing a data array?+
Extract the array first, then paste it here. The root must be an array of objects. Use the JSON Formatter to inspect the response structure instead of guessing which nested list should become the worksheet.
Standards and limitations
Related tools
JSON ⇄ CSV Converter
Convert JSON arrays to CSV and CSV back to JSON.
CSV to Excel Converter
Create a safe XLSX with encoding detection, typed columns, protected IDs and an optional audit sheet.
Excel to CSV Converter
Choose any XLSX worksheet, preserve date-times, audit identifier risks and export private CSV locally.
JSON Formatter & Validator
Format, validate, and minify JSON with exact line errors, a searchable tree, and private processing.