
Element Code: PE-033
<main> landmark forces screen reader and keyboard users to wade through your header and nav on every single page instead of jumping straight to the content. Wrap your primary content in one <main> element per page. It takes minutes and it is the single highest leverage accessibility landmark you can add.What the main landmark is
HTML5 gives you a set of landmark elements that describe the shape of a page: <header>, <nav>, <main>, <aside>, and <footer>. The <main> element marks the dominant content of the document, the part that is unique to that page as opposed to the header, sidebar, and footer that repeat sitewide. Assistive technology exposes these landmarks as a navigation menu, so a user can jump between regions the way a sighted user's eye scans the layout.
This check fires when a page has no <main> element and no element carrying role="main". Without it, the page still displays fine visually, but the entire concept of "here is the actual content" is invisible to the tools that rely on structure rather than pixels.
Why this matters more than most a11y flags
Picture a screen reader user landing on your article. If there is no main landmark, their software starts reading from the top of the source: skip link, logo, a full navigation menu, maybe a search box, maybe a cookie banner. On one page that is annoying. Across a browsing session it is a tax paid on every click. A main landmark plus a working skip link lets them press one key and land on the headline. That is the difference between a usable site and one people abandon.
It also powers the "skip to content" link that keyboard-only users depend on. That skip link usually targets the main region. No main element, weaker skip behavior, and now anyone navigating by keyboard has to tab through your whole nav to reach a paragraph.
On the SEO side, do not oversell it. Landmarks are not a documented Google ranking factor. But there are two real connections. First, accessibility overlaps heavily with the semantic structure crawlers use to understand a page, and clean sectioning helps Google separate boilerplate from unique content. Second, accessibility is a legal and reputational exposure in many markets, and automated audits like Lighthouse and axe surface the missing main landmark directly, which means it shows up in the reports your stakeholders read. Fixing it clears a real complaint, not a vanity metric.
Landmark structure, before and after
How to detect it
- Lighthouse: the accessibility audit in Chrome DevTools flags documents that do not contain a main landmark. It is the report most teams already run.
- axe DevTools: the browser extension from Deque lists landmark issues, including a missing or duplicated main region, with the exact element to fix.
- WAVE: the WebAIM tool overlays landmark icons on the page so you can see at a glance whether a main region exists.
- Screaming Frog and Sitebulb: both can extract HTML structure at scale using custom extraction, so you can crawl and count how many templates ship without a
<main>element in one pass. - A screen reader: the ground truth. Open VoiceOver or NVDA, pull up the landmarks list, and confirm "main" appears exactly once.
How to fix it, step by step
- Find where your primary content starts and ends in the template. In most CMS themes this is the content column between the header and the footer.
- Wrap that content in a single
<main>element. Prefer the native tag over<div role="main">; the semantic element is clearer and needs no extra attribute. - Use exactly one main per page. Two main landmarks confuse assistive tech and will trigger a different failure. If you have a legit reason for more than one, hide the inactive ones from the accessibility tree.
- Point your skip link at it. Give the main an
idand make the "skip to content" anchor target that id so keyboard users land inside it. - Keep header, nav, and footer content outside the main. Main is for what is unique to this page, not the sitewide furniture.
- Re-run Lighthouse or axe and confirm the flag clears and the landmark reads correctly in a screen reader.
Reference: the core landmarks
| Element | Purpose | Per page |
|---|---|---|
<main> | Primary unique content of the page | Exactly one |
<header> | Top banner, logo, intro content | One top level |
<nav> | Major navigation blocks | One or more, labeled |
<aside> | Related but secondary content | Zero or more |
<footer> | Sitewide footer content | One top level |
Do and do not
- Wrap the page's unique content in one native
<main>. - Give main an id and point the skip link at it.
- Keep header, nav, and footer outside the main region.
- Verify with a real screen reader landmarks list.
- Fix it once in the shared template so every page benefits.
- Ship two main landmarks on one page.
- Stuff nav or footer content inside main.
- Reach for
role="main"on a div when the tag exists. - Assume a visual layout implies structure for assistive tech.
- Treat this as cosmetic; keyboard users feel it every click.
What good looks like
A clean page has header, nav, then exactly one <main> holding the content that is unique to that URL, followed by the footer. The skip link jumps straight into main, a screen reader lists "main" once in its landmarks menu, and Lighthouse and axe both pass the landmark check. Do it in the template and the whole site inherits the fix at once.
FAQ
Does adding a main landmark help SEO rankings?
Can I have more than one main element?
Is <main> the same as <div role="main">?
Where exactly should main start and end?
We audit structure, landmarks, crawlability, and indexation together and hand you a ranked fix list.
Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.
About SEO ProCheck
Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.
Work With Me
Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.







