XLS vs XLSX: What's the Difference Between Excel Formats?
By ExcelReady TeamUpdated 6 min read
The short answer
XLS is the old Excel 97-2003 binary format, limited to 65,536 rows and 256 columns per sheet. XLSX is the default since Excel 2007: compressed XML, 1,048,576 rows by 16,384 columns, smaller files and no macros. Use XLSX for almost everything, and save as XLS only when someone must open the file in a very old program.
Key takeaways
- XLS is the binary format of Excel 97-2003; XLSX is the zipped XML format used by default since Excel 2007.
- An XLS sheet stops at row 65,536 and column IV; an XLSX sheet goes to row 1,048,576 and column XFD.
- XLS files can hold macros; XLSX files can't, which makes XLSX the safer type to receive.
- Opening an XLS file in modern Excel turns on Compatibility Mode. Convert it with File > Info > Convert or Save As.
- Save as XLS only for software that can't read XLSX, and read the Compatibility Checker warnings first.
On this page+
XLS vs XLSX is the difference between Excel's old file format and its current one. XLS is the binary format used by Excel 97 to Excel 2003. XLSX has been the default since Excel 2007: it stores the workbook as compressed XML, holds 16 times more rows, and can't contain macros. This guide explains what changes between the two, what you lose when you save as XLS, and how to convert old files safely.
XLS vs XLSX at a glance#
XLSX is the modern default; XLS survives only for compatibility.
| Feature | XLS | XLSX |
|---|---|---|
| Full name in Save As | Excel 97-2003 Workbook | Excel Workbook |
| Default in | Excel 97 to Excel 2003 | Excel 2007 and later, including Microsoft 365 |
| Format inside | Binary file | XML files packed into a ZIP archive |
| Rows per sheet | 65,536 | 1,048,576 |
| Columns per sheet | 256 (last column IV) | 16,384 (last column XFD) |
| VBA macros | Can contain them | Can't contain them (use XLSM) |
| Typical file size | Larger | Smaller, because the XML is compressed |
| Newer features (tables, slicers, sparklines, new functions) | Lost or limited | Kept |
| Opens in modern Excel | Yes, in Compatibility Mode | Yes, normally |
| Published standard | Documented binary format | ECMA-376 and ISO/IEC 29500 (Office Open XML) |
The extension is the part of a file name after the dot. It tells Excel which format to expect. A binary file stores data as raw bytes that only a program built for it can read; XML is structured text, which is why so many other tools can read and write XLSX.
What XLS and XLSX files are#
An XLS file is a single binary file in the format Excel used for about ten years. Every Excel version since 97 can open it, which is its one real strength. But it was designed for the computers of the 1990s, and its limits show it.
An XLSX file is a ZIP archive of XML files: one for each sheet, plus files for styles, shared text and settings. Because it is compressed, the same data usually takes less space. Because the format is a published open standard, most modern spreadsheet apps, databases and programming tools can read it directly.
XLSX can't store VBA macros. That is deliberate: a file that can't hold code is safer to open from an email. If a workbook needs macros, Excel saves it as XLSM instead. The XLSX vs XLSM comparison covers macro files in detail, and CSV vs XLSX explains when plain text is the better choice.
The same sheet in XLS and XLSX#
The quickest way to see the difference is to jump to the edge of a sheet. Open a blank sheet and press Ctrl+Down Arrow (Mac: ⌘+Down Arrow), then Ctrl+Right Arrow (Mac: ⌘+Right Arrow).
| XLS (Compatibility Mode) | XLSX | |
|---|---|---|
| Last row | 65,536 | 1,048,576 |
| Last column | IV | XFD |
| Last cell | IV65536 | XFD1048576 |
| Formula length | 1,024 characters | 8,192 characters |
| Nested function levels | 7 | 64 |
| Arguments per function | 30 | 255 |
| Colour choices | A palette of 56 colours | Millions of colours |
Now picture a 100,000-row sales export with an XLOOKUP summary and a formatted table. Saved as XLSX, everything is kept. Saved as XLS, the Compatibility Checker warns you that:
- rows after 65,536 will be lost, so about a third of the data disappears;
- the table becomes a normal range;
- XLOOKUP isn't available in Excel 97-2003, so the formula would show #NAME? if recalculated there.
If rows, columns and cell addresses are new to you, the lesson on cells, rows and columns explains how Excel names every cell.
When to use XLSX#
Use XLSX by default. It is the right choice when:
- The file is for people with Excel 2007 or later, which today is nearly everyone, on Windows, Mac, the web or mobile.
- You need space: more than 65,536 rows or 256 columns.
- You use modern features such as tables, slicers, conditional formatting with many rules, or functions like XLOOKUP and FILTER. See Excel 365 vs Excel 2021 vs 2019 for which version has which functions.
- The file goes to other software, such as a database import or a reporting tool, that reads Office Open XML.
- You want a safer attachment. An XLSX file can't carry macros.
Excel for the web also works with XLSX; the desktop vs web comparison covers what each app can do.
When to use XLS, and how to convert it#
Use XLS only when a person or system can't open XLSX, such as very old software that only reads Excel 97-2003 files.
When you open an XLS file in current Excel, the title bar shows [Compatibility Mode]. The old limits stay on, so the file keeps working in old versions. To convert it:
- Windows: choose File > Info > Convert. Excel saves an XLSX copy and offers to reopen it.
- Windows or Mac: choose File > Save As (Windows: F12; Mac: ⌘+Shift+S) and pick Excel Workbook (.xlsx).
- If the old file has macros you need, pick Excel Macro-Enabled Workbook (.xlsm) instead.
- Close and reopen the new file. The full 1,048,576 rows appear only after reopening.
If you must save as XLS, choose Excel 97-2003 Workbook (.xls) in Save As. Excel runs the Compatibility Checker, which lists what will be lost or changed. On Windows you can run it any time from File > Info > Check for Issues > Check Compatibility. Read the list before you click Continue.
Common mistakes with XLS and XLSX#
These slips cause most file-format trouble:
- Renaming instead of converting. Changing .xls to .xlsx in File Explorer or Finder doesn't change the format inside. Excel warns that the format and extension don't match.
- Working in Compatibility Mode without noticing. Data pasted past row 65,536 is refused, and new functions may be flagged. Check the title bar.
- Not seeing extensions at all. Windows hides them by default: in File Explorer, choose View > Show > File name extensions. On a Mac, turn on Finder > Settings > Advanced > Show all filename extensions.
- Converting a macro file to XLSX. The macros are removed. Use XLSM.
- Breaking links between files. A formula like
='[Prices.xls]Sheet1'!B2still points to the old name after you convert Prices.xls. Update it with Data > Edit Links > Change Source. - Counting files with the wrong wildcard. In a list of file names,
"*.xls"matches only names that end in .xls, while"*.xls*"also matches .xlsx and .xlsm. The exercise on this page uses the first one.
If you receive data as text files rather than workbooks, the guide to importing CSV files into Excel shows how to keep leading zeros and dates intact.
Our recommendation#
Save everything as XLSX unless you have a specific reason not to. It holds more data, keeps every feature, makes smaller files and can't carry macros. Convert old XLS files when you next edit them, and keep a backup of the original until you've checked the new file. Use XLSM only when a workbook needs macros, and XLS only for software that can't read anything newer.
Practise it#
File formats are part of the Excel basics that job tests expect you to know. Check your Excel basics with the skill check, then practise working with cells, rows and columns in a live spreadsheet that checks each answer instantly. Not sure where you stand? Take the Excel level test to find the right starting point.
Try it yourself
This is a live spreadsheet. Type the formula in the green cell and press Enter.
Column A lists files in a shared folder. In E2, use COUNTIF with a wildcard to count how many are still in the old .xls format. Files ending .xlsx or .xlsm must not count.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Owner | |||||
| 2 | Finance | Old .xls files | ||||
| 3 | Sales | |||||
| 4 | HR | |||||
| 5 | Finance | |||||
| 6 | Ops | |||||
| 7 | Sales | |||||
| 8 | ||||||
| 9 | ||||||
| 10 |
Tip: The * wildcard stands for any characters before the extension. "*.xls" matches names that end in .xls, so .xlsx and .xlsm are left out.
Practise this in a lesson
Frequently asked questions
Is XLS or XLSX better?
XLSX is better for almost every use. It holds far more rows and columns, keeps every modern feature, makes smaller files and can't contain macros. XLS only makes sense for software that can't open XLSX.
Can Excel 365 open XLS files?
Yes. Current Excel opens XLS files in Compatibility Mode, which keeps the old limits so the file still works in older versions. Convert the file to XLSX to remove those limits.
How do I convert XLS to XLSX?
On Windows, open the file and choose File > Info > Convert. On Windows or Mac, you can also use File > Save As and pick Excel Workbook (.xlsx). If the file contains macros you need, save it as XLSM instead.
Why is my XLS file stuck at 65,536 rows?
That is the row limit of the old XLS format, and Compatibility Mode keeps it even in new Excel. Save the file as XLSX, close it and reopen it to get 1,048,576 rows.
Can I just rename .xls to .xlsx?
No. Renaming changes only the name, not the format inside, so Excel warns that the format and extension don't match. Always convert with Save As or File > Info > Convert.