Heading and landmark checker

Checks that pages have a clear heading outline, a main landmark and a way to skip repeated navigation.

What this check looks for

The audit runs this check with every other check, on the page as the browser renders it.

Skipped heading levels
Jumps such as h2 straight to h4 that break the outline screen reader users navigate by.
Empty or missing headings
Heading tags with no text, and pages with no h1.
Missing landmarks
Pages without a main region, or with navigation and footers that aren't marked up as such.
No way to skip navigation
No skip link and no landmarks that let keyboard users jump past repeated menus.

What a failure looks like

Content is wrapped in plain divs and the page title is styled text, so screen reader users can't jump to the content or scan the page.

HTML
<!-- Broken: no landmarks, heading is just bold text -->
<div class="content">
  <div class="title">Our treatments</div>
</div>
HTML
<!-- Fixed: a main landmark and a real heading -->
<a class="skip-link" href="#main">Skip to content</a>
<main id="main">
  <h1>Our treatments</h1>
</main>

How it shows in AccessGuard

Each finding names the WCAG criterion, explains the problem in plain words and shows the element that fails, so a developer can find it on the page.

A headings and landmarks finding in AccessGuard with its severity, WCAG criterion, description and the affected HTML element

WCAG criteria

Findings from this check name one of these criteria. How much of each the audit can decide on its own:

WCAG criteria covered by the headings and landmarks check
Criterion Level Automation
1.3.1 Info and Relationships Headings, lists, tables, labels and landmarks in the markup are checked. Structure shown only visually needs a person. A Partly automated
2.4.1 Bypass Blocks A Partly automated
2.4.6 Headings and Labels AA Partly automated

What still needs a person

No automated tool can confirm these. AccessGuard marks related findings as Review, so nobody mistakes them for a pass.

  • Whether heading text describes the section it introduces.
  • Text that looks like a heading but isn't marked up as one.
  • Whether landmarks are labelled well when a page has several of the same kind.

Questions

Is it a failure to skip heading levels?

Skipping a level is a common sign that the structure doesn't match the visual design, and it confuses people who navigate by headings. AccessGuard reports it so you can decide whether the outline needs fixing.

Does every page need one h1?

WCAG doesn't require exactly one, but a single h1 that names the page is the clearest pattern for screen reader users and search engines.

Do I need a skip link if I use landmarks?

Landmarks help screen reader users, but keyboard users without a screen reader can't jump to them. A visible skip link helps both groups.

Check a client page for headings and landmarks issues

The free audit runs this check and every other one. Results in about a minute.