Heading Structure Checker
Check a page's H1–H6 outline from HTML or a pasted document: skipped levels, missing or empty headings, and keyword use.
- Free
- No sign-up
- Runs in your browser
- Updated
Your page
For a live page, open it, press Ctrl + U (Cmd + Option + U on a Mac), and copy everything. Nothing is uploaded.
Main content leaves out the header, menus, sidebar, and footer when the page marks them up with <main> or <article>.
Summary
Paste a page's HTML or a document to see its heading outline and checks.
Checks
Heading outline
How to use the Heading Structure Checker
-
Paste the page or document
Paste the page's HTML source (Ctrl + U, then copy everything), upload an HTML file, or copy a draft from Google Docs or Word and paste it.
-
Add a focus keyword
Optionally enter the keyword the page targets to see whether it's in the H1 and a subheading.
-
Choose what to check
Keep Main content only to skip the header, menus, sidebar, and footer, or choose The whole page.
-
Fix the issues
Start with errors, then suggestions. Select a check to jump to the heading in the outline.
-
Export the outline
Copy the outline as text or Markdown, or download a CSV to share with writers or compare pages.
Example: checking a blog post's heading structure
A guide with a logo H1 in the header, a skipped level, an icon-only heading, and a vague "Read more" heading, checked with the focus keyword "trail running shoes".
<header><h1 class="logo">Northpeak</h1></header>
<main>
<h1>How to Choose Trail Running Shoes</h1>
<h2>What makes a trail running shoe different?</h2>
<h4>Lug depth</h4>
<h2>Cushioning and drop</h2>
<h2><img src="/icons/fit.svg" alt=""></h2>
<h3>Read more</h3>
</main>
H1 How to Choose Trail Running Shoes Keyword
H2 What makes a trail running shoe different? Keyword
H4 Lug depth Skips from H2 to H4, use H3
H2 Cushioning and drop
H2 (empty heading) Empty
H3 Read more Not descriptive
Checks
Error Empty H2
Suggestion Skipped level: H2 to H4
Suggestion H3 isn't descriptive: "Read more"
OK One H1: "How to Choose Trail Running Shoes"
OK The focus keyword is in the H1
OK A subheading mentions the focus keyword
The logo H1 sits in the header, so it's left out when checking the main content. The plural "shoe" in the H2 still counts as the focus keyword.
This heading structure checker shows the H1 to H6 outline of any page and points out the problems in it: skipped levels, empty or vague headings, missing or extra H1s, and repeated headings. Paste a page’s HTML or a Google Docs or Word draft, and you get an indented outline with each issue linked to its heading. Everything runs in your browser, so drafts never leave your computer.
What the heading checker looks for
People skim headings, screen reader users jump between them, and search engines use them to understand each section. The checker looks for:
- H1 checker: whether the page has an H1, whether it has more than one, and whether the first heading is the H1.
- Skipped levels. A jump such as H2 to H4, with the level that would fit instead.
- Empty headings, including headings that hold only an image with empty alt text.
- Vague headings such as “Read more” or “Click here”.
- Repeated headings that make two sections hard to tell apart.
- Hidden headings and long sections of more than 300 words with no subheading.
- Title and keyword checks: whether the H1 and title tag describe the same topic, whether your focus keyword appears in the H1 and a subheading, and whether it’s repeated in too many headings.

How to check the heading tags on a live page
Open the page in your browser, press Ctrl + U (Cmd + Option + U on a Mac) to view its source, select everything, and paste it into the checker. You can also upload a saved HTML file.
By default, the tool checks the main content only. Most themes put the logo, menus, sidebar, and footer outside the <main> or <article> element, and those headings repeat on every page. Choose The whole page to include them, labeled Header, Navigation, Sidebar, or Footer.
If a page is built with JavaScript and its source looks empty, open the developer tools, right-click the <html> element, choose Copy outerHTML, and paste that.
Checking drafts from Google Docs and Word
Copy a draft from Google Docs or Microsoft Word and paste it into the box. The tool reads the Heading 1 to Heading 6 styles and builds the same outline before the article is published. Bold text that only looks like a heading doesn’t count, which is how a CMS will see it too.
Do header tags matter for SEO?
Yes, though much of the usual header tags SEO advice overstates them. Google uses heading tags to understand the topics on a page, so clear, descriptive headings that match what people search for help. The exact markup matters much less. Google’s SEO Starter Guide says that having headings in semantic order is great for screen readers, but from Google Search’s perspective it doesn’t matter if you use them out of order. It also says there is no magic or ideal number of headings on a page. Google’s John Mueller has said for years that several H1s on a page are fine for search.
So the heading structure checker flags a skipped level or a second H1 as a suggestion or note, not an SEO error, because they matter to readers and accessibility rather than rankings. An empty heading is flagged as an error.
| Myth | What’s true |
|---|---|
| A page must have exactly one H1 to rank. | Several H1s don’t hurt rankings. One clear H1 is still easiest for readers, so the H1 checker shows it as a note. |
| Skipping from H2 to H4 is an SEO penalty. | Google ignores heading order. It’s an accessibility issue, flagged by tools such as Lighthouse. |
| More keywords in headings means better rankings. | Repeating the keyword in every heading reads as stuffing. Use it in the H1 and where it fits naturally. |
Why heading structure matters for accessibility
For people who use screen readers, headings are the main way to move around a page. In WebAIM’s Screen Reader User Survey #10 (December 2023 to January 2024), 71.6% of respondents said that navigating through headings is the first thing they do to find information on a long page, and 88.8% found heading levels very or somewhat useful. An empty heading is announced as just “heading level 2”.
Headings also relate to two WCAG success criteria. 1.3.1 Info and Relationships (Level A) asks that text that looks like a heading is marked up as one, and 2.4.6 Headings and Labels (Level AA) asks that headings describe their topic. WCAG doesn’t strictly require headings to be in order, but nesting levels without gaps is the recommended practice, and Lighthouse’s accessibility audit reports headings that skip levels.
Reading the heading outline
The heading structure checker shows every heading indented by level, with its line number, section word count, and any problems. Select a check to jump to its heading.

