Excel to JSON Converter.

Drop an .xlsx file and get clean JSON — multi-sheet, with proper dates and typed numbers. Choose your output shape and copy or download. 100% private: your file never leaves the browser.

No signup · No uploads · No file-size cap

JSON output

Convert Excel to JSON online — free and private

An Excel to JSON converter turns spreadsheet rows and columns into structured JSON that APIs, databases, and JavaScript can use directly. Drop an .xlsx file above and the tool reads your header row, maps each data row to an object, and shows the JSON instantly. Unlike server-based converters, this one reads the workbook entirely in your browser — so you can convert XLSX to JSON without uploading confidential data.

How to convert Excel to JSON in three steps

  1. Drop your file onto the upload area, or click to browse for an .xlsx, .xlsm, or .csv file.
  2. Choose your options — which worksheet to convert, the output shape, and whether the first row is a header.
  3. Export — copy the JSON or download it as data.json.

Multi-sheet, real dates, and typed numbers

A workbook is more than one table, so this converter lists every worksheet and lets you pick which to convert. It reads the file's style table to turn date-formatted cells into readable ISO dates like 2024-01-15 instead of leaving them as Excel serial numbers — the detail most converters get wrong. Numbers stay numbers and text stays text, so IDs, ZIP codes, and product codes survive intact.

Pick the output shape your code needs

Choose array of objects for the row-keyed shape most APIs expect, 2D array for the raw grid, or keyed by column for a column-oriented object that maps straight onto a pandas DataFrame. CSV files are accepted too, so the same tool covers both spreadsheet formats.

The Excel date problem, explained

This is the one thing that breaks nearly every Excel-to-JSON conversion. Excel does not store dates as dates — it stores them as numbers, counting days since 1 January 1900, and only displays them as dates through cell formatting. So a cell showing 15/01/2024 actually contains 45306.

A converter that reads raw cell values hands you 45306 and you are left reverse-engineering a date system with a famous off-by-one bug (Excel believes 1900 was a leap year — it was not). This tool reads the workbook's style table to identify which cells are date-formatted and converts them properly:

{ "name": "Ada", "joined": 45306 }          ← what naive converters give you
{ "name": "Ada", "joined": "2024-01-15" }   ← what you actually wanted

Convert Excel to JSON in Python or JavaScript

Python (pandas)sheet_name=None reads every worksheet:

import pandas as pd

df = pd.read_excel("data.xlsx", sheet_name="Sheet1")
df.to_json("data.json", orient="records", indent=2, date_format="iso")

# every sheet at once → dict of DataFrames
sheets = pd.read_excel("data.xlsx", sheet_name=None)

Pass dtype=str if you need to protect leading zeros in IDs and ZIP codes, which pandas will otherwise strip.

JavaScript / Node.js (SheetJS):

import * as XLSX from "xlsx";

const book = XLSX.readFile("data.xlsx", { cellDates: true });   // cellDates!
const sheet = book.Sheets[book.SheetNames[0]];
const rows = XLSX.utils.sheet_to_json(sheet);

Without cellDates: true you get the serial numbers back — the exact problem described above.

Common Excel to JSON problems (and fixes)

“My dates are numbers.” The serial-number issue above. This tool handles it; if you are scripting, set cellDates or date_format="iso".

“My ZIP codes lost their leading zeros.” Something inferred 02134 as the number 2134. Keep those columns as text.

“My .xls file will not load.” The old binary .xls format is not supported. Open it in Excel and re-save as .xlsx.

“I got the wrong sheet.” Workbooks default to the first worksheet. Use the sheet selector to pick the one you want.

“My formulas came through as values.” That is correct and usually what you want — JSON stores data, not formulas. The computed result is what gets exported.

Why use this Excel to JSON tool?

It is fully client-side, with no file-size cap and no upload — a real advantage over tools that send your workbook to a server. Going the other way? Use the JSON to Excel converter, or work with text formats via CSV to JSON and JSON to CSV. Learn more in our guide on how to convert Excel to JSON.

FAQ

Excel to JSON, answered.

How do I convert Excel to JSON online? +

Drop an .xlsx file onto the converter above (or click to browse). The tool reads the workbook in your browser, uses the first row as keys, and turns each remaining row into a JSON object. Pick a sheet and output shape, then copy or download the JSON. Nothing is uploaded.

Is the conversion really private? +

Yes — unlike server-based converters such as aspose or conversiontools, this tool reads your spreadsheet entirely on your device using the browser's built-in decompression. Your file is never uploaded, stored, or seen by any server, so it is safe for financial and customer data.

Can it read multi-sheet workbooks? +

Yes. Every worksheet is detected and listed in a Sheet dropdown, so you can convert whichever tab you need. Switch sheets and the JSON updates instantly.

What output shapes are available? +

Three. Array of objects gives one object per row keyed by the header (ideal for APIs). 2D array returns the raw grid as an array of arrays. Keyed by column returns a column-oriented object where each header maps to an array of that column's values.

How are dates and numbers handled? +

Numbers come through as real JSON numbers, and date-formatted cells are converted to readable ISO dates (for example 2024-01-15) by reading the workbook's style table — not left as raw Excel serial numbers. Text stays text, so IDs and codes are preserved.

Which file types are supported? +

Modern Excel workbooks (.xlsx and .xlsm) and .csv files. The old binary .xls format is not supported — re-save it as .xlsx in Excel first. There is no file-size cap because everything is processed locally.

Why are my dates showing as 45678? +

That number is an Excel date serial — the count of days since 1900. Excel stores dates as numbers and only shows them as dates through cell formatting, so a naive converter hands you the raw number. This tool reads the workbook's style table to detect date-formatted cells and converts them to readable ISO dates like 2024-01-15.

Can I convert a specific worksheet only? +

Yes. Every worksheet in the workbook is detected and listed, and you choose which one to convert — or convert them all into a single object keyed by sheet name. You do not have to split the workbook up beforehand.

Is it safe to convert a spreadsheet with confidential data? +

Yes, and this is the main reason to use this tool. The workbook is parsed in your browser and never uploaded, so payroll, customer lists, financial models, and other sensitive spreadsheets never leave your device. Most online Excel-to-JSON converters upload the file to a server to read it.

How do I convert Excel to JSON without Python or a script? +

Drop the .xlsx file onto the tool above and press Convert. There is nothing to install and no code to write — you get the JSON immediately, in the output shape you pick. Scripting it with pandas or openpyxl is fine too, but it is a lot of setup for a one-off conversion.