Skip to content
ToolsFort home

Excel to JSON Converter

Convert an Excel sheet to JSON: an array of objects keyed by the header row, or an array of rows. Numbers and dates keep their types.

Updated

This Excel to JSON converter turns a spreadsheet into data your code can use. Each row becomes a JSON object whose keys come from the header row, with numbers kept as numbers and dates written in ISO format.

How to use the Excel to JSON Converter

  1. 1 Drop your Excel file on the box or click to choose it.
  2. 2 Pick the sheet, then choose objects or rows and how values are written.
  3. 3 Copy the JSON or download it as a .json file.

Worked examples

Header row as keys

Input: Name | Age / Ada | 36

Result: [{"Name": "Ada", "Age": 36}]

The default shape for APIs and JavaScript.

Rows only

Input: Shape: array of arrays

Result: [["Name", "Age"], ["Ada", 36]]

Useful for charts and spreadsheets in code.

How to convert Excel to JSON

JSON is the format web APIs, JavaScript and most configuration files use. Turning a spreadsheet into JSON lets you seed a database, feed a chart or mock an API response straight from data someone maintains in Excel.

The converter reads the workbook with SheetJS and turns the chosen sheet into JSON in one of two shapes:

  • Array of objects: the first row provides the keys and every other row becomes an object, such as {"Name": "Ada", "Age": 36}. Empty header cells get a name like column_3, and repeated headers get _2, _3 so no value is lost.
  • Array of arrays: each row becomes a list of values, header row included.

Values: typed or as displayed

"Numbers as numbers" keeps the real types: numbers become JSON numbers, dates become ISO text exactly as entered, such as 2026-03-01 or 2026-03-01T14:30:00, empty cells become null and TRUE/FALSE become booleans. "As Excel shows them" writes every value as text, exactly as formatted on screen, which is safer when the formatting itself matters (currencies, percentages, leading zeros).

Readable or compact

Indented JSON is easy to read and review; untick it to get the smallest output for storage or an API payload.

Private by design

The file is read and converted by your own browser. Nothing is uploaded to a server, so it is safe to use with customer lists, finance exports and other internal data. Large files simply take a moment longer on a slower computer.

Frequently asked questions

How are the JSON keys chosen?

From the first row of the sheet. Empty header cells are named column_1, column_2 and so on, and duplicate names get a number suffix.

How are dates written?

With "Numbers as numbers", as ISO 8601 text (for example 2026-03-01T00:00:00.000Z). With "As Excel shows them", exactly as formatted in the sheet.

Can I convert every sheet at once?

Convert them one at a time: pick each sheet in the Sheet list and copy or download its JSON.

Is the file uploaded?

No. Everything happens in your browser.

Esc