Sample DOCX files for testing, free, CC0 and hotlinkable

This is a Lorem Ipsum DOCX file: a Word document with a heading and placeholder paragraphs in Word's default styles.

https://loremfile.dev/docx/1page.docx · 37.2 KB (37,209 bytes) · application/vnd.openxmlformats-officedocument.wordprocessingml.document · 4 paragraphs · 170 words

docx/with-tracked-changes.docx holds one deletion of "cancelled", one insertion of "confirmed" and one comment: an extractor that reads the XML naively returns the deleted word as current text, and only accepting the changes leaves "confirmed".

docx/anchored-image-with-alt-text.docx floats its 1 image in an anchor with alt text, where docx/with-images.docx places its 2 inline: a converter or accessibility checker that looks only for inline pictures misses the first. docx/with-table.docx holds a native table of 11 rows, header included, for extractors that flatten tables into text or drop them.

docx/1page.docx stores no page count of its own, so "one page" is what Word renders, and a page-count check on a .docx needs a renderer. docx/1mb.docx and docx/10mb.docx reach 1,024,867 and 10,110,885 bytes with 5 and 51 embedded images, for upload limits that should be hit by a real document.

7 files. The same list as JSON: https://loremfile.dev/docx/index.json

DOCX files
FileSizePropertiesDescription
10mb.docx 10.1 MB (10,110,885 bytes) About 10MB: one Lorem Ipsum paragraph per embedded incompressible seeded-noise PNG, so the size is honest rather than padded.
Snippets
<a href="https://loremfile.dev/docx/10mb.docx">download</a>
curl -O https://loremfile.dev/docx/10mb.docx
1mb.docx 1 MB (1,024,867 bytes) About 1MB: one Lorem Ipsum paragraph per embedded incompressible seeded-noise PNG, so the size is honest rather than padded.
Snippets
<a href="https://loremfile.dev/docx/1mb.docx">download</a>
curl -O https://loremfile.dev/docx/1mb.docx
1page.docx 37.2 KB (37,209 bytes) One page: a heading and three paragraphs of Lorem Ipsum in the default Word styles. The page count is what Word renders it as; .docx stores no page count of its own.
Snippets
<a href="https://loremfile.dev/docx/1page.docx">download</a>
curl -O https://loremfile.dev/docx/1page.docx
anchored-image-with-alt-text.docx 43.2 KB (43,200 bytes) One published JPEG anchored to a paragraph and floating right of the text, with alt text: for extractors and converters that only look for inline pictures.
Snippets
<a href="https://loremfile.dev/docx/anchored-image-with-alt-text.docx">download</a>
curl -O https://loremfile.dev/docx/anchored-image-with-alt-text.docx
with-images.docx 41.4 KB (41,377 bytes) Two published PNG fixtures embedded as pictures, read from the bytes that were actually published rather than regenerated.
Snippets
<a href="https://loremfile.dev/docx/with-images.docx">download</a>
curl -O https://loremfile.dev/docx/with-images.docx
with-table.docx 37.1 KB (37,092 bytes) A ten-row table of the shared people dataset with a bold header row, in the Table Grid style.
Snippets
<a href="https://loremfile.dev/docx/with-table.docx">download</a>
curl -O https://loremfile.dev/docx/with-table.docx
with-tracked-changes.docx 37.4 KB (37,393 bytes) One tracked deletion (cancelled), one insertion (confirmed) and one anchored comment. A naive XML text extractor returns deleted text as current; accepting the changes leaves the delivery status confirmed.
Snippets
<a href="https://loremfile.dev/docx/with-tracked-changes.docx">download</a>
curl -O https://loremfile.dev/docx/with-tracked-changes.docx

Every DOCX file in one command, each checked against its hash: npx loremfile get --format docx, or loremfile get --format docx after pip install loremfile.

File names follow the naming grammar. Verify a download against sha256sums.txt.