H1 Tags
An H1 is the heading element that names what a page is about, and it should be real markup rather than text that merely looks big. HTML permits more than one H1 per page, so the rule worth following is not a count but a structure: one heading that names the page, then H2s and H3s beneath it in order.
What we measured
117 of 281 sites failed the H1 check, 41.6%. Writing this lesson we ran the same check on ourselves and found 10 of our own 214 pages with no H1, which looked like a matching failure. It was not. Checking indexability second showed all 10 are noindex utility pages: email verification, unsubscribe, and internal pitch decks. Zero of our indexable pages are missing an H1. We are leaving the false alarm in this lesson because it is a better demonstration than a clean result would have been: the finding was real, the defect was not, and only the second check told us which.
Source: State of Small Business Websites 2026, n=281.
Sample framing: Purposive North American B2B prospect list skewing construction, trades and SMB services. 292 domains were scanned and 281 produced a full check run, which is this check's denominator. It differs from the 266 used for image alt text and the 191 used for Core Web Vitals in the same study. It represents the businesses small agencies actually pitch, not a random sample of the web.
How to re-derive it: headings:H1 Tag in summary.json, 117 failed of 281 seen. Our own figure is a count of h1 elements across the 214 exported pages, cross-checked against each page's robots meta tag.
Why it matters
- Screen reader users navigate by heading. A page with no H1 gives them no entry point, and they have to read forward to work out what the page even is.
- The H1 is the strongest in-page statement of what the content covers. Styled text that merely looks like a heading says nothing to anything that is not a pair of eyes.
- It fails silently. The page looks exactly right either way, which is why a missing H1 survives review and why a count alone cannot tell you whether it matters.
- Broken heading order is the related failure: jumping from H1 straight to H4 reads as a skipped level to anything consuming the outline.
The failure
<div className="text-4xl font-bold mb-4">
Unlock your SEO report
</div>
<p>Enter your email and we will send the full audit.</p>This is the shape of the defect we found on our own unlock pages. It renders identically to a real heading, so nothing looks wrong. To a screen reader, an outline tool or a crawler, this page simply has no heading at all.
The fix
<h1 className="text-4xl font-bold mb-4">
Unlock your SEO report
</h1>
<p>Enter your email and we will send the full audit.</p>Identical on screen. The styling is unchanged. The only difference is that the element now says what it is, which is the entire point.
Verify the fix
Changing the code is not the same as fixing the problem. Confirm it.
- Count h1 elements in the rendered output, not your source. A template or a build step can drop one you thought was there. Ours were only visible after a build.
- Open the accessibility pane in Chrome DevTools, or a headings extension, and read the outline. It should start at H1 and descend without skipping a level.
- Confirm the H1 is visible and not hidden with CSS. A hidden H1 written for crawlers is a separate problem, not a fix.
- Re-run the page through DeepAudit and confirm the H1 Tag check passes.
- Check the H1 actually describes this page, not the site. A company name as every page's H1 passes the count and fails the purpose.
Exceptions and misconceptions
A noindex utility page is a different question
Email verification, unsubscribe and internal pages are excluded from search on purpose, so a missing H1 there carries no search consequence. It still matters for anyone landing on the page with a screen reader, so it is worth fixing, but it is not the same finding as a missing H1 on a page you want ranked. Check the robots directive before you count a page as failing.
More than one H1 is valid HTML, and not a penalty
The spec allows multiple H1 elements, particularly with sectioning content. The reason to prefer one is clarity of outline for people and machines reading structure, not a rule you are breaking. Treat a second H1 as a question about your structure, not as an error to panic over.
The H1 is not the title tag
The title tag lives in the head and is what search results and browser tabs show. The H1 lives in the body and is what the page itself says. They should agree, but they do not have to be identical, and one does not substitute for the other.
A logo is not an H1
Wrapping the site logo in an H1 on every page gives every page the same heading, which tells a reader nothing about where they are. The H1 belongs to the page, not the brand.
Do not hide an H1 to please a checker
An H1 pushed off screen to satisfy a tool passes the count and helps nobody. If the page needs a heading, it needs a visible one. If it genuinely does not, fix the page's purpose rather than its markup.
Watch it
Primary sources
- WHATWG HTML Standard: headings and outlines
- W3C WAI: Headings tutorial
- WCAG 2.2, Success Criterion 1.3.1 Info and Relationships
- MDN: the h1 to h6 elements
The measurement above comes from our study, State of Small Business Websites 2026.
Related lessons
Check your own site for this
DeepAudit AI renders your page in a real browser and reports the affected code, so you can see exactly where each finding came from. Free, no signup.
Run a free auditLast reviewed 2026-09-17. Checks covered: H1 Tag, Heading Hierarchy.