Modern Niche World MNW

Excel to JSON

Open a workbook, pick a sheet, and get it as JSON: one object per row, keyed by the header row, or one array per row. Copy it or download it.

Drop a spreadsheet here, or

XLSX, XLSM, XLS, XLSB or ODS · one workbook, up to 25 MB · no password-protected files

Choose a workbook, or drop it here, to see its sheets.

Your workbook is opened on this device. Nothing is uploaded, sent or saved.

Turn a spreadsheet into JSON

Web apps, APIs, test fixtures and scripts usually want data as JSON, while people keep it in spreadsheets. This tool opens an Excel or OpenDocument workbook and writes the sheet you choose as a JSON array, ready to paste into code or save as a file.

How to use it

  1. Choose or drop a workbook: XLSX, XLSM, XLS, XLSB or ODS, up to 25 MB.
  2. Pick the sheet. The list shows each sheet’s rows and columns.
  3. Choose the shape, dates, empty cells and layout, then press Convert to JSON.
  4. Copy the JSON, or download it as a .json file.

The options

  • Shape: objects use the first row as keys, one object per row below it; arrays keep every row as a list of values.
  • Dates: ISO 8601 text, such as 2026-03-15, or 2026-03-15T09:30:00 when the cell holds a time; or the text the sheet shows, such as 3/15/26.
  • Empty cells: null keeps every key in every object; left out drops the keys of empty cells, which makes the file smaller. In arrays, only empty cells at the end of a row are dropped.
  • Layout: indented to read, or minified onto one line to save space; both hold exactly the same data.

How values are written

Numbers stay numbers, to the 15 significant digits Excel works to, so a cell showing 25% gives 0.25. TRUE and FALSE become true and false, and error cells such as #N/A become text. Formulas become their last calculated values, saved in the file; nothing is recalculated. A merged area’s value sits in its first cell. Rows with nothing in them are left out, and keys keep the sheet’s column order, even a header such as 2026, which a JavaScript object would move to the front.

Good to know

  • Password-protected workbooks can’t be opened: remove the password in the app that made the file first.
  • One sheet at a time: pick another and the JSON updates. Hidden rows, columns and sheets are included.
  • Macros in an XLSM file are never run.
  • Nothing is uploaded: the workbook is read on your device and cleared when you close the page.
  • Already have CSV text? CSV to JSON converts it; this page reads the workbook itself, so there’s no need to save a CSV first. To make a CSV file from the workbook instead, use Excel to CSV.

Frequently asked questions

What does the JSON look like?
With the first row as keys, each row below it becomes an object, such as {"Name": "Jordan Lee", "Visits": 12}. With arrays, each row becomes an array of its values, such as ["Jordan Lee", 12], the first row included, so nothing depends on a header.
What happens to empty or repeated headers?
An empty header cell is named for its column, as in "Column 3", and a repeated one gets a number: "Name", then "Name (2)". The tool lists every key it had to make up, so you can rename the headers in the sheet if you’d rather.
How are dates written?
As ISO 8601 text by default, such as "2026-03-15" or "2026-03-15T09:30:00", which programs read without guessing the order of day and month. Choose “As shown” to get the text the sheet displays instead, such as "3/15/26".
Is my workbook uploaded?
No. It’s opened and converted in this page, on your device, and nothing is uploaded, sent or saved. Closing or reloading the page clears it.