Data & spreadsheet tools

Convert Excel to CSV or JSON

Open an .xlsx workbook, pick a sheet and download it as CSV or JSON. The file is read in your browser, Excel's date serial numbers become real dates, and empty cells keep every column in place.

Drop an .xlsx file hereExcel 2007 and later (.xlsx, .xlsm). The file stays on your device.

Runs entirely in your browser. Nothing you enter here is uploaded.

How to convert an Excel file

  1. Drop an .xlsx file onto the box or press Choose files.
  2. Pick the sheet you want. Each sheet is listed with its number of rows.
  3. Choose CSV or JSON. For CSV, choose the delimiter and keep Add BOM on if the file will be opened in Excel again. For JSON, say whether the first row holds column names; if it does, each row becomes an object.
  4. Check the preview and press Download, or copy the result to the clipboard.

How the workbook is read

An .xlsx file is a ZIP archive of XML files, a format standardised as Office Open XML (ECMA-376). The workbook lists the sheets, each sheet is an XML file of rows and cells, and text is usually stored once in a shared-strings table that cells point to by number. This page opens the archive in the browser, decompresses the parts it needs and reads the cell values. Nothing is sent to a server, which matters for spreadsheets full of customer data, payroll or accounts.

Dates are numbers in disguise

Excel stores a date as the number of days since the end of 1899, and shows it as a date only because the cell has a date format. A converter that ignores formats will write 45000 where the sheet shows 15 March 2023. This tool checks each cell's number format — the built-in date formats and any custom format containing day, month, year or time codes — and writes those cells as ISO dates such as 2023-03-15, adding the time (2023-03-15 18:00) when the format includes one.

Two historical quirks are handled. Excel treats 1900 as a leap year, a bug inherited from Lotus 1-2-3, so serial number 60 is a non-existent 29 February 1900 and later serials are shifted by one day. Workbooks created with the 1904 date system, the old default on Mac, count from 1 January 1904 instead; the tool reads that setting from the workbook.

Other cell types

  • Text from the shared-strings table, including rich text with mixed formatting, which is joined into plain text.
  • Inline strings, booleans (TRUE/FALSE) and error values such as #N/A, which are written as text.
  • Formulas: the value Excel last calculated and saved is used. The formula itself is not evaluated again.
  • Empty cells and missing rows are written as empty fields, so a value in column C stays in column C.

Examples

What the cell holdsExcel showsWritten as
45000 with a date format15/03/20232023-03-15
45000.75 with format yyyy-mm-dd hh:mm2023-03-15 18:002023-03-15 18:00
1234.5 with a #,##0.00 format1,234.501234.5
a formula =D2*2 last calculated as 246924692469
TRUETRUEtrue
serial 45000 in a 1904-system workbook16/03/20272027-03-16

Numbers are written without their display formatting — thousands separators, currency symbols and fixed decimals are presentation, not data. If you need the text exactly as shown, format those cells as text in Excel before converting.

Limits

  • .xlsx only. The older binary .xls format and .xlsb are not supported; save them as .xlsx first. For .csv files, use the CSV ⇄ JSON tool.
  • Password-protected workbooks are encrypted and cannot be read without removing the password in Excel.
  • Merged cells keep their value in the top-left cell only; the other cells of the merge are empty, as in Excel's own CSV export.
  • Formulas are not recalculated. If a workbook was saved without calculated values (some generated files are), formula cells come out empty.
  • Very large sheets of several hundred thousand rows work but take a few seconds and a lot of memory; the preview shows the first 100 rows.

Frequently asked questions

Is my spreadsheet uploaded?

No. The .xlsx file is unzipped and read in your browser; the CSV or JSON is created on your device.

Why do dates show up as numbers in other converters?

Excel stores dates as day counts and only displays them as dates. This tool reads the cell's number format and converts date cells to ISO dates such as 2023-03-15.

Can I convert every sheet at once?

Pick each sheet in turn and download it; CSV holds a single table, so each sheet becomes its own file.

Does it support .xls files?

Not the old Excel 97–2003 format. Open the file in Excel, Numbers or LibreOffice and save it as .xlsx.

Why does the CSV open with garbled characters in Excel?

Keep Add BOM switched on. Without the byte-order mark, Excel may assume a legacy encoding instead of UTF-8.

Sources and further reading

Guides that use this tool

↵ to open · Esc to close