Heading Structure (H1–H6): SEO Best Practices

Headings are the skeleton of your content. They break a page into digestible sections, signal hierarchy to search engines, and act as a navigation map for users and assistive technology alike. Getting your heading structure right is one of the highest-impact, lowest-effort on-page SEO wins available. This guide covers everything from the six heading levels to the famous "one H1" debate and the mistakes that quietly sabotage rankings.

1. What Are Heading Tags?

HTML provides six levels of heading elements, from <h1> (the most important) down to <h6> (the least important). They are designed to express the structural importance of the content that follows them — not to make text big or bold. Think of them like the headings and sub-headings in a book or a research paper.

  • <h1> — The main title of the page. It describes the overarching topic, like the title on a book's cover.
  • <h2> — Major section headings, like the chapters of that book.
  • <h3> — Sub-sections nested inside an H2.
  • <h4> to <h6> — Increasingly granular sub-points. These are used rarely on most pages; if you find yourself reaching for an H5 or H6, your content may be too deeply nested.

Different consumers of your page use these tags in different ways:

  • Browsers apply default styling (larger, bolder text) and expose headings to the accessibility tree.
  • Screen readers let users pull up a list of all headings and jump directly between them. For a blind user, a clean heading outline is the equivalent of a sighted user visually skimming the page.
  • Search engines parse the heading hierarchy to understand the topical structure of your content and the relationships between sections.

2. Why Headings Matter for SEO

Headings are not the single most powerful ranking signal, but they punch well above their weight because they influence so many things at once.

  • Content structure & context: A logical heading tree tells crawlers how your page is organized and which keywords describe which sections. It helps Google build a precise understanding of what each part of the page covers.
  • Featured snippets & rich results: Google frequently pulls the text under a well-phrased heading — especially question-style H2s and H3s — to populate featured snippets, "People Also Ask" boxes, and jump-to links. A heading like "How long should a title tag be?" is snippet bait.
  • Accessibility (a11y): A correct hierarchy is a core requirement of WCAG. Users navigating by keyboard or screen reader rely on headings to move through a page efficiently. Accessibility and SEO reinforce each other constantly.
  • UX & scannability: Most visitors scan rather than read. Clear headings let them find what they need fast, which reduces bounce rates and increases time on page — behavioral signals that correlate with better rankings.

3. The H1 Tag: How Many Should You Have?

This is one of the most enduring debates in technical SEO. The classic rule, taught for over a decade, is simple: one H1 per page. The H1 is the page's headline, and just as a newspaper article has a single headline, a web page should have a single primary heading.

Then HTML5 arrived and complicated things. HTML5 introduced sectioning elements (<article>, <section>, <aside>) along with a proposed "document outline algorithm" that would allow multiple H1s — one per section — each scoped to its own context. In theory, every <section> could start with an H1.

Here is the catch: that outline algorithm was never actually implemented by browsers or screen readers. It was eventually removed from the HTML specification. So while the markup may validate, assistive technology still treats every H1 as a top-level heading, which can create a confusing, flat outline for screen-reader users.

Google's stance: Google has publicly confirmed that multiple H1s are technically fine — their systems will not penalize you for having more than one. However, Google also recommends a single, clear H1 as best practice because it most reliably communicates the primary topic of the page.

Pro Tip: Rank-O-Saur visualizes the full heading tree of any page in a clean, indented outline and instantly flags missing or extra H1 tags — so you can spot a stray second H1 or a page with no H1 at all before it ever costs you rankings.

The pragmatic, future-proof recommendation: use exactly one H1 that describes the whole page, then structure everything else with H2–H6. You get the SEO clarity of the classic rule and avoid the accessibility pitfalls of the abandoned HTML5 outline.

4. Building a Logical Hierarchy

The single most important rule of heading structure is this: never skip levels going down. Headings should nest like an outline. An H3 belongs underneath an H2; an H4 belongs underneath an H3. You should not jump from an H1 straight to an H4 simply because you like how the H4 looks.

You can jump back up multiple levels (e.g., close an H4 sub-section and start a new H2), because that signals you are starting a new major section. It is only skipping downward that breaks the outline.

Good — a clean, nested outline:

