GALAXY OF TOOLS

FILES SECTOR

Excel to JSON Converter

Turn Excel sheets into JSON — objects from the header row, typed numbers and dates, one file per sheet.

Drop Excel workbooks here or click to choose XLSX, XLSM, XLSB, XLS, ODS, FODS or Numbers · several at once · converted on your device
A row number for every sheet; 0 = none (keys A, B, C…)

Runs entirely in your browser. Nothing you enter or upload is sent to a server.

Convert Excel to JSON that is ready for code

This Excel to JSON converter reads .xlsx, .xls, .xlsm, .xlsb, LibreOffice .ods and Apple Numbers workbooks and turns each sheet into JSON. The header row becomes the keys, each following row becomes an object, and numbers, true/false values and dates arrive as proper JSON types instead of the text you would get by copy-pasting.

It is built for the everyday jobs: seeding a database or a mock API from a spreadsheet someone maintains, feeding a product catalogue or price list into a website, turning survey or attendance sheets into data for a script, or moving translations kept in Excel into an app. You see the JSON update live as you change the options, and you can copy one sheet or download every sheet at once.

The workbook is read in your browser by the open-source SheetJS library (and this page’s own reader for OpenDocument files), so nothing is uploaded and private data stays on your device.

How to convert Excel to JSON

  1. Drop one or more workbooks on the upload area. Click a file in the list to see its sheets, and tick the ones you want under Sheets to convert.
  2. Choose the JSON shape: an array of objects, an array of rows, or one object keyed by a column such as an ID (then pick the Key column).
  3. Check the bold row in the preview — it is the header whose cells become the keys. It is found on each sheet automatically, skipping a title above the table; type a Header row number to override it.
  4. Set how Values, Dates and Empty cells are written, and the indentation. The JSON preview shows the result for the sheet on screen.
  5. Press Convert to JSON. You get one .json per sheet (several arrive as a ZIP) or one file per workbook with sheet names as keys; Copy this sheet’s JSON puts it on the clipboard.

Excel to JSON Converter features

Three shapes

[{"Name":"Asha"}] for most APIs, [["Name"],["Asha"]] for compact data and charting libraries, or {"C001":{…}} for lookups by ID.

Types preserved

Numbers stay numbers, rounded to Excel’s 15 significant digits so 0.1 + 0.2 comes out as 0.3; TRUE/FALSE become booleans; error cells such as #DIV/0! become their text.

Dates you can parse

Date cells become ISO 8601 text — 2026-01-15, or 2025-12-31T13:45:00 when there’s a time — or the text shown in the sheet, or Excel serial numbers.

Real spreadsheet quirks handled

Titles above the table are skipped when the header row is found, blank header cells take the column letter, repeated names get _2, _3, merged cells can be filled, and hidden rows, columns and sheets can be left out.

Nested objects

Tick “Nest dot.keys” and columns named address.city or tags.0 are rebuilt into nested objects and arrays — the reverse of JSON to Excel.

Example

A sheet with the header SKU, Price, In stock, Launched and the row BK-101, 499, TRUE, 01/03/2024 becomes:

SettingResult
Array of objects (default)[{"SKU":"BK-101","Price":499,"In stock":true,"Launched":"2024-03-01"}]
Text exactly as shown[{"SKU":"BK-101","Price":"499","In stock":"TRUE","Launched":"01/03/2024"}]
Array of rows[["SKU","Price","In stock","Launched"],["BK-101",499,true,"2024-03-01"]]
Keyed by SKU{"BK-101":{"Price":499,"In stock":true,"Launched":"2024-03-01"}}

Good to know

  • Formulas are exported as the value Excel last calculated and saved; nothing is recalculated.
  • Rich formatting — colours, fonts, comments, charts — isn’t part of JSON and is ignored.
  • Leading zeros survive when the cell holds text (as Excel does for codes like 007). If the workbook stored 007 as the number 7, choose “Text exactly as shown” to get the displayed form.
  • For CSV input, use CSV to JSON, which also detects delimiters; for tidying or validating the output, use the JSON Formatter.

Excel to JSON Converter FAQ

How do I convert an Excel sheet to JSON?

Drop the .xlsx file here, make sure the sheet is ticked, keep “Array of objects”, and press Convert to JSON. Each row becomes an object whose keys come from the header row.

Can I convert all sheets of a workbook at once?

Yes. Every ticked sheet is converted. Choose “One JSON per sheet” for separate files (downloaded as a ZIP) or “One JSON per workbook” for a single file like {"Sheet1":[…],"Sheet2":[…]}.

Why are my dates numbers in the JSON?

Excel stores dates as serial numbers (46037 is 15 January 2026). Keep Dates on “ISO 8601” to get 2026-01-15, or choose “As shown in the sheet” for the displayed text.

My table has a title above the header — what do I do?

Usually nothing: the header is taken from the first row that is about as full as the table and holds only text, so a one-cell title is skipped. If the bold row in the preview is wrong, type the real header’s row number, for example 3, in “Header row”.

How do I get nested JSON from Excel?

Name your columns with dots, such as customer.name and customer.city, and tick “Nest dot.keys into objects”. Numbered parts like tags.0 and tags.1 become arrays.

Is my workbook uploaded?

No. It is read and converted entirely in your browser; nothing is sent to a server.

You might also need