Skip to content
>_ TrueFileSize.com

Sample HTML File Download — Free HTML5 Example Pages

Download free HTML example pages from 3KB to 1MB — forms, tables, landing pages, and HTML email template samples. Use these HTML test files for web scraping testing (Cheerio, Puppeteer), browser testing, email template testing, and HTML parser testing. All valid HTML5 with realistic content.

sample-5kb.html

5 KB

80 lines

sample-10kb.html

10 KB

200 lines

sample-50kb.html

50 KB

1,000 lines

sample-100kb.html

100 KB

2,000 lines

sample-500kb.html

500 KB

10,000 lines

sample-1mb.html

1 MB

20,000 lines

sample-simple-page.html

3 KB

50 lines

sample-form-page.html

8 KB

150 lines

sample-email-template.html

12 KB

250 lines

sample-table-page.html

20 KB

400 lines

Use cases for sample HTML files

  • Testing web scrapers and crawlers (Cheerio, Puppeteer, Playwright)
  • Verifying HTML parsers and DOM libraries (jsdom, htmlparser2)
  • Testing email rendering in email clients (Outlook, Gmail)
  • Benchmarking browser rendering and paint performance
  • Testing HTML-to-PDF conversion tools (Puppeteer, wkhtmltopdf)
  • Validating accessibility tools and screen readers

HTML variants included

VariantElementsUse case
Simple pageheader, nav, sections, footerBasic scraping, DOM parsing
Form pageinputs, selects, textareas, checkboxesForm testing, Playwright/Cypress
Table pagethead, tbody, tr, td, thData extraction, table scraping
Media pageimg, video, iframe, lazy loadingMedia detection, lazy load testing
Landing pagehero, cards, grid, CTA buttonsFull-page rendering, performance
Email templatetable layout, inline CSSEmail rendering, template testing

How to parse HTML files

# JavaScript — Cheerio (server-side jQuery)
const cheerio = require('cheerio');
const $ = cheerio.load(html);
$('table tr').each((i, row) => {
  console.log($(row).text());
});

# JavaScript — jsdom (full DOM)
const { JSDOM } = require('jsdom');
const dom = new JSDOM(html);
const title = dom.window.document.querySelector('title').textContent;

# Python — BeautifulSoup
from bs4 import BeautifulSoup
soup = BeautifulSoup(html, 'html.parser')
for link in soup.find_all('a'):
    print(link.get('href'))

# Python — lxml (fast)
from lxml import html as lhtml
tree = lhtml.fromstring(html_content)
rows = tree.xpath('//table//tr')

# CLI — extract all links
grep -oP 'href="\K[^"]+' page.html

Technical specifications

StandardHTML5 (WHATWG Living Standard)
Extension.html, .htm
MIME typetext/html
EncodingUTF-8
ContentRealistic faker.js data (names, emails, products)
CSSEmbedded <style> tag (no external files)

Frequently Asked Questions

Other data formats

Related reading