Checks

Heading hierarchy skips

Checks that heading levels on a page descend one step at a time, so an h2 section is never followed directly by an h4 with no h3 in between.

Updated 2026-07-19minorHeadings

What this check looks for

This check reads every <h1>-<h6> element on the page in document order and compares each heading's level against the previous one. If a heading level jumps by more than one step (for example, an h2 followed directly by an h4), it's recorded as a skip and the check warns, listing each skip found. Pages with fewer than two headings report "na" since there's no sequence to evaluate; a page whose headings descend without skipping passes.

Why it matters

Headings form a nested outline — like a table of contents — and skipping a level breaks that structure the same way jumping from "1." to "1.1.1" would in a numbered outline: it's unclear what happened to the level in between. Screen reader users navigate by heading level specifically, and a skip forces them to guess whether they missed a section. AI systems that build a document outline to understand a page's structure rely on consistent nesting to know which content is subordinate to which — a broken hierarchy makes it harder to correctly attribute a fact to its actual section when citing the page.

How to fix it

Insert the missing intermediate level, or renumber the section to remove the gap:

html
<!-- Skips h3 -->
<h2>Product features</h2>
<h4>Battery life</h4>

<!-- Fixed: adds the missing h3 -->
<h2>Product features</h2>
<h3>Battery life</h3>

Treat heading levels as a strict outline depth, not a font-size shortcut — if you want smaller visual text, style it with CSS rather than skipping to a deeper heading tag.

See how your site scores on this check

Run a free scan

See how your site scores on this check.

The free teaser scan checks a sample of your pages — no account, no card.