Specs

How test files reach an exact byte size

Each format uses different structures to reach the requested bytes. Check the header and your reader separately; re-saving can change a fixture’s size.

FormatPadding regionOpens inMinimum
PDFAn unreferenced content stream, the same mechanism PDF writers use for incremental updatesAcrobat, Preview, Chrome, pdf.js and pypdf772 B
DOCXA binary part declared in [Content_Types].xml, which Word ignoresMicrosoft Word, LibreOffice, Google Docs and python-docx1,496 B
TXTPrintable ASCII charactersNotepad, TextEdit and VS Code1 B
MDAn HTML comment, which Markdown renderers hideTypora, VS Code, GitHub and static site generators like Jekyll or Hugo80 B
HTMLAn HTML commentChrome, Firefox, Safari and Edge189 B
PNGA tEXt metadata chunk with a valid CRC, which decoders skipPreview, Photoshop, browsers and Pillow288 B
JPGCOM comment segments, the field the JPEG spec reserves for free textstandard image viewers, browsers and EXIF-aware tools1,927 B
WebPA custom RIFF chunk, with the container size field corrected afterwardsmodern browsers, Photoshop 23+ and libwebp tools1,309 B
SVGAn XML comment inside the documentbrowsers, Illustrator, Figma and Inkscape200 B
CSVAdditional rows, with the final row padded to land on the exact byteExcel, Sheets, pandas and Python's csv module80 B
JSONA trailing string field, so the document still parsesjq, browser devtools, Python's json module and Node's JSON.parse60 B
XLSXA binary part inside the package, outside the sheet dataMicrosoft Excel, LibreOffice Calc, Numbers and openpyxl2,439 B
XMLAn XML comment nodebrowsers, Python's lxml and Java's built-in XML parser114 B
SQLA block commentpsql, mysql, DBeaver and TablePlus126 B
WAVAudio samples — the whole file is real audio datamedia players, Audacity, ffmpeg and Python's wave module45 B
MP3An ID3v2 tag sized to absorb the remaindermedia players, VLC and ffprobe427 B
MP4A free box, the container’s own reserved-space atomcontainer parsers and ffprobe — note it carries no video track, so it will not play48 B
ZIPA payload file stored inside the archive without compressionExplorer, Finder, 7-Zip and unzip368 B
BINThe entire file is pseudo-random printable byteshex editors like HxD or xxd, and Python's open() in binary mode1 B
EXETrailing bytes after a header that declares zero sections, so a real Windows loader refuses to run itfile managers and antivirus scanners — deliberately never executes512 B
BATUnreachable text after a goto :eof, which cmd.exe never parsesNotepad, VS Code and cmd.exe111 B
ISOThe contents of a real README.TXT file inside the disc imageExplorer/Finder disc mount, 7-Zip and any ISO 9660 reader43,009 B

Measured test fixtures

Test date: 2026-10-13; Chromium 149.0.7827.55. Sizes were measured from saved files; this does not guarantee compatibility with every desktop application.

FormatBytesValidation
PDF1,048,576PDF parser: one page
DOCX20,971,520ZIP/XML: two paragraphs, extra part type
JPG1,048,576Chromium image decoding (800 × 600)
PNG1,048,576Chromium image decoding (572 × 610)
WEBP1,048,576Chromium image decoding (800 × 600)

These results are tied to this generator version. If it changes, the evidence is hidden until the new version is tested.