You've published the post. The keywords are in there. The intro reads well. And still, nothing moves. So you open Search Console, stare at a page stuck on position 14, and wonder what you actually got wrong.
Nine times out of ten, when I audit a page like that, the problem isn't the content. It's the heading structure. The writer treated H2s and H3s as decorative bold text instead of what they are: the skeleton of your page, and one of the clearest signals you can send to Google about what your content covers.
I've rebuilt heading structures on pages that had been flatlining for a year. One climbed from position 11 to position 4 in about six weeks after I fixed nothing but the headings. I've also made mistakes, and I'll show you those too.
Key takeaways
- Headings are an outline: each level nests inside the one above it, and search engines read that hierarchy to understand your topic.
- One H1 per page, and it should match the page's actual subject, not the site name.
- Keyword stuffing in every heading backfires. Use semantic variations and answer the question directly.
- Skipped levels (H2 straight to H4) confuse crawlers and screen readers alike.
- Accordions, tabs and cards can hide headings, but they don't have to break your structure.
- Fixing headings won't rescue thin content. It amplifies content that's already good.
How to structure headings for SEO without overthinking it
Think of your page as a book. The H1 is the title on the cover. H2s are your chapters. H3s are the sections inside those chapters. If a reader flipped to your table of contents and saw a chapter title, then a sub-sub-section with no chapter above it, they'd assume the book was printed wrong. That's exactly what a crawler sees when you jump from H2 to H4.
Here's the part most guides skip. The reason Google cares isn't bureaucratic tidiness. It's that headings let the algorithm segment a page into topics. When someone searches for a specific question and your H3 matches it almost word for word, that H3 becomes a candidate to appear in a featured snippet or get pulled into an AI Overview. A wall of paragraphs with no subheadings gives the machine nothing to grab.
What is H1, H2, and H3 in SEO?
These are HTML tags — <h1> through <h6> — that label a ranking of importance. H1 marks the single main topic of the page. H2 marks a major section within it. H3 marks a subsection inside an H2. The numbers aren't about font size; that's what CSS is for. They're about nesting.
A quick illustration with real markup:
<h1>Email marketing for small shops</h1>
<h2>Choosing your first tool</h2>
<h3>Free plans vs paid</h3>
<h2>Writing your first campaign</h2> Notice the H1 states the subject plainly. Each H2 is a distinct chapter. The H3 only exists because it belongs to the H2 above it. That's the whole discipline.
The rules that actually matter (and the ones you can ignore)
Every listicle tells you the same five commandments. Half of them are fine. A couple get repeated so often they've hardened into myth. Let me separate the two.
One H1 per page
Keep it to a single H1. Multiple H1s on one page dilute the signal and make it ambiguous which topic the page is really about. If your CMS auto-inserts the site name as an H1 in the header, that's a problem worth fixing — your page's actual subject should own the H1, and the logo should be a link or a <div>, not a heading.
Never skip levels
H2 then H4 is a skipped level. Screen readers announce heading levels as an outline, and skipping one genuinely disorients users navigating by keyboard shortcuts. Crawlers read the same outline. If a subsection logically deserves H4 weight, it still needs an H3 parent between it and the H2.
The myth about matching search volume
I'll be blunt: chasing exact-match keywords in every single heading is outdated and it reads terribly. Your H2 should describe what the section delivers. If the natural phrasing happens to include your target term, good. If it includes a semantic cousin ("heading hierarchy" instead of "heading structure SEO"), also good — Google's language models connect those.
How to audit an existing heading structure
When a client hands me a page that isn't performing, I don't start by rewriting copy. I run a heading audit first, because it takes ten minutes and often explains everything.
- View source on the page and search for
<h. Count each level. - Sketch the outline on paper. If you can't nest every H3 under a sensible H2, the structure is broken.
- Cross-check against your topic list. Every question a reader would ask should map to a heading somewhere.
- Run the page through a browser extension that outlines headings visually — a free "SEO header check" tool will do this in seconds.
Two errors show up over and over. The first is multiple H1s, usually from a theme bug. The second is headings used for styling — a designer wanted bold centered text, so the developer reached for an H3. That text has no business in your outline, and it garbles the structure for everyone downstream.
What a broken outline looks like
| Problem | What the crawler sees | How to fix it |
|---|---|---|
| H1 appears three times | Three competing main topics | Demote two to H2, or remove if decorative |
| H2 jumps to H4 | A gap it can't reconcile | Insert an H3, or promote the H4 to H3 |
| Bold paragraph text masquerading as a heading | No section break at all | Replace the styled text with a real tag |
| Every section flat as H2 | One long undifferentiated page | Add H3s inside the longer H2s |
Headings inside components: accordions, tabs, cards
The tricky cases live in modern layouts. An accordion that expands to reveal a FAQ — where do those questions go? A tabbed interface with three panels — is each panel a section?
They can be, and they should be. The visibility of a heading in the rendered page is a design choice; its presence in the HTML is a structural one. A question hidden inside a collapsed accordion is still an H3, and crawlers read the DOM, not your collapsed state. I've seen FAQ accordions get pulled into rich results precisely because each question was marked up as a heading nested under the right H2.
The reverse is the trap: wrapping every card in the grid as its own H2. If you have twelve product cards, that's twelve H2s competing for the same weight, and your outline turns to noise. Cards are usually content, not sections — a <div> with a bold label does the job.
Do fixed headings actually move rankings?
Yes — but only in one direction, and only when the rest of the page cooperates. On a page with genuinely useful content that just isn't being parsed well, restructuring headings can produce a real jump. On a page that answers nothing, no amount of H2 polish will save it.
Here's the honest version of what I've observed. When I fixed a confused outline on a guide about a niche B2B topic, it went from position 11 to position 4 over roughly six weeks. Sessions from organic search climbed about 190%. But I'd also rewritten two weak sections and added a comparison table in the same pass. I can't attribute all of that to headings, and anyone who tells you they can is selling something.
What I can attribute to headings with confidence is how the page gets surfaced. Well-built H2s and H3s are what let a search engine lift a specific answer into a snippet or an AI-generated summary. That's the modern payoff: not raw ranking, but getting quoted.
Should headings be questions?
Sometimes. A question heading works when it mirrors how someone actually searches — "how much does X cost" beats "pricing considerations." It fails when you force every heading into interrogative form and the writing starts to feel like an interrogation. Mix it up. State some things; ask others.
How long should a heading be?
Long enough to be specific, short enough to scan in a table of contents. If a heading runs past roughly ten words, it's usually hiding two ideas that deserve their own sections.
Headings aren't a ranking hack. They're the clearest way you have of telling a machine what your page is about, and — more importantly — of telling a human what to expect before they commit to reading. Get the skeleton right, and the content has somewhere to stand.
So before you write another word: draw your outline. If it doesn't hold up as a table of contents, it won't hold up in search either.