H1 and Heading Structure: What an Audit Should Flag
What an on-page SEO audit should flag for H1 and headings: missing or multiple H1s, skipped levels, long pages without subheads, and why one clear topic beats rigid doctrine.
You will be able to read H1 and heading flags on a one-page SEO audit, fix the ones that hurt clarity, and avoid treating “exactly one H1” as a magic ranking rule.
AGNURA AI Assistant treats a missing or multiple H1 as High, skipped heading levels as Low, and long pages with no H2–H4 as Medium. Those rules help structure and scanning. They are not Google’s ranking formula.
Hub: What Is an On-Page SEO Audit?. Checklist home: On-Page SEO Checklist for One Page.
When this applies
- An audit flagged
h1-missing,h1-multiple,heading-skip, orheadings-no-subheads - You are cleaning a landing page, article, or product URL before publish
- You want one clear page topic without fighting every template quirk blindly
Prerequisites
- The live page open in Chrome (wait for SPA content to paint)
- Access to edit headings, or notes for the owner who can
- Optional: AGNURA SEO Analysis on the tab (Run and Export an AGNURA SEO Analysis)
Direct answer
- Decide the one primary topic of the URL.
- Put that topic in a clear H1 (and keep title aligned; see Title Tags and Meta Descriptions).
- Use H2/H3 for sections; avoid jumping H1 → H3 with no H2 when you can help it.
- On long pages, add real subheads so scanners can jump.
- Fix High H1 issues first; treat hierarchy skips as polish unless the outline is confusing.
- Do not rewrite a readable page only to satisfy a rigid “one H1 forever” myth if the CMS already exposes multiple decorative H1s. Prefer demoting extras when you control the markup.
What AGNURA flags today
| Issue ID | Severity | What it means | Typical fix |
|---|---|---|---|
h1-missing | High | No non-empty H1 on the page | Add one H1 that states the page topic |
h1-multiple | High | More than one H1 | Keep one primary H1; demote others to H2+ |
heading-skip | Low | Heading levels skip (e.g. H1 then H3 with no H2, or a gap after a higher level appeared) | Nest in order: H1 → H2 → H3 |
headings-no-subheads | Medium | About 300+ words and zero H2–H4 | Add section H2/H3s |
Passed examples when clean: h1-ok, heading-hierarchy-ok, headings-subheads-ok (subheads only evaluated on long pages).
Keyword rules can also note “keyword not in H1” when you set or auto-detect a focus phrase. That is a separate placement check, not a heading-structure rule.
Step-by-step
1. Name the page topic in plain words
Write one line: “This URL is about ___.”
If you cannot finish the line, the H1 will not save you. Fix the page purpose first.
Expected result: A topic you can put in both title and H1.
2. Check for a real H1
In DevTools or the audit:
- Is there an
<h1>with visible text? - Is it the main headline users see, or a hidden/logo abuse?
Missing H1: Add one clear heading that matches the topic. AGNURA advice: “Add one clear H1 that matches the page topic.”
Expected result: Visitors and the audit see a primary heading.
3. Handle multiple H1s without overstating doctrine
AGNURA flags multiple H1s as High and recommends a single H1 with extras demoted. That is a practical audit rule for clear outline and consistent reports.
What to avoid overstating:
- “Google penalizes every second H1” is not a claim this article (or AGNURA) makes
- HTML patterns and CMS themes sometimes emit more than one H1
- What matters for users is one clear primary topic, not winning a heading purity contest
Practical order:
- If you control the template, keep one content H1.
- Demote nav/footer/card titles that were wrongly marked H1.
- If a third-party block injects an extra H1 you cannot change today, note it, fix what you can, and do not block launch on Low polish elsewhere while the page topic is still clear.
Expected result: One intentional primary H1 when markup is under your control.
4. Build sections with H2 and H3
Use H2 for major sections. Use H3 under an H2 for subsections. Keep the outline readable if you strip all CSS.
AGNURA’s heading-skip (Low) fires when levels appear with a gap, including the common case H1 present, no H2, but H3 present.
| Outline | Audit tendency |
|---|---|
| H1 → H2 → H3 | Clean |
| H1 → H3 (no H2) | heading-skip |
| H2 without any H1 | May also look odd; fix missing H1 first |
Expected result: A skimmable outline; Low skip flags cleared when easy.
5. Add subheads on long pages
If the main content is roughly 300 words or more and there are no H2–H4 headings, AGNURA raises headings-no-subheads (Medium).
Fix: break the wall of text into labeled sections. Subheads should describe the section, not repeat the H1 five times.
Expected result: Long guides and product stories become scannable.
6. Align H1 with title and body
| Check | Pass looks like |
|---|---|
| H1 vs title | Same topic; wording can differ slightly |
| H1 vs first screen | Users see the same promise |
| H1 vs body | Claims in the H1 show up in the content |
| Optional focus phrase | Appears in H1 only when natural |
Expected result: No bait-and-switch between SERP title and on-page H1.
7. Re-run the audit after publish
Hard-refresh, run SEO Analysis again, confirm High H1 issues are gone. Accept a remaining Low heading-skip only if the outline is still clear and a template quirk is documented.
Common failures and fixes
| Problem | Likely cause | Fix |
|---|---|---|
h1-missing | Logo image only; heading is a <div> | Use a real <h1> with text (or accessible text) |
h1-multiple | Theme + page builder both output H1 | Demote builder chrome; one content H1 |
heading-skip | Designer jumped to H3 for style size | Style with CSS; keep semantic H2 |
headings-no-subheads | Long blog with no section labels | Add H2s per section |
| SPA shows H1 late | Audit ran before paint | Wait for load; re-run |
| “We must have exactly one H1 or we won’t rank” | Myth stacking | Aim for clarity; use AGNURA’s single-H1 rule as a quality default, not a ranking guarantee |
Verification checklist
- Page topic stated in one sentence
- At least one meaningful H1 when the page should have a primary title
- Extra H1s demoted when you control markup
- H2/H3 outline matches the content sections
- Long pages have subheads
- H1 agrees with title and visible hero
- High issues fixed before chasing Low skips
- Audit re-run on the live URL
When to escalate
- Design system forces multiple H1s sitewide: fix the component library
- Accessibility review needed for heading order on complex apps
- Legal pages with locked markup: document exceptions; fix what you own
How AGNURA helps this job
| Step | Without AGNURA | With AGNURA |
|---|---|---|
| Spot missing / multiple H1 | Manual DOM review | High h1-missing / h1-multiple |
| Spot skipped levels | Eye-scan outline | Low heading-skip |
| Spot long walls of text | Guess | Medium headings-no-subheads at ~300+ words with no H2–H4 |
| Score impact | N/A | High penalties matter more than Low skips (How to Read an SEO Score Without Chasing 100) |
Compared with common alternatives
| Approach | Fit |
|---|---|
| “One H1 or fail SEO” folklore | Overstates ranking certainty |
| Ignore headings entirely | Hurts scanning and outline clarity |
| Full-site crawler heading reports | Scale; still verify on the live URL |
| AGNURA current-page rules | Fast flags + severity; not a Google score |
Limits (product-true)
- One-H1 preference is an audit convention for clarity, not a published Google “must” ranking factor in AGNURA’s claims
- Heading-skip detection is heuristic from which levels appear on the page
- SPA timing can under-count headings until the DOM is ready
- Audit is one URL, not a sitewide template crawl
- SEO Analysis does not use managed AI for these checks
Related guides
- What Is an On-Page SEO Audit?
- On-Page SEO Checklist for One Page
- Title Tags and Meta Descriptions: Practical Length and Intent Checks
- How to Read an SEO Score Without Chasing 100
- Run and Export an AGNURA SEO Analysis
Soft next step
Open one important URL, list every H1 in DevTools, then run AGNURA SEO Analysis and compare High vs Low heading flags before you change CSS-only sizing. Install when you want that on the tab:
Try AGNURA in Chrome
Draft in Gmail, LinkedIn, WhatsApp, and Reddit. You review every message before send.
Add to Chrome