H1: Complete Guide to Composting
  H2: Why Compost?
  H2: Types of Composting
    H3: Hot Composting
    H3: Cold Composting
    H3: Vermicomposting
  H2: How to Start a Compost Bin
    H3: Choosing a Location
    H3: What to Add

Bad — skipped levels and a broken outline:

H1: Complete Guide to Composting
  H4: Why Compost?            <-- skipped H2 and H3
  H2: Types of Composting
    H5: Hot Composting        <-- skipped H3 and H4
  H3: How to Start a Bin      <-- H3 with no parent H2

In the bad example, a screen-reader user hears a hierarchy that makes no sense, and a crawler receives muddled signals about which topics are sub-topics of which. The fix is almost always to match the heading level to the content's logical depth, then style it with CSS afterward.

5. HTML Code Example

Here is what a well-structured article looks like in real HTML. Note the single H1, the H2s for major sections, and the H3s nested logically beneath them.

<article>
    <h1>The Beginner's Guide to Home Espresso</h1>
    <p>An introduction to pulling great shots at home.</p>

    <h2>Choosing Your Equipment</h2>
    <p>...</p>
        <h3>Espresso Machines</h3>
        <p>...</p>
        <h3>Grinders</h3>
        <p>...</p>

    <h2>Dialing In Your Shot</h2>
    <p>...</p>
        <h3>Grind Size</h3>
        <p>...</p>
        <h3>Dose and Yield</h3>
        <p>...</p>

    <h2>Common Troubleshooting</h2>
    <p>...</p>
</article>

Caution: Never choose a heading level based on how big or small the default text looks. If an H2 looks "too large" for your design, do not downgrade it to an H4 to shrink it — that silently corrupts your document outline. Keep the semantically correct level and resize it with CSS (e.g., h2 { font-size: 1.4rem; }).

6. Best Practices

  1. Write descriptive, self-explanatory headings: A reader should be able to understand the structure of your whole page just by reading the headings in order. "Pricing" beats "More info"; "How to Reset Your Password" beats "Step 3".
  2. Be keyword-rich but natural: Headings are a great place to include your target keywords and the questions your audience is asking — but write them for humans first. Forced, robotic phrasing helps no one.
  3. Use one unique H1 that matches search intent: Your H1 should clearly state what the page delivers and align with the title tag and the query you want to rank for. It does not need to be identical to the title tag, but they should tell the same story.
  4. Style with CSS, structure with HTML: Headings define meaning; CSS defines appearance. Keep those two concerns separate so your outline stays valid regardless of how the page is styled.
  5. Keep the hierarchy shallow: Most pages need only H1, H2, and H3. Reaching H5 or H6 often signals that content should be split into separate pages or sections.

7. Common Mistakes to Avoid

  • Multiple competing H1s: Two or more H1s describing different things dilute the page's primary signal and confuse the outline. Pick one.
  • Skipping levels (H1 to H4): Jumping straight from an H1 to an H4 leaves gaps in the hierarchy and breaks screen-reader navigation. Step down one level at a time.
  • Empty headings: An <h2></h2> with no text — often used as a spacer or to hold a background image — is announced as a meaningless, empty heading by screen readers and wastes a structural slot.
  • Using headings purely for visual size: Wrapping ordinary text in a heading tag just to make it bigger (or, conversely, using a tiny heading level to shrink real headings) corrupts the outline. Use CSS for sizing.
  • Keyword stuffing in headings: Cramming the same keyword into every heading (<h2>Cheap Running Shoes, Buy Running Shoes</h2>) reads as spam to both users and search engines and can hurt more than it helps.
  • No H1 at all: A page with no H1 forces search engines to guess the main topic and leaves assistive-technology users without a starting anchor. Every page should have exactly one.
Christoph Hein, Head of SEO and search consultant
About the Author

Christoph Hein

Head of SEO at Popken Fashion Group & independent Search Consultant

Christoph has spent 10+ years in search, currently steering organic strategy for 5 fashion brands across 13 countries and more than 30 domains. Alongside his in-house and consulting work, he founded niche content portals such as Angelmagazin.de and BaristaCompass.com, and built the Rank-O-Saur extension to make technical SEO audits effortless. Every guide here is grounded in hands-on, data-driven practice rather than theory.