filetity
LocalThe file is read on this device and never uploaded. Nothing is written back over your original.

XLSX -> JSON · Local tool

Excel to JSON

Turn an Excel sheet into JSON records, one per row.

Last updated

How do I convert an Excel file to JSON?

Drop the .xlsx onto filetity's converter and each sheet is shown as a table, ready to download as JSON records keyed by the first row. The workbook is unzipped and read in the browser tab, so a spreadsheet full of real records is never uploaded. Cell types come from the file's own declarations rather than from guessing at the text, which is the difference that matters: a number stored as text stays a string, so a postcode written as 007123 does not come back as 7123. Dates are converted using the format the file itself attaches, since in Excel a date is only a date because a format says so. Formulas contribute their cached result, which is the value you see in the sheet. Older binary .xls files are a different format and need re-saving as .xlsx first.

  1. 01 / Your device

    the file stays here

  2. 02 / Browser memory

    the work runs locally

  3. 03 / Back to you

    saved on this device

When you would use this

Situations, not settings.

A spreadsheet that has to become an API payload or a fixture
One JSON object per row, keyed by the header. Cell types come from the file, so a postcode stored as text does not arrive as a number.
Data somebody maintains in Excel and your code has to read
Let them keep the spreadsheet and convert at the boundary, rather than asking a finance team to learn CSV export settings.
Checking what is really in a workbook
Every sheet is listed and shown as a table before you download anything, including the ones nobody remembered were in there.

How it works / no cloud

A conversion engine, not an upload form.

The workbook is unzipped in the page and its XML parts are read directly, including the shared string table Excel uses so it does not repeat text. Cell types come from the file's own type attribute rather than from guessing at the text, so a number stored as text stays a string and a date declared by its format is converted using the file's own epoch.

  • Offline ready
  • Installable app
  • No file limit queue

Straight answers

No accordion. Nothing hidden.

Is it free?
Yes, with no watermark and no page limit.
Does it need an account?
No. There is no account system.
Is my file processed on my device?
Yes. The file is read by your browser and never uploaded. There is no server to send it to.
What formats are supported?
Excel .xlsx workbooks in, including multi sheet ones. JSON out, an array of objects keyed by the first row.
What are the limits?
The whole workbook is held in memory. Older .xls files are a different, binary format and are not read; open one in a spreadsheet and save it as .xlsx first.
Does it work on mobile?
Yes, on any modern mobile browser. Large files are limited by the memory the phone gives the browser.
Does it work offline?
Yes, once the page has loaded. The tool keeps working with no network connection.
Why does a number in my sheet come out as a string?
Because the file says it is text. Excel records a type for every cell, and a value entered with a leading zero or into a column formatted as text is stored as a string. Reading that back as a number would quietly discard what the person who made the sheet deliberately preserved.
What happens to dates?
Excel stores a date as a number of days since the end of 1899 with a display format attached, so a date is only a date because the format says so. Those cells are converted to ISO text. Values in the first sixty serials fall inside Excel's deliberate 1900 leap year bug and are handed back as numbers rather than guessed at.
Can it read a workbook with several sheets?
Yes, and every sheet is listed so you can switch between them. Each is converted separately, because a JSON document holding several unrelated tables is rarely what anyone wants and merging them would need a rule nobody agreed to.
What about formulas?
The cached result is used, which is the value Excel last calculated and what you see in the sheet. The formula itself is dropped. A cell whose formula has never been calculated has no cached value and comes back empty, which is accurate rather than a failure.
Does this work on an old .xls file?
No. The old .xls is a binary format from a different era and shares almost nothing with .xlsx, which is a zip of XML. Open the file in Excel, LibreOffice or Numbers and save it as .xlsx, then convert.

Keep working locally

3 available · more coming