20 MB ZIP sample file

A ZIP file of exactly 20,971,520 bytes. It is a valid ZIP archive file, generated for this site and checked with an independent parser. Use it wherever you need a 20 MB sample, test or dummy ZIP file.

Download

sample-zip-20mb.zip

20 MB20,971,520 bytes

Download 20 MB ZIP

Direct download. No sign-up and no waiting.

Type
application/zip
SHA-256
c6f748df21d77e13fed1404507e49d3bf018c8a657d0828dc01eecf754dba380
Direct URL
https://sampletestfiles.com/downloads/zip/sample-zip-20mb.zip

What is in this file

4 entries: a README, a CSV file and a JSON file compressed with deflate, plus payload.bin, 20,968,261 pseudo-random bytes stored without compression so the archive is exactly 20,971,520 bytes.

Entries4
CompressionDeflate for text entries, stored for payload.bin
EncryptedNo
ZIP64No
Largest entrypayload.bin, 20,968,261 bytes

First bytes of the file

The first 64 bytes of sample-zip-20mb.zip as a hex dump: offset, bytes, then the same bytes as text. The ZIP signature is 50 4B 03 04.

00000000  50 4b 03 04 14 00 00 00 08 00 00 00 21 5c c8 6d  |PK..........!\.m|
00000010  79 0c 6c 00 00 00 7a 00 00 00 0a 00 00 00 52 45  |y.l...z.......RE|
00000020  41 44 4d 45 2e 74 78 74 05 c1 31 0e c2 30 0c 05  |ADME.txt..1..0..|
00000030  d0 bd a7 f8 23 0c 44 88 23 b0 31 20 21 c1 c4 e6  |....#.D.#.1 !...|

Preview

ZIP files cannot be shown in a browser. Download the file and open it in an application that reads ZIP, such as Windows Explorer, macOS Archive Utility, 7-Zip.

Where 20 MB matters

A 20,971,520-byte file: right at the default attachment limit of Outlook, and just under the 25 MB ceilings of Gmail and GitHub web uploads. These are the default limits a file of this size is useful for testing:

SystemLimitNote
Microsoft Outlook20 MB of attachments by default for internet mail accountsThis file is right at the limit; add a second attachment and it is exceeded.
Gmail25 MB per messageUnder the limit, although email encoding adds about a third in transit.
GitHub web uploads25 MiB per file added through the browserAccepted. Pushing with Git allows larger files.
Cloudflare Pages assets25 MiB per fileThe largest round size that can be served as a static asset.
Amazon API Gateway10 MB payloadRejected; the upload has to go directly to object storage.
ASP.NET Core (Kestrel)About 28.6 MB request body by defaultAccepted with room for the multipart overhead.

All 20 MB sample files

Use this file for

  • Testing email attachment limits
  • Testing archive uploads and extraction
  • Checking limits on extracted size and entry count

Testing notes for ZIP

  • An archive can expand to far more than its own size. Enforce limits on total extracted bytes and entry count to guard against zip bombs.
  • Entry names may contain "../". Extracting without validating paths lets an archive write outside the target folder.

ZIP format reference

Technical details

File namesample-zip-20mb.zip
FormatZIP (ZIP archive)
Extension.zip
MIME typeapplication/zip
Size20,971,520 bytes (20 MB)
KindBinary
Signature50 4B 03 04
SHA-256c6f748df21d77e13fed1404507e49d3bf018c8a657d0828dc01eecf754dba380
Created2026-10-10
ValidationExact size, signature bytes and structure checked when the file was generated
PreviewNot available for this file; details only
SourceGenerated for this site; not copied from elsewhere
LicenceFree to use, modify and redistribute (terms)
CategoryArchives

Validated for expected format and integrity. As with any download, scan the file with your own security tools before opening it. How files are made and checked

Download from the command line and verify

Fetch the file with curl, then compare its checksum with the SHA-256 value above.

curl -o sample-zip-20mb.zip 'https://sampletestfiles.com/downloads/zip/sample-zip-20mb.zip'
sha256sum sample-zip-20mb.zip     # Linux
shasum -a 256 sample-zip-20mb.zip # macOS

On Windows, run Get-FileHash sample-zip-20mb.zip -Algorithm SHA256 in PowerShell. A matching value proves that the download is complete and unaltered.

Related files

Questions about this file

Is this file exactly 20 MB?
Yes. It is 20,971,520 bytes, which is 20 MB in the binary units that operating systems and server limits use (1 KB = 1,024 bytes).
What is inside the 20 MB ZIP file?
4 entries: a README, a CSV file and a JSON file compressed with deflate, plus payload.bin, 20,968,261 pseudo-random bytes stored without compression so the archive is exactly 20,971,520 bytes.
What is inside the sample ZIP files?
A README, a small CSV file, a small JSON file and a payload.bin entry of pseudo-random bytes that sets the archive size. The smallest archives hold fewer entries.