Documents · PDF
A 500 MB PDF file, on demand.
Exactly 524,288,000 bytes of a single-page PDF 1.7 document sized to A4, built on your machine the moment you press the button.
524,288,000 bytes, exactly.
Every byte above the 772 bytes structural minimum goes into an unreferenced content stream, the same mechanism PDF writers use for incremental updates, which is why this file still behaves like one a real user would send.
Unit convention
500 MB on this page means exactly 524,288,000 bytes, using the binary (MiB) convention some systems label "MB" for short. 1 MB in the strict decimal sense is 1,000,000 bytes; 1 MiB is 1,048,576 bytes — the readout above always shows the exact count either way.
Approximate size equivalents
Roughly 291,271 pages of typed text, 546 minutes of 128 kbps audio, 50 minutes of CD-quality audio, 210 photos from a 12 MP camera. These figures compare file size only — the generated file does not contain this text, audio or image content.
Accepted by
Slack free workspace file — all publish a limit at or above this size, based on commonly cited figures that can vary by plan and change over time.
Rejected by
Cloudflare Free proxy body, GitHub repository file, Gmail attachment — this exceeds their commonly cited limit, which makes it a useful negative test. Published limits can vary by plan and change over time.
Other PDF sizes
At this scale you are testing infrastructure rather than validation: timeouts, proxy buffers, disk headroom and progress reporting.
Questions.
Is this 500 MB PDF file valid?
Yes. It is a single-page PDF 1.7 document sized to A4. The extra bytes sit in an unreferenced content stream, the same mechanism PDF writers use for incremental updates, so it opens in Acrobat, Preview, Chrome, pdf.js and pypdf.
Does 500 MB mean 524,288,000 bytes?
On this page, yes — 500 MB uses the binary (MiB) convention, so the file is exactly 524,288,000 bytes. 1 MB in the strict decimal sense would be a different, smaller byte count. Upload validators may use either convention, so the exact byte count is always shown to remove any ambiguity.
What is a 500 MB file used for?
At this scale you are testing infrastructure rather than validation: timeouts, proxy buffers, disk headroom and progress reporting. For PDF specifically, the usual job is testing PDF upload limits, print pipelines and document parsers.
Where is the file downloaded from?
Nowhere. It is assembled in a Web Worker on your own device and handed to the browser as a Blob, so nothing is uploaded, fetched or stored.
