# H1 The page's primary visible heading. Body-side companion to the page title — extractors compare the two when deciding "what is this page" and treat a mismatch as ambiguity. By AgentSite · 2 min read · Updated 2026-05-24 The `<h1>` is the page's primary visible heading — the body-side answer to the question the `<title>` tag declares in the head. Engines and accessibility tools expect one per page and treat the H1 as the most concise statement of what the page is about. A missing or generic H1 weakens every downstream signal. ## What the spec says [MDN's heading element reference](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Heading_Elements) is direct: "A page should generally have a single `<h1>` element that describes the content of the page (similar to the document's `<title>` element)." Multiple H1s are technically allowed by the HTML standard but "this is not considered a best practice." For accessibility, the [W3C WAI page-structure tutorial](https://www.w3.org/WAI/tutorials/page-structure/headings/) describes the practical rule: "Nest headings by their rank (or level). The most important heading has the rank 1 (`<h1>`), the least important heading rank 6 (`<h6>`)." Screen reader navigation, AI extractors, and search indexers all depend on the same hierarchical contract. ## How engines read it The H1 doubles as a structured-data anchor. [Google's Article schema documentation](https://developers.google.com/search/docs/appearance/structured-data/article) notes that the `headline` property "is the title of the article" and recommends keeping it concise. The H1, the `<title>`, and the schema `headline` should agree — the engine that parses all three reads agreement as confidence and disagreement as ambiguity (see [schema-content mismatch](/schema-content-mismatch) for the failure mode). For pages without explicit schema, the H1 is the first body-token an engine reaches when extracting the topic. Agents that snap to the largest visible heading near the top of the page anchor their summary to whatever the H1 says. ## Anti-patterns Three failures show up reliably: 1. **No H1.** The page uses styled `<div>`s or `<p class="hero-title">` instead. The hierarchy contract is broken; some extractors fall back to the title, some give up. 2. **Multiple H1s.** Often a logo wrapped in `<h1>` plus a content H1 — the engine doesn't know which one is the page's topic. Pick one. Reserve `<h1>` for the content heading; mark the logo as `aria-label` on an `<a>`. 3. **H1 ≠ topic.** The H1 reads "Welcome" or "AgentSite" instead of the page's actual subject. The page title says one thing, the H1 says another, the body says a third. Engines flag this as drift and weight all three signals down. The honest pattern: one H1 per page, naming the page's actual topic, matching or closely paralleling the `<title>` and the schema `headline`. ## Where this fits H1 is a Layer 3/4 signal — declared structure that also functions as content. It pairs with [page title](/page-title) (head-side equivalent) and the [direct answer](/direct-answer) lede (the first-paragraph follow-on). The layered place is in [the five layers of AEO](/five-layer-aeo); the failure catalog is in [AEO problems](/aeo-problems).