My Tool Studio
SEOURL-first

Heading Tag Checker (H1 to H6)

This heading tag checker fetches any URL, or reads pasted HTML, and shows every H1 to H6 heading as an indented outline with a count and bar for each level. It flags a missing or hidden H1, more than one H1, skipped levels, empty, long and duplicate headings, headings built with the ARIA heading role, and outlines crowded by menu and footer headings. The title tag sits next to the first H1 for comparison. Editors use it as an H1 checker before publishing, and developers run it after a redesign. Compare two URLs side by side to put a competitor's structure into a content brief, or export the outline as text, Markdown or CSV.

Always freeNo sign upRuns in your browser

How to use

01

Enter the page URL

Paste the address and press Check headings, paste HTML from a draft, or choose Compare two URLs. The tool collects every H1 to H6 and ARIA heading in order, empty ones included.

02

Read the issues list

Check the count per level, the title and first H1 side by side, and the Issues list, which flags missing or multiple H1s, skipped levels, empty headings and headings over 100 characters.

03

Copy or export the outline

Filter levels with the H1 to H6 buttons or hide menu and footer headings. Copy as text or Markdown, or download a CSV or Markdown file of the outline.

Why Heading Tag Checker (H1 to H6)

A good heading outline vs a broken one

A good outline reads like a table of contents: one H1 that names the page, H2s for the main sections and H3s for points inside them. The broken version below is typical of theme and page builder templates, where headings are used for styling rather than structure.

The checker flags every problem on the right: the first heading is not the H1, two levels are skipped, there are two H1s and one heading is empty. The fix is to turn the menu and newsletter headings into plain text, move the H1 to the top of the content and renumber the rest.

Good outlineProblem outline
H1 Cold brew coffee guideH2 Menu (a heading in the site header)
H2 What cold brew isH1 Cold brew coffee guide
H3 Cold brew vs iced coffeeH4 What cold brew is (skips H2 and H3)
H2 How to make itH1 How to make it (a second H1)
H3 Ratio and grindH3 (empty heading around an icon)
H2 How long it keepsH2 Join our newsletter (heading used for styling)

Common questions

What does the heading checker do when a page has two H1 tags?
It lists both in the outline and adds a warning with the count to the Issues list. Google can cope with several H1s, but one clear H1 keeps the page's main topic unambiguous for readers and screen reader users.
How can I extract headings from page HTML without opening devtools?
Enter the URL here, or choose Paste HTML and paste the source, and the tool pulls every H1 to H6 into an indented outline. Copy it as text or Markdown, or download it as CSV, which is faster than searching view-source for heading tags.
Why is a skipped heading level a problem for SEO?
Jumping from H2 to H4 breaks the outline that screen readers and crawlers build from your headings, so people navigating by headings lose track of what belongs where. It will not sink rankings on its own, but it is a quick fix. The checker names the heading where each skip happens.
Does the heading structure checker read JavaScript-rendered headings?
No. It parses the HTML the server returns. Headings added only by JavaScript after the page loads do not appear, so an empty outline on a single-page app usually means the headings are rendered in the browser.
Is it fine for a page to have zero H1 headings?
A page can still rank without one, but you lose a clear signal about its topic, and screen reader users lose the obvious starting point. The checker reports a missing H1 as an error. Promote your most descriptive heading to H1.
Should my H1 match the title tag?
They should cover the same topic but do not need to be identical. The title tag is written for search results and often includes your brand, while the H1 is written for readers already on the page. The checker shows both with character counts so you can compare them.
Why does the heading checker flag an empty heading?
An empty heading tag has no text and no image alt text, so screen readers announce a heading with nothing in it. They often come from page builders or icon-only elements. Remove the tag or give it real text.
What do the colors in the heading outline mean?
H1s use the brand color, H2s are green, H3s are amber and deeper levels stay gray. The colors only make levels easier to tell apart. Small labels after a heading mark a skipped level, an ARIA heading, a hidden heading, or a heading in the header, nav, aside or footer.
Can I compare my heading outline with a competitor's page?
Yes. Choose Compare two URLs, enter your page and theirs, and press Compare. The outlines sit side by side with counts per level and an issue count for each. Copy as Markdown under either outline gives you a version ready to paste into a content brief.

More SEO tools

View all