All processing happens in your browser. Your workbook is never uploaded to any server.

Click to select or drag & drop an .xlsx or .xls file

Load a workbook to see the JSON.

How this JSON was built

All conversion runs in your browser. Your data is never uploaded to any server.

Excel to JSON

This free tool converts Excel to JSON entirely in your browser. Drop an .xlsx or .xls workbook in, choose the worksheet and the header row, and get a JSON array out — the reverse of the JSON to Excel converter on this site. Nothing is uploaded, there is no sign-up, and the workbook is parsed with the browser's own file reader.

Converting a spreadsheet to JSON looks like the easy direction, and that is exactly why it goes wrong quietly. A workbook has several worksheets but a JSON array is one table; a workbook knows that 007 is text and 2026-03-04 is a date, but JSON has to be told; a header row can have a blank cell, or two columns both named name. This page does not hide those choices behind a black box — it writes down every decision it made, so you can see why a value came out as a number, a string, or null.

How to use this Excel to JSON converter

What this tool supports

Worksheets

A JSON array is one table, so one worksheet is converted at a time by default. When the workbook has more than one sheet, the picker lists every sheet with its row count and the report names the sheet being read — the first sheet is only used because you have not picked another one yet, and it says so. Choose All sheets to get a JSON object keyed by sheet name instead.

Header row and keys

With Header row on Auto, the first non-empty row becomes the object keys and every row below it becomes one object. A blank header cell is named column_3 rather than dropped, so no column disappears silently. If two headers are the same, the second becomes name_2 — JSON objects cannot hold two identical keys, and quietly overwriting one column would lose data. Set the header row to None when the sheet has no header: keys are generated as column_1, column_2… and the first row is kept as data.

Data types

With Detect types on (the default), the tool reads each cell the way the workbook stored it:

Set Data types to Keep everything as text to get every value as the string the workbook displayed, including dates in their own format. That is the right choice when a downstream system wants strings and you would rather not have it re-guess types.

What the tool refuses to guess

A text cell that happens to read "30" stays the string "30" — the tool does not re-type text cells into numbers or booleans, because a product code of 0012 or a name of True would be corrupted by that guess. The report lists what each column actually held, so if a column you expected to be numeric comes out as text, you can see that the cells were text in the workbook, not that the converter failed.

Formulas, merged cells and everything JSON cannot hold

Formula cells are exported as their last saved result — the value Excel cached in the file; this page does not recalculate a workbook. Only the top-left cell of a merged range holds a value, so the rest of the range comes out blank, and the report counts the merged ranges it found. Cell colours, comments, images and charts are dropped, because JSON is data and has nowhere to put them.

Privacy

The file is read with the browser's own file reader and converted in the page. There is no upload endpoint, no account, and no stored history. You can disconnect from the internet after the page loads and it will still work.

Limits

FAQ

Is this Excel to JSON converter free?

Yes. Free, no login, no usage cap, and everything runs in your browser. For the other direction see the JSON to Excel converter, and for other formats the Excel to CSV, CSV to JSON, XML to JSON and JSON to XML converters, plus JSON to CSV on the home page.

Do I have to upload my Excel file?

No. The workbook is read locally with the browser's file API and converted in the page. Nothing is uploaded, logged or stored, and you can go offline after the page loads.

Can I convert XLSX to JSON, and the older XLS as well?

Both. .xlsx and .xls (Excel 97-2003) are read the same way; .xlsm workbooks are accepted too, with macro code discarded as JSON cannot carry it.

My workbook has several sheets. Which one becomes the JSON?

The one you pick in the Worksheet list — every sheet is listed with its row count, and the report names the sheet being read. Choose All sheets to get a JSON object keyed by sheet name, with each sheet's rows as an array.

Why did my numbers come out as text, or my dates as 2026-03-04T00:00:00.000Z?

Dates are written as ISO-8601 strings because Excel stores a date as a serial number (46085) and a JSON number cannot say that it is a date. Numbers that the workbook displays with a leading zero — 007 — stay text so the zero survives. If a whole column you expected to be numeric came out as text, the cells were stored as text in the workbook; switch Data types to Keep everything as text if you want a consistent all-string output instead.

What happens to blank cells and blank rows?

Blank cells become null by default; choose an empty string or omit the key in the Blank cells list. Blank rows — the visual separators people leave between blocks — are skipped rather than turned into empty objects, and the report tells you how many were skipped.

What about merged cells?

Only the top-left cell of a merged range holds a value, so the rest of the range reads as blank. A header row with merged cells will therefore have gaps; the report counts the merged ranges it found so the gaps are not a surprise.

What happens to formulas?

The last saved result is exported, which is the value stored in the workbook. Nothing is recalculated here, so make sure the file was saved after its last recalculation in Excel.

Can I convert JSON back to Excel?

Yes — the JSON to Excel converter is the reverse of this page. For a comma-separated file instead of a workbook, use the Excel to CSV converter.

Is there a file size limit?

No imposed limit — conversion runs in your browser's memory, so large workbooks depend on your device. The row ceilings you may hit belong to the .xlsx and .xls formats themselves.