Excel to JSON
Paste or drop your data here, or open a file.
New to Bracely?
Everything stays in your browser.
Output appears here
Paste or open your data in the input box. It never leaves your browser.
Excel to JSON
Open or drop a spreadsheet and get its data as JSON: every sheet becomes an array of rows with the header row as keys. Dates, numbers and true/false keep their types, and the file is read in your browser, so it never leaves your computer.
Example: a workbook with two sheets
An .xlsx file with an Orders sheet and a Customers sheet. The header row gives the keys, a dotted header such as customer.city becomes a nested object, a date cell becomes an ISO date, empty cells become null, and with two sheets the result is one array per sheet name:
The spreadsheet
Sheet "Orders"
order | customer.name | customer.city | total | paid | placed
ORD-20419 | Ananya Rao | Pune | 4097 | True | 2026-10-29T10:00:00.000Z
ORD-20420 | Kabir Shah | Delhi | 799.5 | False |
Sheet "Customers"
id | name | email
7 | Ananya Rao | ananya@example.com
8 | Kabir Shah | Output
{
"Orders": [
{
"order": "ORD-20419",
"customer": {
"name": "Ananya Rao",
"city": "Pune"
},
"total": 4097,
"paid": true,
"placed": "2026-10-29T10:00:00.000Z"
},
{
"order": "ORD-20420",
"customer": {
"name": "Kabir Shah",
"city": "Delhi"
},
"total": 799.5,
"paid": false,
"placed": null
}
],
"Customers": [
{
"id": 7,
"name": "Ananya Rao",
"email": "ananya@example.com"
},
{
"id": 8,
"name": "Kabir Shah",
"email": null
}
]
}
How do I use the Excel to JSON?
- Open or drop an .xlsx, .xlsm, .xls or .ods file.
- Read the JSON: one array per sheet, or just the array when there's one sheet.
- Copy or save the JSON, or open it in any other tool.
What does the Excel to JSON do?
- Every sheet, named by its tab
- Dates as ISO text, numbers and true/false as JSON values
- Dotted headers like customer.city as nested objects
When to use the Excel to JSON
Spreadsheets are where a lot of data starts: price lists, product catalogues, survey answers, test cases, translations and reports someone exported. Turning a sheet into JSON lets you seed a database, feed an API or a test, or look at the data with jq, Table view or Diff, without copying cells by hand.
The first row of each sheet gives the keys and every row after it becomes an object. Numbers and true/false keep their types, date cells become ISO dates such as 2026-10-29T10:00:00.000Z, and an empty cell becomes null so every row has the same keys. A header with dots, like customer.city, becomes a nested object. A workbook with one sheet gives that sheet's array; with several, you get an object with one array per sheet name. The file is read by SheetJS in your browser and never uploaded, which matters for HR, finance and customer data.
Frequently asked questions
- Can I convert JSON back into Excel?
- Yes. Switch Direction to JSON → Excel: each array becomes a sheet, nested keys become dotted columns, and Save downloads the .xlsx.
- Why is a value text when Excel shows a number?
- The cell is stored as text in the file, often because it was typed with a leading apostrophe or imported as text. Bracely keeps what the file says; codes like 007 or phone numbers are usually meant to be text anyway.
- Do I have to use this page?
- No. Dropping a spreadsheet anywhere in Bracely also reads it, and opens the JSON in a JSON tool so you can carry on from there.
- Is my data uploaded?
- No. Bracely runs entirely in your browser, so nothing you paste or open leaves your device.
More JSON tools
Bracely has 104 JSON tools in one page. Related ones:
- JSON to YAML
- JSON to CSV
- JSON to XML
- JSON to Excel
- YAML to JSON
- CSV to JSON
- XML to JSON
- JSON to TOML
- TOML to JSON
- JSON Lines / NDJSON
- JSON5 / JSONC to JSON
- JSON to SQL
- JSON to Markdown table
- JSON to HTML table
- OpenAPI to TypeScript
- GraphQL to TypeScript
- Filter JSON fields
- JSON pipeline
- JSON Formatter
- JSON Validator
- JSON Viewer
- JSON Repair
- JSON Diff
- jq Playground
Runs entirely in your browser. Nothing you paste is uploaded. Made by Saurabh Pagrut · About · Privacy policy
Last updated · Version 6.1 · Changelog
Saurabh Pagrut on GitHub · LinkedIn · X · YouTube · Instagram