Heading Tag Checker
Short answer
Verify heading hierarchy (H1-H6) for proper structure and SEO.
What it does not do: It checks order, presence and empty headings, not heading length, wording or ARIA landmarks, and it reads the raw HTML, so headings added by scripts are not seen.
What It Does
Lists your page's headings in order and checks three things: exactly one H1, no skipped levels (such as an H2 followed by an H4) and no empty headings. Returns a score, the heading outline and the checks that failed.
Why It Matters
Headings do two jobs. Screen reader users jump between them to find their way around a page, and search engines read them to understand how the content is organized. A missing H1, empty headings or jumps between levels make both harder.
How It Works
-
Enter a page URL or paste its HTML
-
We fetch the live HTML and extract every H1–H6 in document order
-
Validate H1 count, heading order, and empty headings
-
Return a score, the heading outline and the checks that failed
Sample input + output
url: https://rankproof.eu/tools
h1 count: 1 OK
h1 text: "44 Tools. One Platform."
total headings: 56
max depth: H3
skipped levels: none OK
empty headings: 0 OK
H1 44 Tools. One Platform.
H2 SEO Analysis
H3 Title & Meta Description Checker
H3 Heading Tag Checker
… How to read the result
- H1 count (1 in the sample)
- How many H1 headings the page has. Exactly one passes. Several H1s are valid HTML and Google says they are not a problem for search, but the tool expects one, because a single H1 naming the page is clearest for readers and screen reader users.
- H1 text
- The main heading as the tool found it, so you can check it says what the page is about. In the sample it is the heading of the tool catalogue.
- Total headings (56) and maximum depth (H3)
- How many H1–H6 elements the page has and the deepest level used. A long page with many H2s and H3s is normal; the figures only show the shape of the outline.
- Skipped levels (none)
- A heading more than one level deeper than the one before it, such as an H2 followed by an H4, gets a warning: screen reader users who move by heading level may think a section is missing. Going back up several levels, H4 to H2, is fine.
- Empty headings (0)
- Headings with no text, often left by an empty content field or a heading that only holds an icon. Screen readers announce them as blank headings.
- Outline
- The first 40 headings in document order, indented by level, with empty ones marked. Read it as a table of contents: if it does not make sense on its own, the page structure probably does not either.
Who Uses This
-
Content Editor
Check every blog post before publishing for a clean H1 → H2 → H3 structure, which helps readers and screen reader users alike.
-
Accessibility Specialist
Check heading order page by page as part of WCAG 1.3.1 testing.
-
SEO Specialist
Check that each landing page has a single H1 that says what the page is about.
Common problems and how to fix them
-
No H1, or the logo is the H1
Make the page's own title an H1 — the product name, article title or tool name — and mark the site logo up as an image or link, not as a heading. A template that wraps the logo in an H1 gives every page the same main heading.
<header> <a href="/"><img src="/logo.svg" alt="Example Ltd – home"></a> </header> <main> <h1>Running Shoes and Trail Shoes</h1> -
Headings chosen for their size
Pick the level by structure and set the size with CSS. A small-looking sidebar title can still be an H2; a large intro sentence that does not start a section should be a paragraph.
<h2 class="sidebar-title">Related guides</h2> <p class="lead">A larger introduction is a paragraph, not a heading.</p> -
Skipped levels
Change the deeper heading to the next level down (H2 then H3, not H4), or add the missing section heading if content really is missing.
-
Empty headings
Find the template or content block that prints a heading when its field is empty, and print nothing in that case. A heading that holds only an icon needs visible text, or should not be a heading.
-
Headings added by JavaScript
This tool reads the HTML as delivered, so headings that a script renders later are missing from the outline. Render the main content on the server so crawlers that do not run scripts get the structure too.
Frequently Asked Questions
- Should every page have exactly one H1?
- HTML allows more than one, and Google has said multiple H1s are not a problem for search. One H1 that names the page topic is still the clearest choice for readers and screen reader users, and it is what this check expects.
- Can I skip heading levels?
- Avoid it. A jump from H2 to H4 suggests a missing section to screen reader users, and the W3C's accessibility tutorials recommend nesting headings in order.
- Does H1 need the primary keyword?
- An H1 that says plainly what the page is about helps readers and search engines, and it usually contains the main topic. Write it for people first.
- What length is ideal for headings?
- There is no fixed limit. Keep headings short and easy to scan; a very long heading usually means the section should be split. This tool does not measure heading length.
- Does it check ARIA landmarks?
- No — this tool checks heading order and presence only. ARIA landmark roles (main, nav, aside) are a separate check this tool doesn't perform.
Sources
The documentation this tool and the explanations on this page are based on.
- Headings — W3C Web Accessibility Initiative
- Understanding Success Criterion 1.3.1: Info and Relationships — W3C Web Accessibility Initiative
- Understanding Success Criterion 2.4.6: Headings and Labels — W3C Web Accessibility Initiative
- <h1>–<h6>: HTML section heading elements — MDN Web Docs
- SEO Starter Guide: The Basics — Google Search Central