500 KB ZIP sample file
A ZIP file of exactly 512,000 bytes. It is a valid ZIP archive file, generated for this site and checked with an independent parser.
Download
sample-zip-500kb.zip
500 KB512,000 bytes
Download 500 KB ZIPDirect download. No sign-up and no waiting.
- Type
- application/zip
- SHA-256
3f977498bfa0cfc3d65f367bf268bd17819e47e2cebdc3bc2bf666d099770570- Direct URL
https://sampletestfiles.com/downloads/zip/sample-zip-500kb.zip
What is in this file
4 entries: a README, a CSV file and a JSON file compressed with deflate, plus payload.bin, 508,743 pseudo-random bytes stored without compression so the archive is exactly 512,000 bytes.
| Entries | 4 |
|---|---|
| Compression | Deflate for text entries, stored for payload.bin |
| Encrypted | No |
| ZIP64 | No |
| Largest entry | payload.bin, 508,743 bytes |
First bytes of the file
The first 64 bytes of sample-zip-500kb.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 d3 95 |PK..........!\..|
00000010 f4 5d 6d 00 00 00 7b 00 00 00 0a 00 00 00 52 45 |.]m...{.......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 54 5d b8 00 1b 62 41 82 89 cd |....#.T]...bA...|Preview
ZIP files cannot be shown in a browser. Download the file and open it with Windows Explorer, macOS Archive Utility, 7-Zip.
Where 500 KB matters
A 512,000-byte file: larger than most API body limits, smaller than most upload limits. These are the default limits a file of this size is useful for testing:
| System | Limit | Note |
|---|---|---|
| Amazon DynamoDB items | 400 KB per item | 500 KB cannot be stored as a single item. |
| Express body parsers | 100 KB by default | Rejected unless the limit is raised. |
| nginx request body | 1 MB by default (client_max_body_size) | Accepted with room to spare. |
Use this file for
- Testing that APIs return 413 for oversized bodies
- 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.
Technical details
| File name | sample-zip-500kb.zip |
|---|---|
| Format | ZIP (ZIP archive) |
| Extension | .zip |
| MIME type | application/zip |
| Size | 512,000 bytes (500 KB) |
| Kind | Binary |
| Signature | 50 4B 03 04 |
| SHA-256 | 3f977498bfa0cfc3d65f367bf268bd17819e47e2cebdc3bc2bf666d099770570 |
| Created | 2026-10-10 |
| Validation | Exact size, signature bytes and structure checked when the file was generated |
| Preview | Not available for this format; details only |
| Source | Generated for this site; not copied from elsewhere |
| Licence | Free to use, modify and redistribute (terms) |
| Category | Archives |
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-500kb.zip 'https://sampletestfiles.com/downloads/zip/sample-zip-500kb.zip'
sha256sum sample-zip-500kb.zip # Linux
shasum -a 256 sample-zip-500kb.zip # macOSOn Windows, run Get-FileHash sample-zip-500kb.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 500 KB?
- Yes. It is 512,000 bytes, which is 500 KB in the binary units that operating systems and server limits use (1 KB = 1,024 bytes).
- What is inside the 500 KB ZIP file?
- 4 entries: a README, a CSV file and a JSON file compressed with deflate, plus payload.bin, 508,743 pseudo-random bytes stored without compression so the archive is exactly 512,000 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.