HTML Validator, Well-Formedness & On-Page SEO Checker
Paste your markup and get an instant, plain-English report: unclosed-tag warnings, the SEO essentials every page needs, image alt coverage and a proper heading outline, parsed live in your browser, nothing uploaded.
What is the html validator?
The HTML Validator parses pasted markup to check well-formedness and on-page SEO at once, flagging unclosed tags, a missing single title, meta description and lang attribute, image alt coverage, empty links and the full heading outline. Each warning ships with a fix. Free and local, so confidential markup stays private.
The GigAI HTML Validator is a fast, honest markup linter built for people shipping real pages. Paste a full document or just a fragment and it parses the HTML with the browser's own engine to surface the problems that actually matter: structure that a strict XML re-parse flags as not well-formed (a reliable smell test for unclosed or mis-nested tags), the on-page SEO essentials, a single non-empty `<title>`, a meta description, a `lang` attribute on `<html>`: image `alt` coverage for accessibility, empty or `#` links, and a full h1–h6 heading outline that flags a missing H1, multiple H1s, skipped levels and empty headings. Findings are grouped, scored and paired with a concrete fix for every warning, plus a rendered outline so you can see your document's structure at a glance. It is deliberately lightweight and says so: browsers auto-correct HTML, so this catches structural and SEO defects rather than every last spec nuance, and for a byte-exact conformance verdict you'd still run the W3C Nu Checker. Because everything runs locally with native DOMParser, you can validate staging pages, login-gated views, unreleased templates and confidential markup: nothing is ever fetched, uploaded, logged or seen by anyone.
- Difficulty:
- Easy
- Typical time:
- ~30s
- Processing:
- 100% browser processing
Last updated
How to use the html validator
- 1
Paste your HTML
Drop in a full page (View Source → copy) or just a fragment. Load the sample if you want to see the report shape first, or drag in an .html file.
- 2
Read the grouped report
Scan the score and the Structure, SEO, Accessibility and Outline groups. Passing checks are collapsed to green. Every warning carries a concrete fix.
- 3
Follow the outline
Use the rendered heading tree to confirm a single H1 and no skipped levels, then repair anything the outline flags.
- 4
Fix, re-paste, re-check
Apply the fixes in your editor, paste the updated markup back in, and confirm the warnings clear, all without a round trip to a server.
What HTML Validator includes
Well-formedness check
A strict XML re-parse of full documents surfaces unclosed, mis-nested or stray tags that HTML's forgiving parser would silently patch over, the fastest way to catch structural mistakes.
On-page SEO essentials
Verifies the head basics every ranking page needs: a single, non-empty <title>, a meta description, and a lang attribute on <html>, each with a one-line fix when it's missing.
Live heading outline
Extracts your h1–h6 structure and renders it as an indented outline, flagging a missing or duplicate H1, skipped levels (h2 → h4) and empty headings that hurt SEO and screen readers.
Accessibility checks
Counts <img> elements with no alt attribute and links with an empty or "#" href, so you catch the accessibility and crawlability gaps that automated audits penalise.
Grouped, scored report
Findings are organized into Structure, SEO, Accessibility and Outline groups with a headline score, so you know at a glance whether the markup is ship-ready or needs work.
Private, in-browser parsing
Everything runs on the pasted markup with native DOMParser (no upload, no fetch, no logging) so staging, login-gated and unreleased pages are safe to check.
Why use our html validator
Catch broken structure before it ships
Unclosed and mis-nested tags rarely error visibly. They quietly break layout and confuse crawlers. The well-formedness pass flags them the moment you paste, not in production.
Fix on-page SEO in one glance
A missing title, absent meta description or no lang attribute all cost you in search. This bundles those essentials with the accessibility basics into one scored, actionable checklist.
Ship an accessible heading hierarchy
The rendered outline makes a skipped level or a page with three H1s obvious, so both screen-reader users and search engines get the clean document structure they expect.
Validate anything, privately
Because parsing is local, you can check confidential, gated or pre-launch markup that a URL-based validator could never reach, and nothing leaves your machine.
Built for the way you work
From quick one-off fixes to daily workflows, see how people put this tool to use.
- Frontend developer
Sanity-check a template before merge
Paste a component's rendered output to catch an unclosed tag or a missing lang attribute before it lands in the codebase and breaks a whole layout.
- SEO specialist
Audit a page's on-page basics
Confirm the title, meta description and heading hierarchy are correct on a staging URL you can't feed to a public validator, and hand devs a precise fix list.
- Accessibility reviewer
Find missing alt text and bad heading order
Get an instant count of images without alt attributes and a heading outline that exposes skipped levels: the two structural issues that trip up screen readers.
- Content editor / CMS user
Validate rich-text output
Paste the HTML a WYSIWYG editor produced to check it isn't emitting stray tags, empty headings or link placeholders before the article goes live.
Supported formats
Accepts HTML and HTML fragment, and produces Validation report and Heading outline, all processed locally in your browser.
- HTML
- HTML fragment
- Validation report
- Heading outline
Frequently asked questions
Recommended tools
Meta Tag Analyzer
Paste a page's HTML to audit its title, description, canonical, robots, Open Graph and Twitter Card tags: with a length score, missing/duplicate checks and a live search & social preview, 100% in your browser.
Sitemap Validator
Paste your sitemap.xml and validate it instantly: well-formed XML, every <url> has a <loc>, the 50,000-URL limit, HTTPS locations and valid changefreq/priority. Catches the errors that make Google reject a sitemap. 100% in your browser.
Robots.txt Validator
Paste your robots.txt to parse it into User-agent groups and catch the mistakes that block Google: a stray Disallow: /, rules before any User-agent, unknown directives and a missing sitemap. 100% in your browser.
Meta Tag Generator
Generate perfect SEO meta tags, Open Graph and Twitter Card markup with a live Google snippet and social-card preview, copy the ready-to-paste <head> code, 100% in your browser.
JSON Formatter
Format, validate and minify JSON in your browser with pinpoint error line + column, jump-to-error, key sorting and live editing: nothing is uploaded.
URL Encoder
Percent-encode text and URLs instantly: pick component mode for query values or full-URL mode to preserve structure, with a per-line batch switch. 100% in your browser, nothing uploaded.
Common problems, solved
Hit a snag? Here are quick fixes for the issues people run into most.
It says my HTML is "not well-formed" but the page renders fine.
That check is a strict XML re-parse, which is deliberately stricter than HTML5: void elements like <br> or <img> written without a self-closing slash, or a raw & in an attribute, will trip it even though browsers render them. Treat it as a hint to look for unclosed or mis-nested tags. It's a warning, not a hard error.
My heading outline flags a skipped level I didn't expect.
A skip means a heading jumps more than one level (e.g. an H2 followed directly by an H4). Insert the intermediate level or promote the deeper heading so the hierarchy steps down one level at a time, screen readers and search engines both rely on that order.
Can it validate a live URL for me?
No. This is a static, in-browser tool with no server to crawl from, which is exactly why it's paste-first. Open the page, copy its source (Ctrl+U / Cmd+Option+U), and paste it here. The upside: staging, gated and unpublished pages that a URL validator can't reach all work.
Why doesn't it catch every error the W3C validator reports?
It's intentionally a lightweight structural + SEO linter, not a full conformance checker. It focuses on the high-value problems, well-formedness, the SEO essentials, alt coverage and heading order. For a byte-exact spec verdict, run the markup through the W3C Nu HTML Checker as well.
Get the most out of it
Paste the full document (with <html>) rather than a fragment to enable the strict well-formedness pass, fragments skip it by design.
Aim for exactly one H1 per page and never skip heading levels. The outline makes both easy to verify at a glance.
Give every meaningful <img> an alt attribute (use alt="" for purely decorative images) to satisfy both accessibility and the check here.
Always set a lang attribute on <html>, it's a small tag with outsized accessibility and international-SEO impact.
Re-paste after each fix. The report is instant, so tight edit-and-recheck loops are the fastest way to a clean bill.
What's new
Recent updates and improvements to the html validator.
Initial release, well-formedness re-parse, on-page SEO checks (title, meta description, lang, empty links), image alt coverage and a rendered h1–h6 heading outline, all grouped and scored.
Added per-warning fix guidance, an at-a-glance summary strip (score, tag/heading counts, alt coverage) and drag-and-drop .html file support.
Refined the well-formedness heuristic to skip fragments cleanly and sharpened the heading-outline rendering for deeply nested structures.
Keep exploring
Problems we solve
Definitions
From the blog
Explore categories
Compare formats
By file type
Common tasks
Your privacy is built in
Every check runs locally in your browser with its native DOMParser. The pasted markup is never fetched, uploaded, stored or logged. Draft templates, staging pages and confidential HTML stay entirely on your device, and closing the tab erases them completely.
- Runs in your browser
- No uploads
- Nothing stored
Ready to try the html validator?
Free, private and instant. HTML Validator runs right in your browser.