JSON to Excel Converter – Convert JSON Online (Free Tool)
Convert JSON data to Excel format. Create spreadsheets from JSON arrays and objects.
Example Output
Real .xlsx workbook. Nested objects are flattened with dot-notation column headers; arrays are JSON-stringified into a single cell.
users.xlsx — header row + 250 rows, columns auto-sized
What is JSON to Excel Converter?
Convert any JSON array of objects into a downloadable Excel workbook (.xlsx) instantly. The tool flattens one level of nesting using dot-notation headers (`user.email` → column `user.email`), preserves numeric and boolean types, and lets you reorder or rename columns before exporting.
Why use this tool?
- Instant results — no waiting on a server or upload progress bar
- Touch-friendly UI, fine on phones for on-the-go edits
- No registration, account, or installation required
- Auto-detects encoding (UTF-8, Shift_JIS, GBK, Vietnamese) for CSV imports
- No file upload — confidential reports never leave your computer
How to use
- Paste your JSON data or upload a file
- Preview the parsed data
- Click "Convert to Excel" button
- Download the .xlsx file
Examples
REST API response → finance team
A 5,000-element JSON array from your `/orders` endpoint is converted with one click for the finance lead who only opens Excel.
Nested objects
`{ user: { name, email } }` flattens to columns `user.name` and `user.email` — no manual reshaping.
Mixed types
Numbers stay numeric, booleans become TRUE/FALSE, ISO dates can be auto-converted to Excel date cells via a toggle.
Common use cases
- Sharing API output with non-developers
- Generating downloadable reports from a SaaS dashboard
- Backing up JSON data into a tangible spreadsheet
- Importing API data into accounting / CRM systems that only accept Excel
- Auditing a JSON payload visually before pushing to production
Troubleshooting
- Array fields show as `[object Object]` or raw JSON
- Excel cells hold one value — nested arrays are JSON-stringified by design. Pre-flatten the array in JSON before converting, or use the "expand arrays as rows" option.
- Column order is unpredictable
- JSON objects don't guarantee key order across rows. Use the column reorder dialog to pin the columns you want, then re-export.
- Numbers stored as strings stay as text
- JSON `"42"` is a string. Wrap numeric values without quotes (`42`) in your source, or enable the "coerce numeric-looking strings" toggle.
Frequently Asked Questions
An array of flat objects works best: `[{"name": "...", "age": 30}, ...]`. The keys of the first object become the column headers; each object becomes a row.
Try these related tools
Explore more Office Tools
Discover other free, privacy-first tools in Office Tools.