2 MB HTML sample

An HTML file of exactly 2,097,152 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 2 MB sample, test or dummy HTML file.

Download

sample-html-2mb.html

2 MB2,097,152 bytes

Download 2 MB HTML

Created 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
0e9ad100b82d5937c9ec2e515ee4520f51ae275159a182c0215640ca172344cb
Delivery
Created in your browser from static generator assets (how it works).

What is in this file

A static HTML5 page with 2,604 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.

Sections2,604
DoctypeHTML5
ScriptsNone
External resourcesNone
StylesOne inline style element
EncodingUTF-8 (ASCII characters only)

How the file begins

The opening lines of sample-html-2mb.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 2 MB matters

A 2,097,152-byte file: exactly the default upload limit of PHP, and twice the default of nginx and Spring Boot. These are the default limits a file of this size is useful for testing:

SystemLimitNote
PHP2 MB per uploaded file by default (upload_max_filesize)A file of exactly 2 MB is accepted; one byte more is refused.
nginx1 MB by default (client_max_body_size)Rejected with 413 Request Entity Too Large.
Spring Boot multipart1 MB per file by default (max-file-size)Rejected unless the property is raised.
Django2.5 MB in memory by default2 MB is held in memory; the 5 MB sample is streamed to a temporary file.
Vercel Functions4.5 MB request bodyAccepted, including as base64 at about 2.8 MB.

All 2 MB sample files

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.

HTML format reference

Technical details

File namesample-html-2mb.html
FormatHTML (HyperText Markup Language)
Extension.html
MIME typetext/html
Size2,097,152 bytes (2 MB)
KindText
Signature3C 21 44 4F 43 54 59 50 45
SHA-2560e9ad100b82d5937c9ec2e515ee4520f51ae275159a182c0215640ca172344cb
Created2026-10-23
ValidationSee 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.
PreviewAvailable on this page
SourceGenerated in your browser by this site's generator; not copied from elsewhere
LicenceFree to use, modify and redistribute (terms)
CategoryDocuments

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-2mb.html     # Linux
shasum -a 256 sample-html-2mb.html # macOS

On Windows, run Get-FileHash sample-html-2mb.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 2 MB?
Yes. It is 2,097,152 bytes, which is 2 MB in the binary units that operating systems and server limits use (1 KB = 1,024 bytes).
What is inside the 2 MB HTML file?
A static HTML5 page with 2,604 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.