Nothing you open here is ever uploaded

Convert JSON to Excel

Give it a list of objects, an export, a log, a response you copied out of a console, and the columns become the union of every key, in the order the keys first appear, so a record missing a field leaves a blank rather than shifting the row along. Numbers become real numbers in the sheet. There is no formatting: no bold header row, no column widths.

The spreadsheet writer is a few kilobytes of our own code. No million-byte library is downloaded. Your file is read on your own machine and never sent anywhere. Open your browser’s network tab and watch while you use it.

Questions

What shape of JSON works?

A list of objects. One object on its own works too and becomes a single row. A list of lists is accepted, but it carries no key names, so the columns come out headed 0, 1, 2. A bare string or number is refused with a message, but a list of plain strings or numbers is not refused, and what comes out is wrong: each string is split one character per column, and a list of numbers gives an empty workbook.

What happens to nested objects?

They are written into the cell as JSON text rather than spread across extra columns. Nothing inside them is dropped, but nothing is flattened for you either. There are no parent.child columns.

Do true and false stay usable in Excel?

No. They arrive as the words true and false in text cells, not as Excel booleans. Numbers are the exception and become real numbers, though the JSON is read as JSON first: 1250.00 arrives as 1250, and a number longer than about 15 digits comes out rounded.

Does every record become a row?

All but one whose values are every one of them empty or null: that row is dropped on the way into the sheet, while the count in the summary line still includes it. If the two disagree, that is why.

Other data & spreadsheets tools

Everything here is free and works the same way, in your browser.

New tools, once in a while

A new DeskKit tool lands every week or two. Leave an address to hear about it. Nothing else is ever sent, and one click removes you.