VellumUp
PricingBlogIntegrationsComponents
Sign inRegister
Back to tools

Heading Structure (H1-H6) Checker

Check a page's full H1-H6 outline for missing or duplicate H1s, skipped heading levels, and empty headings, with the complete heading hierarchy shown in document order.

About this tool

This tool fetches a page once and reads every H1 through H6 heading on it, in the order they appear in the HTML, including headings inside navigation or footer sections since those are still part of what a browser or screen reader sees as the page's real outline. It then checks for the structural problems that actually matter: no H1 or more than one H1, a heading appearing before the H1 (usually a navigation heading using the wrong tag), levels skipped in a way that suggests headings were chosen for visual size rather than real structure, and headings with no usable text. A page returning from a deep subsection back up to a new top-level section is normal outline structure and is not flagged as a skip, only a genuine jump past a level that was never reached is.

Worth being precise about the two most common misconceptions this tool touches. First, multiple H1s: Google's John Mueller has said directly that Google's systems have no problem with multiple H1 headings on a page and that it is a fairly common pattern with HTML5's sectioning elements, so this is not a ranking penalty. It still shows up here because a single, clear H1 remains the established best practice for accessibility and for giving both readers and search engines an unambiguous main topic, not because extra H1s get punished. Second, skipped heading levels: this is a best-practice recommendation tied to WCAG's heading-related success criteria (1.3.1 and 2.4.6), not a hard accessibility failure on its own, skipping a level will not fail an accessibility audit by itself, but it does make a page harder to navigate for someone using a screen reader's heading list to jump between sections, which is the real, concrete reason to fix it.

Explore more free tools

Keyword Density Checker

Check keyword density for a page or pasted text, with one, two, and three word phrase frequency.

E-E-A-T Signal Checker

Check a page for named author, dates, citations, and organization identity signals.

Meta Tags Checker

Check a page's title, description, canonical URL, Open Graph, and Twitter Card tags for issues.

Frequently asked questions

The H1 is meant to describe what the entire page is about, the same role a document's title plays. A page with no H1 leaves that role undefined, and a page with more than one H1 makes it unclear which heading is actually the main topic, both for search engines trying to understand the page and for screen reader users navigating by heading.
A skip is a heading that jumps more than one level deeper than the deepest level already reached earlier in the page, such as an H2 followed directly by an H4 with no H3 anywhere before it. Returning from a deep heading back up to a new, shallower section, such as an H4 followed by a new H2, is normal outline structure and is not a skip, since the outline is not going deeper than it has already been.
A heading tag wrapping only an icon, an image with no alt text, or nothing at all gives a screen reader user an announced heading with no actual content, which is disorienting rather than helpful. It also gives search engines an empty structural signal instead of a real one.
Yes, this is exactly what skipped levels and multiple H1s usually indicate: a heading tag chosen because of how large or bold it renders by default, not because it reflects the page's real content hierarchy. The fix is normally to keep the heading level based on actual structure and use CSS to control how it looks.
No. Like the other tools on this page, it reads the raw HTML returned by the server. A heading added only after client-side JavaScript runs would not be seen here.
No. The address is used only to fetch the page for that one check, and nothing is saved. Only public web addresses can be checked: requests to private or internal network addresses are refused.
No, according to Google directly. John Mueller has stated that Google's systems have no problem with multiple H1 headings on a page and described it as a fairly common pattern, particularly with HTML5's sectioning elements. This tool still flags it, not as a ranking penalty, but because a single, clear H1 is still the established best practice for accessibility and for giving readers and search engines one unambiguous main topic to anchor on.
Not on its own. Skipped levels relate to WCAG's heading success criteria (1.3.1 and 2.4.6) as a best practice, not a strict pass or fail rule by itself, so a single skip will not automatically fail an accessibility audit. The real, practical reason to fix it is screen reader navigation: many screen reader users pull up a list of a page's headings to jump between sections, and a level that jumps unexpectedly makes that list harder to use to understand how the content is actually organized.

Want SEO and GEO content
in your brand voice, automatically?

Try it risk-free — a content plan, keyword research, and up to 5 articles on us.

Say hello

support@vellumup.com

Follow us

Product

PricingFree ToolsShopify App StoreWix App MarketWordPress Pluginnpx vellumup-init

Company

BlogIntegrationsComponentsAffiliates

Integrations

DocumentationWordPressShopifyWebflowWixWebhooksNext.js

Legal

Terms of ServicePrivacy PolicyAccessibility
VellumUp

© 2026 VellumUp. All rights reserved.