Screpy - AI SEO Audit Tool

Heading Order: Fix Skipped Heading Levels

Use a logical H1-H6 hierarchy so people and assistive technology can understand page structure. Learn how to find and fix skipped heading levels.

Reviewed by Screpy Editorial Team

What the warning means

A heading-order warning appears when heading levels do not describe a logical content hierarchy. A common example is moving from an H2 directly to an H4 because the H4 has the desired visual style.

Headings communicate the organization of a page. Browsers and assistive technologies can use them for in-page navigation, so the level should describe the section structure rather than the font size. The W3C guidance recommends nesting headings by rank and using CSS for visual presentation.

A correct heading hierarchy

<h1>Technical SEO audit</h1>
<h2>Crawling issues</h2>
<h3>Blocked pages</h3>
<h3>Redirect chains</h3>
<h2>Page quality</h2>
<h3>Thin content</h3>

The H1 describes the page topic. Each H2 starts a main section, and each H3 belongs to the H2 above it. A new H2 may follow an H3 when the previous subsection ends.

A hierarchy that needs review

<h1>Technical SEO audit</h1>
<h3>Crawling issues</h3>
<h5>Blocked pages</h5>

The visual result may look acceptable, but the document outline skips levels and makes the relationship between sections unclear.

How to fix heading order

  1. Identify the main page topic and use the page-level heading component intended for it.
  2. List every heading in DOM order, not only the headings visible on a desktop screenshot.
  3. Assign H2 to main sections, H3 to subsections inside an H2, and continue only when the content is genuinely nested.
  4. Change CSS classes or component variants to control appearance instead of choosing a heading level for styling.
  5. Review reusable cards, accordions, modals, sidebars, and footer components because they can introduce unexpected levels.
  6. Test the final page with a heading-outline tool and a screen reader or accessibility inspector.

A page can use more than one H1 in modern HTML, but one clear page-level H1 is usually the simplest and most consistent pattern for templates. The important requirement is a meaningful hierarchy, not an arbitrary heading count.

Common edge cases

  • A heading hidden with CSS still exists in the accessibility tree unless it is removed correctly.
  • Text that only looks like a heading is not a semantic heading.
  • Empty headings create navigation stops with no useful label.
  • Component libraries may render a different HTML element than their visual name suggests.
  • Changing a heading level can affect anchor links, table-of-contents logic, and automated tests.

Verify the result

Re-crawl the page, inspect the generated HTML, and confirm that headings describe the same hierarchy at every responsive breakpoint. Read the W3C page structure and headings tutorial for accessible examples.

Verify the heading hierarchy on the live page.

Analyze the URL after editing its headings to confirm the H1 and heading structure returned by the live page. If the problem repeats across a template, use Website Audit to find the affected URLs as one site-wide pattern.

  • Keep one clear page-level H1 that describes the main subject.
  • Use headings for document structure, not only to make text look larger or smaller.
  • Inspect the rendered DOM and confirm each subsection follows its nearest parent heading logically.

How to diagnose it

  • Inspect the rendered heading outline, not only the source component. Slots, CMS content, and responsive variants can change the final order.
  • Locate each skipped level in context and identify the nearest section it belongs to before changing the tag.

How to fix it

  • Choose heading levels from the document hierarchy and move visual sizing into CSS classes.
  • Keep repeated card titles at the level required by their parent section; do not promote every prominent label to H2.

How to verify the fix

  • Read the final H1–H6 outline in order and confirm that every subsection has a logical parent.
  • Navigate by headings with assistive technology and confirm visible styling did not change unexpectedly.

Limits and false positives

  • A skipped rank can be valid when a reusable component is embedded under different parent levels; test the rendered page before changing the component globally.
  • ARIA heading roles require an accurate aria-level and should not be used merely to imitate heading styles.

Before

<h2>Audit results</h2>
<h4>Broken links</h4>

After

<h2>Audit results</h2>
<h3>Broken links</h3>

Related tasks

Reducing Render-Blocking Resources

In order for your website to work properly, you need to get rid of URLs that hamper the rendering process. Here are a few tips for you!

Monday, November 23, 2020

Reduce Excessive DOM Size

Statements made by Google underline one point: Document Object Model AKA web page should not be on excessive size.

Tuesday, October 27, 2020