DataSwitch Pro Private, in-browser data converter

Excel to JSON Converter

Turn any sheet of an .xlsx workbook into a clean JSON array — right in your browser, with nothing uploaded.

Copied to clipboard!
Rows
0
Columns
0
Delimiter
—
Input Size
0 B
Output Size
0 B
Speed
0 ms

How to convert Excel to JSON

Updated · 3 min read

Spreadsheets are where business data lives, but web apps, APIs and scripts expect JSON. This converter reads an Excel workbook, uses the first row of the sheet as property names and turns every following row into a JSON object. Because the file is opened by JavaScript on your own device, you can convert price lists, customer exports or HR sheets without sending them to anyone.

  1. Click Upload or drag an .xlsx file onto the input box.
  2. If the workbook has several sheets, choose one from the sheet menu above the preview.
  3. Make sure the first row of the sheet contains your column names — they become the JSON keys.
  4. Pick an indentation under Options, then copy the JSON or download it as a file.

Example

Excel input

skuproductpricein_stocklaunched
00412Desk lamp24.9TRUE2025-03-14
00988Monitor arm59FALSE2026-01-02

JSON output

[
  {
    "sku": "00412",
    "product": "Desk lamp",
    "price": 24.9,
    "in_stock": true,
    "launched": "2025-03-14"
  },
  {
    "sku": "00988",
    "product": "Monitor arm",
    "price": 59,
    "in_stock": false,
    "launched": "2026-01-02"
  }
]

The SKU keeps its leading zeros because Excel stores it as text, prices stay numbers, the TRUE/FALSE cells become JSON booleans, and dates are written in ISO 8601 format (YYYY-MM-DD), which every programming language can parse.

Your data stays on your device. The conversion runs in JavaScript inside this tab — files and pasted text are never uploaded to DataSwitch Pro.

How Excel cells become JSON values

Workbooks with several sheets

When a workbook contains more than one sheet, a small menu appears above the preview showing every sheet with its row count. Each sheet is converted separately — switch sheets and the JSON updates instantly. To combine sheets, convert each one and merge the arrays in your code, or copy the rows into one sheet first.

Supported files and a quick alternative

The converter reads .xlsx workbooks created by Excel 2007 or later, as well as files exported as .xlsx from Google Sheets, LibreOffice Calc and Apple Numbers. Older .xls and .ods files need to be opened and saved as Excel Workbook (.xlsx) first.

For a quick conversion you do not even need the file: select the cells in Excel, press Ctrl+C, and paste them into the input box. Excel copies cells as tab-separated text, which the converter detects automatically.

Why the conversion happens in your browser

Spreadsheets often contain salaries, customer addresses or unreleased prices. Online converters that upload your file keep a copy on a server you do not control. Here the workbook is unzipped and read locally by JavaScript; once the page has loaded you could even disconnect from the internet and it would still work.

Convert Excel to JSON in code

For one-off files the tool above is quickest. To automate the same task in a script or pipeline, these snippets are a good starting point.

Python (pandas)

import pandas as pd  # pip install pandas openpyxl

df = pd.read_excel("data.xlsx", sheet_name="Sheet1", dtype={"sku": str})
df.to_json("data.json", orient="records", indent=2,
           force_ascii=False, date_format="iso")

Node.js (read-excel-file)

// npm install read-excel-file
import readXlsxFile from "read-excel-file/node";
import { writeFileSync } from "node:fs";

const sheets = await readXlsxFile("data.xlsx");   // [{ sheet, data }]
const [header, ...rows] = sheets[0].data;
const json = rows.map(r => Object.fromEntries(header.map((h, i) => [h, r[i]])));
writeFileSync("data.json", JSON.stringify(json, null, 2));

Frequently asked questions

Do I need Microsoft Excel installed?

No. The file is read directly by the converter in your browser, so it works on Windows, macOS, Linux, Chromebooks and phones.

Can I convert just one sheet of a workbook?

Yes. When a workbook has several sheets, choose the one you want from the sheet menu; only that sheet is converted.

Why do some of my dates appear as numbers?

Excel stores dates as serial numbers and only displays them as dates through cell formatting. If a column is formatted as General, the raw number is exported. Format the column as a Date in Excel and convert again.

Is there a row limit?

There is no server limit because nothing is uploaded. Workbooks with tens of thousands of rows convert in a few seconds; the practical limit is your device's memory.

Does it support .xls or .ods files?

Not directly. Open the file in Excel, LibreOffice or Google Sheets and save or download it as .xlsx, then convert it here.

Related converters