XLS is the binary workbook format of Excel 97 to Excel 2003, known internally as BIFF8. Excel 2007 replaced it with XLSX, and the jump was not only about the file: the grid grew from 65,536 rows by 256 columns to 1,048,576 rows by 16,384 columns. Converting XLS to XLSX is mostly safe, because the newer format can hold everything the older one could. The few exceptions are listed below.
Why convert XLS to XLSX
- More room: an .xls sheet ends at row 65,536 and column IV. Data exports and logs hit that limit quickly.
- Compatibility Mode: Excel opens an .xls in Compatibility Mode, shown in square brackets in the title bar, and newer features stay off. The old format also allows only 4,000 unique cell formats against 64,000 in current Excel.
- Co-authoring: several people editing the same workbook in Microsoft 365, OneDrive or SharePoint at once works with .xlsx, not with the Excel 97–2003 format.
- Scripts and imports: many tools read only XLSX. The Python library openpyxl, used in countless import scripts, handles xlsx, xlsm, xltx and xltm, but not .xls.
- Safety: an .xlsx cannot contain macros (those need .xlsm), so mail filters and colleagues trust it more.
What our converter keeps and what it drops
We open the workbook on our servers and save it as XLSX in the Office Open XML format. Our converter reads BIFF8 files from Excel 97–2003 and also older Excel 5.0 and Excel 95 workbooks.
- Kept: all sheets in their order, values and formulas, number and date formats, fonts, borders and fills, merged cells, column widths and row heights, frozen panes, AutoFilter, conditional formatting, data validation lists, named ranges, comments, hyperlinks, images and sheet protection.
- Charts are carried over as editable charts. Colours, label positions or fonts can differ slightly, so look at each chart before sending the file on.
- Dropped: VBA macros, because XLSX has no place for them. Buttons and ActiveX controls that run those macros lose their purpose as well. If you need the macros, open the file in Excel and save it as .xlsm.
- Pivot tables usually survive, but their definitions are rewritten during conversion. Refresh each pivot table in Excel after conversion.
Common problems with XLS files
“The file format and extension of 'report.xls' don't match”
Banks, accounting and ERP systems often export HTML or the XML Spreadsheet 2003 format and only name the file .xls. Excel then shows this warning on every opening. Our converter reads the content, not the extension, so such a file usually converts into a genuine XLSX and the warning disappears.
Formulas show #REF! or #NAME?
Formulas that point to other workbooks keep their link, but the path is the one from the original computer. Use Edit Links (Workbook Links in Microsoft 365) on the Data tab in Excel to point them to the right file. #NAME? usually means a function from an add-in that is not installed.
Macros are gone after converting XLS to XLSX
That is by design, see above. Keep the original .xls as a backup or save it as .xlsm in Excel.
Password-protected workbook
A workbook that needs a password to open cannot be converted. Remove the password in Excel first (File, Info, Protect Workbook, Encrypt with Password, clear the field). Sheet protection without an opening password is no obstacle.
XLS and XLSX compared
| XLS (BIFF8) | XLSX | |
|---|---|---|
| Default in | Excel 97 to Excel 2003 | Excel 2007 and later |
| Rows × columns per sheet | 65,536 × 256 | 1,048,576 × 16,384 |
| Unique cell formats | 4,000 | 64,000 |
| Structure | Binary, OLE compound file | ZIP archive with XML parts |
| Macros | Can be inside | Never (macro variant is .xlsm) |
Sources for the limits: Microsoft’s article Use Excel with earlier versions of Excel and the Library of Congress description of the XLS format, which also lists the BIFF versions back to Excel 2.0 from 1987.
Do it in Excel, or here?
With Excel installed, one file takes a minute: open it, then File, Info, Compatibility Mode, Convert. Excel replaces the .xls with an .xlsx. If you want to keep the old file, use Save As and choose Excel Workbook (.xlsx) instead. Without Excel, the free LibreOffice Calc opens .xls files too and saves them as .xlsx via File → Save As.
This converter is useful when Excel is not at hand (Linux, a phone, a borrowed computer) or when an archive of old workbooks needs upgrading: upload up to 10 files at once, each up to 100 MB, and download the results as one ZIP. Uploaded files are deleted right after conversion, results after 14 days.
Need a printable version instead? XLSX to PDF turns the converted workbook into a PDF. Word documents of the same age can be upgraded with DOC to DOCX. More about the source format: XLS.