Use Copy outline for a brief or ticket, Copy as Markdown for a content plan, or Download CSV to compare pages, or your outline with a competitor’s, in Excel or Google Sheets.
Common heading mistakes and how to fix them
- Choosing a level for its size. Picking H4 because it looks smaller causes skipped levels. Choose the level that fits the outline, then change the size with CSS or your theme’s typography settings.
- Logo or site name as the H1. Many older themes wrap the logo in an H1 on every page. Make the page title the H1 and the logo a normal link.
- Icon-only headings. A heading that contains only an image needs alt text, or it’s announced as empty.
- Bold text instead of headings. A bold line looks like a heading but isn’t one, so it doesn’t appear in the outline or help navigation.
- Very long headings. Over about 90 characters, move the detail into the paragraph.
Writing headings people and search engines understand
Good headings work like signposts: short, specific, and in the reader’s words. Put the main topic in the H1 and keep it close to the title tag, since both describe the same page. Use H2s for the main questions or steps, and H3s only for parts of an H2 section. Phrasing some H2s as the questions people actually ask, such as “How long do trail shoes last?”, makes sections easy to find and quote, so the checker counts question headings for you. Answer the question in the first sentence after the heading.
A focus keyword belongs in the H1 and, where it fits naturally, in one or two subheadings. The keyword check tolerates simple plurals, so “trail running shoe” counts for “trail running shoes”, and it warns you when the keyword is in more than 60% of the headings.
Headings in WordPress and other CMSs
In WordPress, the post title is usually the H1 heading tag, so start your content with Heading 2 in the block editor rather than adding another H1. Rank Math and Yoast check subheadings for your keyword, but not the full outline your theme produces, so run the published page through the heading checker. The same applies to Shopify, Wix, Squarespace, and Webflow.
More tools for on-page SEO
Once your heading structure checker results are clean, check how the page appears in Google with the SERP Snippet Preview, set up social previews with the Open Graph Generator, and add structured data with the Article Schema Generator. For images in your headings and content, the Image Optimizer compresses and resizes them in your browser.
Heading Structure Checker FAQ
How do I check the heading structure of a page?
Open the page, press Ctrl + U to view the source, copy everything, and paste it into the heading structure checker. You'll get the H1–H6 outline and a list of issues.
Is it bad to have more than one H1?
Not for Google rankings; Google has said several H1s are fine. One clear H1 is still easier for readers and screen reader users.
Does skipping heading levels hurt SEO?
Google says heading order doesn't matter for Search. Skipped levels can confuse screen reader users, so it's worth fixing for accessibility.
Do header tags help SEO?
Yes, as a way to describe each section clearly. Descriptive headings help Google and readers understand the page; their exact order and count matter much less.
Can I check a Google Doc before publishing?
Yes. Copy the document and paste it into the checker. It reads the Heading 1 to Heading 6 styles and builds the same outline.
Is my content uploaded?
No. The checker runs entirely in your browser, so pasted pages and drafts never leave your computer.
Related tools
SERP Snippet Preview
See your title and meta description as Google shows them on desktop and mobile, with pixel-accurate cut-offs and title checks.
Open Graph & Twitter Card Generator
Create Open Graph and Twitter card tags with live previews for 4 platforms, OG image size checks, and crop guides.
Image Optimizer
Compress, resize, and convert images to WebP in one step, with SEO file names and responsive srcset code. Nothing is uploaded.
Article Schema Generator
Create Article, BlogPosting, and NewsArticle JSON-LD with image checks, author best practices, and correct dates. Auto-fill it from your page.
JSON-LD Validator
Validate JSON-LD against schema.org and Google's rich result rules, find exact syntax errors, and auto-fix common mistakes.
Breadcrumb Schema Generator
Build BreadcrumbList JSON-LD from a URL or your page's HTML, with multiple trails, Google checks, and matching breadcrumb HTML.