Skip to content

Excel XLSX to Excel XLS converter

XLSX → XLS writes a BIFF8 workbook for Excel 2003-era software, with the row and column ceilings that format imposes.

  • Converted with Office engine · input deleted within 24 h
  • Free: 5 conversions a day · 5 MB each
  • Higher limits →

From real runs

What you get — and what changes

  • Worksheets Kept

    Both sheets of the sample, Pipeline and Notes, were present with their names after reopening the XLS.

  • Cell values Kept

    Company names, stages and owners came back as text, and the arr column (48000, 120000, 22500, 64000) stayed numeric.

  • Dates Kept

    The close_date cells were text in the source workbook and remained text; real date serials are also written when the source has them.

  • Row and column limits Changed

    XLS holds 65,536 rows and 256 columns per sheet; anything beyond is dropped and the warning states the limit on every conversion.

  • Column widths and styles Changed

    Widths were not carried for the sample; the reopened workbook reported default column dimensions.

  • Formulas Kept

    Formulas within the Excel 2003 function set are written as formulas; newer functions such as XLOOKUP or LET are stored as values.

  • File size Changed

    The 17,759-byte XLSX became a 6,656-byte XLS; the binary format has no XML overhead for a small workbook.

Sample conversions

Two-sheet pipeline workbook

Input
sample.xlsx, 17,759 bytes, Pipeline sheet with five columns and four rows plus a Notes sheet.
Output
6,656-byte XLS in 606 ms; both sheets and every value intact, no styles, and a warning about the 65,536-row ceiling.

Round trip back to XLSX

Input
The XLS just produced, converted with XLS → XLSX.
Output
The same two sheets with identical cell values and types, confirming nothing in the data was lost on the way to BIFF8.

A real Excel XLSX → Excel XLS run

We converted our Excel XLSX sample (17 KB) with Office engine on 2026-09-11. It took 606 ms and produced a 7 KB Excel XLS file, 63% smaller than the input. The engine raised 1 warning, listed below.

Input · sample.xlsx · 17 KB

Workbook with 2 sheets (Pipeline, Notes); first sheet 5 rows, 25 cells, 0 formulas

Sheets
2
Sheet names
Pipeline, Notes
Rows
5
Cells
25
Formulas
0
Header filter
no
Column widths
default

Output · sample.xls · 7 KB

OLE2 compound document (legacy Office binary)

  • Written as Excel 97-2003 (BIFF8): each sheet holds at most 65536 rows and 256 columns.

Options and when to change them

filter
Leave it unset; the MS Excel 97 export filter is chosen automatically for this pair.

Do it yourself

LibreOffice headless

bash
soffice --headless --convert-to xls in.xlsx --outdir out

Sheets over 65,536 rows are truncated silently; check row counts afterwards.

Excel XLSX to Excel XLS by API or MCP

The HTTP API and the MCP server run the exact engine this page uses (Office engine); the response carries the same warnings the web converter shows. Check support first with GET /api/v1/pairs?from=xlsx&to=xls.

curl
curl -X POST https://filetypeconverters.com/api/v1/convert \
  -H "Authorization: Bearer $FTC_API_KEY" \
  -F "file=@input.xlsx" -F "from=xlsx" -F "to=xls" \
  --output output.xls
API reference

When this is the wrong conversion

  • If the receiving software is Excel 2007 or newer, keep the XLSX; XLS only exists for tools that predate it.
  • If the sheet has more than 65,536 rows, XLSX → CSV keeps every row, since XLS cannot.
  • If you want a read-only snapshot, XLSX → PDF avoids the format's limits and preserves formatting.

Excel XLSX to Excel XLS questions

What is lost going from XLSX to XLS?

Rows past 65,536 and columns past 256 on any sheet, functions introduced after Excel 2003, and some conditional formats. Values, sheet names and classic formulas survive.

Will the XLS open in Excel 2003 or older?

Yes; the file is written in the Excel 97-2003 binary format, the same BIFF8 container those versions save themselves.

Why is the XLS smaller than the XLSX?

XLSX is a ZIP of XML parts with fixed overhead, while BIFF8 stores small workbooks as compact binary records: 6,656 bytes against 17,759 for the sample.