Excel to JSON

How to use

Converts spreadsheet rows into JSON objects named by the header row. Drop the XLSX, choose sheets and record shape, and download the JSON.

File ConvertersLocal only

Step 1 of 4: Upload

  1. 1
  2. 2
  3. 3
  4. 4

Step 1 of 4 · Upload

When to use this
  • Turning a content or translation sheet into JSON for a website
  • Creating mock API data from a spreadsheet a colleague maintains
  • Loading a product catalogue from Excel into a script
  • Converting a configuration table into JSON for an app

Free and private. Everything runs on your own device, with no account and no uploads.

Spreadsheets are where non-developers keep data; JSON is where code wants it. This converter turns each row of a worksheet into a JSON object keyed by the header row, keeping numbers as numbers, TRUE/FALSE as booleans, empty cells as null and dates as ISO strings. It is the fastest way to turn a content sheet, a product list or a config table maintained in Excel into data a web app, API mock or script can consume.

The first non-empty row becomes the keys. Blank header cells are named column1, column2 and so on so no data is dropped.

Yes. Numeric cells become JSON numbers, text stays as strings, including numbers Excel stored as text, such as ZIP codes with leading zeros.

Cells formatted as dates become ISO strings such as "2024-03-15", or "2024-03-15 09:30:00" with a time, which JavaScript and every JSON consumer can parse.

Completely empty rows are skipped. Empty cells inside a row become null.

Rows map to flat objects. If your headers use dots (address.city), you can nest them afterwards in code, or keep the flat form most APIs accept.

How it works
  1. 1

    Add an XLSX file

    Drop a workbook whose first row contains column names.

  2. 2

    Choose sheets

    One sheet gives an array of records; all sheets give an object keyed by sheet name.

  3. 3

    Choose the record shape

    Objects keyed by the header row, or plain arrays of cell values.

  4. 4

    Convert and download

    The JSON is pretty-printed with two-space indentation.

Pro tips
  • ·Keep header names short and without spaces if they will become code property names
  • ·Use "All sheets" for lookup tables spread across tabs: each tab becomes one key
  • ·Validate the output with the JSON Formatter before using it in production