From payload to workbook without the middle step
The clumsy way to get JSON into Excel is a two-hop detour: convert JSON to CSV, then coax Excel into importing the CSV with the right delimiter and encoding, fighting leading-zero loss and mangled dates along the way. Writing a real .xlsx directly skips all of that. A binary Excel workbook carries typed cells and real structure, so numbers stay numbers, text stays text, and Excel opens it without the “file format doesn’t match” warning that renamed CSVs trigger.
Matching the shape of real-world JSON
JSON in the wild is not always a neat table, so the converter reads its structure and does the sensible thing:
- An array of objects — the classic API list — becomes one sheet, one column per key.
- An object whose values are arrays, like
{ "users": [...], "orders": [...] }, becomes a multi-sheet workbook with one tab per array. This is the feature most free converters lack, and it turns a structured payload into a tabbed workbook in a single click. - A single object becomes a one-row sheet; a plain 2D array is written cell-for-cell.
Nested objects are the other real-world wrinkle. With flattening on, { "contact": { "city": "London" } } becomes a column named contact.city, keeping every value visible in its own column instead of buried in a blob. Arrays inside a record are written as compact JSON text so nothing is silently dropped.
The two-way workflow
This is the inverse of the Excel Converter, which reads a workbook back into JSON or CSV: edit or generate data as JSON, publish it as a spreadsheet, and read spreadsheets back into JSON when a developer needs them again. For flat exchanges that never require multiple sheets, JSON ⇄ CSV is the lighter tool, and CSV to SQL takes tabular data the last step into a database.