Toolium

JSON to Excel

Convert JSON data to an Excel spreadsheet

100% client-sideFree, no signup

Nested objects become dot-notation columns (address.city), and arrays of values are joined into one cell. Numbers and true/false keep their types.

JSON into a spreadsheet someone can read

Plenty of data lives in JSON: API responses, database dumps, logs. Excel is where a coworker who does not run a debugger wants to see it, sort it, and pass it along. The tool takes an array of JSON objects and writes an .xlsx with the keys as headers and each object as a row. A single object gets wrapped in a one-row file, and when objects do not all share the same keys, every key still gets its own column, with empty cells where a record lacks the field. NDJSON needs one small edit first, since the parser expects a single JSON document: wrap the lines in square brackets and put commas between them.

Nested objects flatten with dot notation, so an address object turns into address.city and address.zip columns that still tell you which fields belonged together. An array value depends on what it holds: an array of plain values joins into one readable cell, so tags like admin and user arrive as admin, user, while an array of objects lands as its JSON text so no data gets lost. Numbers and true/false keep their types, which means amount columns still sum. For a flatter layout or one array item per row, reshape the JSON in code before you bring it here.

Two things to check

Do long ID numbers keep their precision?
Excel stores numbers as 64-bit floats, which hold 15 significant digits, so an ID longer than that loses its tail. Keep long IDs exact by quoting them as strings in the source JSON so they import as text.
What is the practical row limit?
Around 50,000 rows converts smoothly. Excel itself allows about a million, but the browser JSON parser and the SheetJS writer slow down well before that.