20 MB HTML sample
An HTML file of exactly 20,971,520 bytes. It is a valid HyperText Markup Language file, generated by this site. Compare its checksum and test it with the parser used by your application. Use it wherever you need a 20 MB sample, test or dummy HTML file.
Download
sample-html-20mb.html
20 MB20,971,520 bytes
Download 20 MB HTMLCreated in your browser in a few seconds, then checked against the SHA-256 checksum. The file is not uploaded anywhere. No sign-up.
- Type
- text/html
- SHA-256
bfeb8944a39dca411cf3999b4af944f47e94de6313fd906a1576dc92e135eb03- Delivery
- Created in your browser from static generator assets (how it works).
What is in this file
A static HTML5 page with 25,997 sections of headings, paragraphs, lists and tables. It has no scripts, no external resources and a noindex robots tag. An HTML comment before the closing tags brings the file to the exact size.
| Sections | 25,997 |
|---|---|
| Doctype | HTML5 |
| Scripts | None |
| External resources | None |
| Styles | One inline style element |
| Encoding | UTF-8 (ASCII characters only) |
How the file begins
The opening lines of sample-html-20mb.html, exactly as they appear in the file.
00000000 3c 21 44 4f 43 54 59 50 45 20 68 74 6d 6c 3e 0a |<!DOCTYPE html>.|
00000010 3c 68 74 6d 6c 20 6c 61 6e 67 3d 22 65 6e 22 3e |<html lang="en">|
00000020 0a 3c 68 65 61 64 3e 0a 3c 6d 65 74 61 20 63 68 |.<head>.<meta ch|
00000030 61 72 73 65 74 3d 22 75 74 66 2d 38 22 3e 0a 3c |arset="utf-8">.<|Preview
Creates the file in your browser and shows the first 64 KB of it.
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:
| System | Limit | Note |
|---|---|---|
| Microsoft Outlook | 20 MB of attachments by default for internet mail accounts | This file is right at the limit; add a second attachment and it is exceeded. |
| Gmail | 25 MB per message | Under the limit, although email encoding adds about a third in transit. |
| GitHub web uploads | 25 MiB per file added through the browser | Accepted. Pushing with Git allows larger files. |
| Cloudflare Pages assets | 25 MiB per file | The largest round size that can be served as a static asset. |
| Amazon API Gateway | 10 MB payload | Rejected; the upload has to go directly to object storage. |
| ASP.NET Core (Kestrel) | About 28.6 MB request body by default | Accepted with room for the multipart overhead. |
Use this file for
- Finding the first upload limit in a new stack
- Testing scrapers and HTML-to-text conversion
- Testing HTML sanitisers and upload filters
Testing notes for HTML
- Serve uploaded HTML with Content-Disposition: attachment or from a separate domain, and send X-Content-Type-Options: nosniff.
- A text file that merely starts with a tag can be sniffed as HTML by older browsers if the Content-Type header is missing.
Technical details
| File name | sample-html-20mb.html |
|---|---|
| Format | HTML (HyperText Markup Language) |
| Extension | .html |
| MIME type | text/html |
| Size | 20,971,520 bytes (20 MB) |
| Kind | Text |
| Signature | 3C 21 44 4F 43 54 59 50 45 |
| SHA-256 | bfeb8944a39dca411cf3999b4af944f47e94de6313fd906a1576dc92e135eb03 |
| Created | 2026-10-23 |
| Validation | See the listed size and SHA-256. Small downloads are checked in the browser; verify streamed downloads manually. A hash match does not prove parser compatibility. |
| Preview | Available on this page |
| Source | Generated in your browser by this site's generator; not copied from elsewhere |
| Licence | Free to use, modify and redistribute (terms) |
| Category | Documents |
Check the stated structure and checksum against your application requirements. As with any download, scan the file with your own security tools before opening it. How files are made and checked
Verify your copy
This file is created in your browser, so it has no direct URL for curl or wget. The generator is designed to produce reproducible bytes. After saving, compare the checksum with the SHA-256 value above.
sha256sum sample-html-20mb.html # Linux
shasum -a 256 sample-html-20mb.html # macOSOn Windows, run Get-FileHash sample-html-20mb.html -Algorithm SHA256 in PowerShell. For scripts and pipelines, save the file once and keep your own copy.
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 HTML file?
- A static HTML5 page with 25,997 sections of headings, paragraphs, lists and tables. It has no scripts, no external resources and a noindex robots tag. An HTML comment before the closing tags brings the file to the exact size.
- Do the HTML samples run any scripts?
- No. They are static documents with one small inline style block, no scripts and no external resources, and they are marked noindex.