Browser-Only Privacy
JSON is converted and the XLSX file is generated entirely in your browser via SheetJS — no server round-trip means tokens, PII, and financial data never leave your tab.
500+ fast, free tools. Most run in your browser only; Image & PDF tools upload files to the backend when you run them.
Convert a JSON array of objects to an Excel XLSX download. Sheet name input, column order from first object’s keys.
JSON to XLSX converts a JSON array of objects into a downloadable Excel workbook (.xlsx). The first object's keys define the column order; subsequent rows reuse those columns and append any new keys at the end so no data is lost when objects vary slightly. Object and array values inside cells are JSON-stringified — Excel cells must be scalar — preserving the data for later parsing while keeping the spreadsheet importable. Sheet name and file name are configurable; both are sanitised to remove characters that Excel rejects (slashes, brackets, asterisks). The tool uses SheetJS loaded from CDN to write the OOXML format directly in the browser, then triggers a save through a Blob URL. The entire pipeline runs locally — JSON containing tokens, customer records, or financial data is never uploaded.
JSON is converted and the XLSX file is generated entirely in your browser via SheetJS — no server round-trip means tokens, PII, and financial data never leave your tab.
The first object's keys define the column order, and any new keys from later objects are appended at the end — irregular JSON does not lose data, and the schema stays predictable.
Set the visible sheet tab name and the saved filename without renaming after download — useful when batching multiple exports for archival.
Object and array values are JSON-stringified into their cells so the structure is recoverable later — Excel cells must be scalar, but the JSON content is intact.
Output is a standard .xlsx file, opened by Excel 2007+, Google Sheets, Numbers, LibreOffice, and every spreadsheet tool used in the last fifteen years.
Verify the column order and value formatting against a 50-row table before downloading, catching schema mistakes without opening Excel.
Input: [{"id":1,"name":"Alice","city":"Paris"},{"id":2,"name":"Bob","city":"Berlin"}]
Output: Excel sheet "Sheet1": | id | name | city | |----|-------|--------| | 1 | Alice | Paris | | 2 | Bob | Berlin |
Input: [{"id":1,"name":"Alice"},{"id":2,"name":"Bob","role":"admin"}]
Output: Excel sheet: | id | name | role | |----|-------|-------| | 1 | Alice | | | 2 | Bob | admin |
Input: [{"id":1,"meta":{"role":"admin"}}]
Output: Excel sheet: | id | meta | |----|-------------------| | 1 | {"role":"admin"} |