Free XLSX test files and sample generator

Microsoft Excel's Open XML workbook format. Multi-sheet tabular data with formulas and formatting.

Generate a .xlsx file →

What is a .xlsx file?

XLSX: Excel Spreadsheet. XLSX is the modern Excel workbook: a ZIP package of XML parts. It is the format business users actually send, so any import feature will meet it, including files far larger and messier than your test fixtures.

Why generate a test XLSX file?

What you can put inside a .xlsx file

You get 4 content options for XLSX, so the file holds something meaningful rather than random padding: Numeric table, Text table, Mixed table, With formulas. Pick several and they are merged into one file, with a section, sheet, slide or folder for each.

How a .xlsx file is identified

Every .xlsx file begins with 50 4B 03 04, the ASCII letters "PK", the initials of Phil Katz, who created the ZIP format. That is what a validator inspecting content rather than the file name looks for.

How the size lands on the exact byte

The package is a ZIP, so the padding is trailing whitespace inside one of the XML parts it already contains. Extractors and Office readers both ignore it, so the document opens unchanged.

Negative testing with broken XLSX files

Which failure to reach for, and what to assert for each, is covered in how to make a corrupted file for testing. For upload limits and type checks see testing file upload validation.

Sample XLSX content

[Excel workbook], Sheet1: id | name | amount

This shows the shape of the file. Your download is generated fresh at the size you choose, so the values will differ.

How to open and verify the file

Open in Excel, LibreOffice Calc or Google Sheets, or read with `pandas.read_excel()` / openpyxl.

Media type application/vnd.openxmlformats-officedocument.spreadsheetml.sheet · extension .xlsx · category Data

Generate a .xlsx file → · questions about sizes, privacy or cost are answered on the site FAQ.

Frequently asked questions about XLSX files

What identifies a .xlsx file?

A .xlsx file begins with the bytes 50 4B 03 04, the ASCII letters "PK", the initials of Phil Katz, who created the ZIP format. Those bytes are what a content-sniffing validator looks for, and what the Corrupted condition destroys.

How can a .xlsx file be an exact number of bytes?

The package is a ZIP, so the padding is trailing whitespace inside one of the XML parts it already contains. Extractors and Office readers both ignore it, so the document opens unchanged.

What can go inside the XLSX file?

There are 4 content options for .xlsx: Numeric table, Text table, Mixed table, With formulas. Choose more than one and they are combined into a single file, a section, sheet, slide or folder per option, rather than downloaded separately.

Can I download several broken XLSX files at once?

Yes, select more than one File Condition and you get one ZIP containing a .xlsx per condition, each named after its condition.

Can the XLSX file use UTF-16 or a byte-order mark?

No, and deliberately. A .xlsx file is a container rather than plain text, so rewriting its bytes as UTF-16 would not produce a UTF-16 document. It would produce a broken file. Use a text format such as CSV, JSON or XML for encoding tests.

How do I open or verify the XLSX file?

Open in Excel, LibreOffice Calc or Google Sheets, or read with pandas.read_excel() / openpyxl.

Related Data formats

CSV · JSON · XML · SQL · TSV · YAML · JSONL · XLS

Browse all file formats →