XLSX to XLS Converter
Convert modern Excel (.xlsx) files to legacy Excel 97-2003 (.xls) format for compatibility with older systems.
Drop your files here or click to upload
Supports .xlsx · up to 50MB · or paste a file from your clipboard
How to Convert XLSX to XLS
- Check the sheet size first - .xls holds 65,536 rows and 256 columns per sheet. Anything larger loses data, badly; see below.
- Drop in the .xlsx - or several at once to convert them as a batch and download a ZIP.
- Read the result panel - it reports the source workbook's sheet count and total rows, which is what you compare against the limits.
- Download the .xls - a real Excel 97-2003 binary workbook, not a renamed .xlsx.
This conversion is a downgrade, and it is lossy
The output is a genuine BIFF8 binary workbook inside a compound file - the format Excel 97 through 2003 wrote - rebuilt from your .xlsx rather than renamed. Rebuilding into a twenty-five-year-old format means leaving things behind, and it is worth knowing exactly which before you replace the original.
| Carried into the .xls | Lost |
|---|---|
| Cell values - text, numbers, booleans, error values | Formulas: each becomes the value it last calculated to |
| All sheets, with their names and order | Number formats: dates, currency and percentages arrive as plain numbers |
| Merged cell ranges | Fonts, fills, borders, alignment, conditional formatting |
| Hyperlinks | Column widths, row heights, frozen panes |
| Text up to 255 characters per cell | Charts, images, pivot tables, defined names, macros |
Keep the .xlsx. The converted file is a copy for whatever system demands the old format, not a replacement for the workbook you actually work in.
The size limits, and what happens when you cross them
A .xls sheet holds at most 65,536 rows and 256 columns (A to IV). Those are format limits, not a policy of this page - no writer can put more into a valid .xls.
What is worth knowing is that the overflow is not handled tidily here. A sheet past either ceiling is not clipped to a clean first 65,536 rows, and there is no warning: in our tests an oversized sheet came back with most of its rows missing. Compare the row count in the result panel against 65,536 yourself, and use Excel Splitter or Split Excel by Column on anything oversized before converting.
Edge cases
- Long text is cut at 255 characters. Notes, descriptions and pasted paragraphs are truncated without warning.
- Dates need reformatting afterwards. The values survive as serial numbers; apply a Date format to the column in Excel to see them again.
- Only .xlsx is accepted. Not .xlsm, not .xlsb, not .ods. Convert those to .xlsx first - see XLSB to XLSX and ODS to Excel.
- Password-protected workbooks cannot be read, so they fail with a conversion error rather than producing a half-file.
- Batch mode is one file in, one file out. Sheets are never merged across workbooks.
- Everything runs in the browser tab, which is what keeps the file private and also what caps how large a workbook is practical.
When to use a different tool
- The receiving system only needs the data, not a workbook: Excel to CSV keeps the values without the row ceiling or the 255-character cut.
- You are going the other way, modernising an old file: XLS to XLSX.
- You need an open-standard format for LibreOffice or a public-sector submission: Excel to ODS.
- The file is only too big rather than too new: Compress Excel.
- You just want someone to be able to read it: Excel to PDF.
Frequently Asked Questions
Data is lost, and not tidily. The .xls format holds 65,536 rows and 256 columns per sheet, and the writer does not clip an oversized sheet to a clean first 65,536 rows or warn you - in our tests an oversized sheet came back with most of its rows missing. The result panel above reports the source workbook's total row count; if any sheet is over either limit, split it with the Excel Splitter first and convert the pieces.
No. Every formula cell is written as the value it last calculated to. Open the converted file and =SUM(B2:B9) is the number, not the formula, so it will not recalculate when the inputs change. This is the single biggest reason to keep the original .xlsx alongside the converted copy rather than replacing it.
That is what the text cells written here hold. A cell containing a long note, a pasted paragraph or a concatenated description is truncated to its first 255 characters in the .xls. If a column holds long text, this conversion is not a safe home for it.
None of them cross. Every cell in the output carries the General format, so a date cell shows its serial number (45000 rather than 15/03/2023), currency loses its symbol and percentages become their underlying fractions. Fonts, fills, borders, conditional formatting, column widths, charts, images, pivot tables and defined names are not written either. What does cross: cell values, booleans, error values, sheet names and order, merged cell ranges and hyperlinks.
Usually not. Every version of Excel since 2007 opens .xlsx natively, as do Google Sheets, LibreOffice and Numbers, and Microsoft has spent years discouraging the legacy binary - some corporate policies now block it outright as a macro vector. Convert when a specific system rejects .xlsx: an old line-of-business application, a bank or government upload form that still validates on extension, or an ancient VBA integration. If the receiving system only needs the numbers, Excel to CSV is a better fit than a lossy binary downgrade.
The upload accepts .xlsx only. Even if it did not, the macros would not travel: the converter writes cell data, not the VBA project, so a macro-enabled workbook would arrive stripped of exactly the part that made it macro-enabled.