JSON to Excel Converter

Paste a JSON array or upload a .json file -- download a clean .xlsx in seconds. Nested objects flatten automatically. Fully client-side: no data leaves your browser.

Array of objects, or an object wrapping an array. Nested objects are flattened to dotted columns (e.g. address.city).

How to convert JSON to Excel

  1. Paste your JSON into the box above, or click Upload file and select a .json file.
  2. Click Convert. Object keys become column headers; each object in the array becomes a row.
  3. Click Download .xlsx to save the Excel file.
  4. Open the file in Microsoft Excel, LibreOffice, or Numbers.

JSON to spreadsheet -- what formats are supported?

The converter handles the most common JSON shapes:

  • Array of objects: [{"name":"Alice","age":30}, ...] -- each object is a row, keys are headers.
  • Wrapped array: a top-level object whose first array property is used (e.g. {"data": [...]} from REST APIs).
  • Nested objects: flattened to dotted column names -- address.city, metadata.created_at.
  • Arrays inside objects: serialized as JSON strings in the cell.

JSON to XLSX -- frequently asked questions

What if my JSON keys differ across objects?
All keys across all objects are collected into a unified header row. Missing values for a given row are left blank. Column order follows the first appearance of each key.
Can I convert a JSON file exported from an API?
Yes. REST APIs often return {"data": [...], "meta": {...}}. The converter finds the first array property and uses it, ignoring the metadata wrapper.
Is my data safe?
Yes. Everything runs in your browser -- no file or data is sent to any server. Your JSON never leaves your device.
Does it preserve numbers and booleans?
Yes. JSON numbers map to numeric Excel cells; booleans map to TRUE/FALSE; nulls are left blank.
How do I convert deeply nested JSON?
Nested objects are flattened with dot notation up to any depth. Arrays within objects are serialized as a JSON string in a single cell -- if you need arrays expanded to rows, flatten your data before pasting.