All WCAG rules
WCAG 1.3.1Level ASeriousStructure

How to fix: Page missing or has multiple h1

Every page should have exactly one <h1> that names its main topic: if the page has none, add one main heading, and if it has more than one, consolidate them down to a single <h1>.

What it is

The <h1> is the top of a page's heading outline. It is the title-level heading that tells both people and software what the whole page is about, sitting above every other heading. WCAG Success Criterion 1.3.1 Info and Relationships requires that the structure conveyed by your visual design also exist in code, and a single, clear h1 is the anchor of that structure.

Two situations break this. The first is a page with no <h1> at all, where the document opens with an h2 or a styled <div> that merely looks like a title. Assistive technology then has no top-level landmark heading to announce, so users land on a page with no clear starting point. The second is a page with multiple <h1> elements, often a leftover from a template where the site name, the page title, and a banner are each marked up as h1. This flattens the outline: if three things are all the most important heading, none of them is.

The fix is to settle on one main heading. Pick the element that genuinely names the page (the article title, the product name, the page subject), mark it as the single <h1>, and demote any competing h1s to h2 or lower so they nest beneath it. If the page has nothing acting as a main heading, add one. Visual size is irrelevant here; you can style the h1 however you like with CSS.

Who it affects & why it matters

Screen reader users feel this most directly. Many jump straight to the h1 as their first move on a page, or pull up a list of headings to orient themselves, treating the h1 as the page's headline. With no h1, that shortcut lands nowhere; with several h1s, the outline reads as if the page has multiple unrelated documents stacked together, which is disorienting to navigate.

It also affects people with cognitive disabilities, who rely on a single obvious title to confirm they are in the right place, and it shapes how search engines and reader-mode tools interpret the page, since both lean on the h1 to summarize the document. A clean, single h1 makes the page easier to scan for everyone.

A missing or duplicated h1 falls under SC 1.3.1, a Level A criterion, and Level A is the minimum conformance tier. Broken page structure is one of the most common categories surfaced by automated WCAG tools, and WCAG 2.1 Level AA (which includes every Level A criterion) is the de-facto benchmark U.S. courts apply to ADA Title III claims. Web accessibility lawsuits have climbed year over year, and the majority target businesses under $25 million in revenue.

While a stray h1 is less of a lone lawsuit trigger than missing alt text or low contrast, it is a standard finding in any serious audit, and a poor heading outline degrades navigation across the whole page rather than one isolated element. The fix is essentially free: you are changing tag levels, not rebuilding anything, and using CSS for whatever visual size you actually wanted.

How to fix it

  1. Count the <h1> elements on the page. The goal is exactly one.
  2. If there are zero, identify the text that names the page's main topic and mark it up as the single <h1>.
  3. If there are two or more, choose the one true main heading and demote the rest to <h2> (or deeper) so they nest beneath it.
  4. Do not use the site name or logo as the h1 on interior pages; reserve the h1 for the specific page topic.
  5. Pick the level by structure, not by appearance, and use CSS for the visual size and weight you want.
  6. Re-scan to confirm the page reports exactly one <h1>.
Before
<header><h1>AccessKnight</h1></header>
<main>
  <h1>Pricing Plans</h1>
  <h1>Frequently Asked Questions</h1>
</main>
After
<header><p class="logo">AccessKnight</p></header>
<main>
  <h1>Pricing Plans</h1>
  <h2>Frequently Asked Questions</h2>
</main>

How AccessKnight detects this

AccessKnight counts the <h1> elements in the parsed document. If it finds zero, it flags the page once and tells you to add an <h1> as the main heading. If it finds more than one, it flags the page once, reports how many h1 elements it found, and tells you to use only one. When the count is exactly one, the rule passes. This is a single page-level check, so resolving it (adding the missing h1 or consolidating the extras) clears the issue for the whole document at once.

Frequently asked questions

Is a missing or multiple h1 a Level A or AA issue?

It falls under WCAG 2.1 Success Criterion 1.3.1 Info and Relationships, which is Level A, the minimum tier. AccessKnight scores it as a serious-severity violation because the h1 anchors the entire heading outline that assistive technology depends on.

Can a page have more than one h1?

For accessibility and SEO, the safest rule is exactly one h1 per page, and AccessKnight flags pages that have more than one. The HTML5 outline algorithm once suggested multiple h1s inside sections, but no browser or screen reader actually implemented it, so in practice a single h1 is the reliable choice.

Should the site logo or name be the h1?

Usually not on interior pages. The h1 should name what that specific page is about (for example the article or product title), not your brand. Mark the logo up as a link or a paragraph and reserve the h1 for the page topic, so screen reader users hear something meaningful at the top.

My h1 looks too big. Can I just use an h2 instead?

No. Heading levels describe structure, not size. Keep the correct <h1> and shrink it with CSS. Swapping in an h2 to get a smaller font leaves the page without a top-level heading and breaks the outline for assistive technology.

Is this issue on your site?

AccessKnight scans any page against all 30 WCAG 2.1 rules — including this one — and shows every instance with a fix. Free, no credit card.

Scan my site free →

More WCAG fixes