Free tool · No signup
H1 checker
Check any page's H1 tag: how many there are, what they say, and whether the H1–H6 outline below them skips levels. Enter a URL or paste the HTML.
Quick answer
What does an H1 checker do?
An H1 checker reports how many H1 elements a page has, what they say, and whether the headings beneath them form a clean outline. Enter a URL and this tool fetches the page's HTML server-side and parses every heading from H1 to H6; paste HTML instead if the page is behind a login or renders headings with JavaScript. It flags missing, empty, and duplicate H1s, and every place the hierarchy skips a level.
One H1, and what it should say
The H1 is the page's headline: the plainest possible statement of what this page is about, in the words your reader would use. HTML5 technically permits multiple H1s inside sectioning elements, and Google has said it can cope with several - but coping is not the same as benefiting. A single H1 removes the ambiguity for crawlers and gives screen-reader users one unmistakable page title.
The common failures are structural rather than editorial: a logo wrapped in an H1 on every page, so every page shares the same heading; a template that emits an H1 in both the hero and the article body; or a design where the visible headline is a styled div and the only real H1 is empty.
- Exactly one H1 per page, containing the visible page headline.
- Include the target phrase naturally - the H1 confirms for a reader that they landed on the right page.
- Keep it under about 70 characters so it reads as a headline rather than a sentence.
- Never leave the H1 empty or fill it with an image that has no alt text.
- The H1 and the title tag can differ - the title is written for the search result, the H1 for the reader who already clicked.
Why the heading hierarchy matters more than the H1 alone
Headings are a document outline, not a font-size menu. When an H2 is followed by an H4, assistive technology reports a missing level and users navigating by heading lose their place. Skipped levels are also the clearest sign that headings were chosen for how big they looked rather than what they contained.
Search and AI systems use the same outline to segment a page into passages. A page with a coherent H2/H3 structure can have individual sections surfaced as featured snippets or lifted into an AI answer; a page that is one H1 followed by twenty paragraphs offers nothing to select from.
Reading this tool's output
The summary gives you the H1 count, the total number of headings, and the deepest level used. Below it, each finding is marked as passing, a warning, or an error - a missing H1 is an error, a skipped level is a warning - and the full outline is shown indented by level so gaps are visible at a glance.
If the URL mode returns fewer headings than the page visibly shows, the page is building them client-side. Google renders JavaScript before evaluating a page, so those headings usually still count, but paste the rendered DOM to audit them here.
Where this data comes from
In URL mode the page is fetched server-side over HTTPS and its raw HTML is parsed in your browser with the standard DOM parser, so heading text reflects decoded entities and nested markup exactly as a crawler would read it. Only public URLs are fetched, redirects are re-validated, and no page content is stored. In paste mode nothing leaves your browser at all. Headings injected by JavaScript after load are absent from raw HTML - that is a property of the fetch, not a judgement about the page.
Frequently asked questions
How many H1 tags should a page have?
One. HTML5 allows more and Google has said multiple H1s will not break a page, but a single H1 states the topic unambiguously for crawlers and gives screen-reader users one clear page title. If your template produces two - typically a logo H1 plus an article H1 - demote the logo to a div or a paragraph.
Is a missing H1 an SEO problem?
It is a missed opportunity rather than a penalty. Google can determine a page's topic from the title, the content, and the links pointing at it. But the H1 is a free, direct statement of what the page covers, and its absence usually indicates a template built purely visually - which tends to correlate with other structural problems this checker will also surface.
What is a skipped heading level?
Jumping from an H2 straight to an H4 with no H3 between them. It breaks the document outline that screen readers use for navigation, and it confuses the passage segmentation that search and AI systems perform. The fix is nearly always to correct the tag rather than the design - style an H3 to look however you need it to look.
Should the H1 match the title tag?
They should agree but do not need to be identical. The title tag is optimised for the search result: keyword early, tight character count, sometimes a brand suffix. The H1 is read after the click and can be longer and more natural. What breaks trust is a genuine mismatch - promising one thing in the result and heading the page with another.
Why does the checker find no headings on my page?
Most often the page builds its headings with JavaScript after load, and the raw HTML we fetch does not contain them. It can also mean the site refused the request or the headings are styled divs rather than real heading tags. Switch to paste mode with the rendered DOM - copied from your browser's element inspector - to audit what the user actually sees.
Does the H1 need to contain my keyword?
It should contain the phrase a reader expects, which is usually the keyword or a natural variant of it. Forcing an awkward exact-match string helps nothing - Google understands variants. The real job of the H1 is confirmation: someone arriving from a search result should see, in one line, that this page is about the thing they searched for.
Related free tools
Clean heading structure on every article, by default
Auto SEO writes articles with one H1 and a proper H2/H3 outline built for passage extraction, then publishes them to your site. Start free.
Start your $1 trial