PBNLinksHub
Get Started
On-Page SEO ToolsRuns in your browserFree · no sign-up

Heading Structure Analyzer

Paste a page's HTML to map its headings from H1 to H6 in document order. The analyzer highlights skipped levels, missing or repeated H1s, empty headings and sections that run long without a subheading — and lets you copy the outline as text.

Heading Structure Analyzer Paste HTML · analysed in your browser

To get a page's HTML: open it in your browser, right-click → View page source, select all and copy. Want a live fetch instead? Use the SEO Page Analyzer.

Paste a page's HTML to see results.

How to use the Heading Structure Analyzer

  1. Paste the page's HTML

    Page source works for most sites. For JavaScript-heavy pages, copy the rendered HTML from your browser's developer tools.

  2. Read the outline

    Read the headings alone, top to bottom. They should work like a table of contents for the page.

  3. Fix structural flags

    Resolve missing or duplicate H1s and level jumps, and give empty headings real text.

  4. Copy the outline

    Use the copied outline in a content brief or to compare your page with others.

What it checks

H1 usage
Whether there is exactly one H1, none, or several — and whether several are identical (a sign of a duplicated template element).
Level jumps
Places where the outline skips a level, such as an H2 followed directly by an H4.
Empty and image-only headings
Headings with no text, including those containing only an image.
Heading length and repetition
Very long headings and identical heading text at the same level.
First heading
Whether the outline starts with something other than an H1, often a logo or widget heading.
Section length
Long stretches of text between headings, which make pages hard to scan.

Interpreting the results

The outline is indented by level, and rows that jump more than one level are highlighted. Counts per level sit above it.

Multiple H1s are valid HTML and search engines cope with them; the analyzer flags them because a single clear H1 is simpler for readers and assistive technology. Skipped levels matter mostly for accessibility — screen-reader users often navigate by heading — and for keeping your own structure logical. The “long section” note uses a simple rule (more than about 350 words between headings) as a prompt, not a requirement.

Detected marks facts read directly from what you provided. Guidance marks general recommendations based on those facts — rules of thumb, not guarantees or search engine requirements.

Practical guidance

Headings should describe what each section covers, in words a reader would use. A quick test: if you read only the headings, do you understand the page? If they're vague (“Overview”, “More info”, “Why us”), rewrite them to say what's actually there.

Themes are a frequent source of problems — a logo wrapped in an H1 on every page, sidebar widgets using H2s, or a phone number styled as an H4. The first-heading and repeated-H1 checks are designed to catch those. Fix them in the template once and every page improves.

Clear structure also matters when a page is going to host or receive links. An article whose headings match its topic is a more convincing home for a contextual backlink, and a target page with a clear H1 makes the relevance of links pointing to it obvious — see Link relevance. Run the SEO Page Analyzer for a live check of a published page, or the Content Length Analyzer to see word counts per section.

Limitations

  • Only h1–h6 elements count. Text styled to look like a heading (bold, large font) isn't a heading to browsers or search engines.
  • Headings inserted by JavaScript are only seen if you paste the rendered HTML.
  • It checks structure, not quality. A perfectly nested outline can still be vague or unhelpful.

Frequently asked questions

Is it bad to have more than one H1?

Not strictly. It's valid HTML and search engines handle it. One descriptive H1 is still the clearest approach for most pages.

Do skipped heading levels hurt SEO?

There's little evidence they affect rankings, but they make the outline harder to follow for screen-reader users.

Why is my logo showing as a heading?

Some themes wrap the logo in an H1 or H2 on every page. Changing it to a plain element in the header template fixes it site-wide.

Is my HTML uploaded?

No. It's analysed in your browser.

More in On-Page SEO Tools · All 25 free SEO tools