Document structure
Landmarks and an unbroken heading order are how an agent builds a map of the page before acting on it.
- Category
- Agent experience
- Standard
- Recommended
Who supports it
ClaudeSupported (announced)
Published 1 Aug 2026 · last checked 9 Oct 2026: Claude API docs: Browser use toolread_page 'Returns the page's accessibility tree as text' (role + accessible name per element, e.g. button "Search"); Claude also uses screenshots. Date is approximate, taken from the toolset version id browser_toolset_20260801; page shows no date. The same read_page tool is exposed by the Claude in Chrome extension.
CopilotPartial support
Published 8 Oct 2025 · last checked 9 Oct 2026: Microsoft Advertising blog: Optimizing your content for inclusion in AI search answers (Krishna Madhavan, Bing)Bing: H1 used to interpret the page; H2/H3 headings define 'where one idea ends and another begins' when AI parses content. About search-answer parsing rather than the accessibility tree; landmarks not mentioned.
ChatGPT AtlasSupported (announced)
Published 1 Sept 2026 · last checked 9 Oct 2026: OpenAI Help Center: Publishers and Developers - FAQHelp Center article shows 'Updated: last month' as of 2026-10-09 (month-only date). Text: 'ChatGPT Atlas uses ARIA tags—the same labels and roles that support screen readers—to interpret page structure and interactive elements.' Explicitly covers 'page structure'.
Gemini in ChromePartial support
Published 5 May 2026 · last checked 9 Oct 2026: Chrome for Developers: Accessibility for agents (Lighthouse Agentic browsing)Chrome team guidance for agents in general ('Agents review the accessibility tree to identify interactive elements'; 'Agents rely on the accessibility tree ... as their primary data model', toolkit blog 2026-06-22). It does not name Gemini in Chrome explicitly, hence partial.
23 others: no evidence yet. See every agent and browser
What it checks
The extension reads the rendered page’s outline in your browser and looks for three problems:
- No
<h1>. The page has no top-level heading. - Skipped heading levels. A heading jumps down more than one level, such as
an
<h2>followed directly by an<h4>. One skip is tolerated; two or more count as a problem. - No
<main>landmark. Neither a<main>element norrole="main"is present.
Headings are read from inside <main> when the page has one, so headings in
the navigation, sidebar and footer do not count against the outline. Hidden
elements are ignored. Multiple <h1> elements are not flagged.
Results
| Status | When |
|---|---|
| Pass | There is an <h1>, at most one skipped level, and a <main> landmark |
| Warn | There is an <h1>, but levels are skipped more than once or there is no <main> |
| Fail | The page has no <h1> |
| Unmeasured | The extension could not read the page (open it in the active tab) |
When levels are skipped, the result lists each offending pair and the heading it follows.
How to fix
Wrap the primary content in <main>, give the page one <h1>, and step heading
levels down one at a time:
<body>
<header>…</header>
<main>
<h1>Blue running shoes</h1>
<h2>Sizing</h2>
<h3>Wide fit</h3>
<h2>Care</h2>
</main>
<footer>…</footer>
</body>
An agent reads the outline as a tree. A jump from <h2> to <h4> makes a
section look like the child of the wrong parent, and without <main> it cannot
skip the navigation and footer to reach the content.
Support by agent and browser
Announced means the vendor’s own docs or announcement say so. Published is the date on the vendor’s own page, where it has one. Checked is the last time our weekly research found that page still saying so.
| Agent | Status | Source |
|---|---|---|
| AI assistants | ||
| Claude Anthropic | Supported (announced) | Claude API docs: Browser use tool Published · Checked read_page 'Returns the page's accessibility tree as text' (role + accessible name per element, e.g. button "Search"); Claude also uses screenshots. Date is approximate, taken from the toolset version id browser_toolset_20260801; page shows no date. The same read_page tool is exposed by the Claude in Chrome extension. |
| Copilot Microsoft | Partial support | partial Microsoft Advertising blog: Optimizing your content for inclusion in AI search answers (Krishna Madhavan, Bing) Published · Checked Bing: H1 used to interpret the page; H2/H3 headings define 'where one idea ends and another begins' when AI parses content. About search-answer parsing rather than the accessibility tree; landmarks not mentioned. |
| AI browsers | ||
| ChatGPT Atlas OpenAI | Supported (announced) | OpenAI Help Center: Publishers and Developers - FAQ Published · Checked Help Center article shows 'Updated: last month' as of 2026-10-09 (month-only date). Text: 'ChatGPT Atlas uses ARIA tags—the same labels and roles that support screen readers—to interpret page structure and interactive elements.' Explicitly covers 'page structure'. |
| Gemini in Chrome Google | Partial support | partial Chrome for Developers: Accessibility for agents (Lighthouse Agentic browsing) Published · Checked Chrome team guidance for agents in general ('Agents review the accessibility tree to identify interactive elements'; 'Agents rely on the accessibility tree ... as their primary data model', toolkit blog 2026-06-22). It does not name Gemini in Chrome explicitly, hence partial. |
No evidence yet23
- ChatGPT
- Gemini
- Perplexity
- Meta AI
- Comet
- Dia
- Edge Copilot Mode
- Claude Code
- Cursor
- Codex
- GitHub Copilot
- Windsurf
- CCBot
- Applebot
- Amazonbot
- Bytespider
- Cohere
- Mistral
- DuckAssist
- Chrome
- Edge
- Firefox
- Safari
Names and marks belong to their owners and are used only to identify products. None of these vendors is affiliated with Sitebulb. Spotted something out of date? Send a correction.
Adoption on the top 100 sites
56 of 100 measured sites implement it
Sites implementing it56
- #1 google.com (with warnings)
- #2 cloudflare.com
- #3 aws.amazon.com (via amazonaws.com)
- #9 microsoft.com
- #16 x.com (via twitter.com) (with warnings)
- #18 linkedin.com
- #24 azure.microsoft.com (via azure.com)
- #26 m365.cloud.microsoft (via office.com)
- #32 github.com
- #33 wikipedia.org
- #37 fastly.com (via fastly.net)
- #39 whatsapp.com (via whatsapp.net) (with warnings)
- #43 netflix.com (with warnings)
- #44 triplinkintl.com (with warnings)
- #50 marketingplatform.google.com (via doubleclick.net)
- #55 wordpress.org
- #56 teams.live.com (via skype.com)
- #57 cloudflare.net (with warnings)
- #60 digicert.com
- #68 zoom.com (via zoom.us)
- #70 sso.myfritz.net (via myfritz.net) (with warnings)
- #71 endpoints.news (with warnings)
- #72 api.whatsapp.com (via wa.me) (with warnings)
- #75 roblox.com (with warnings)
- #76 opera.com
- #81 tiktokv.com (with warnings)
- #84 nginx.org (with warnings)
- #86 msn.com (with warnings)
- #90 vimeo.com (with warnings)
- #95 mozilla.org
- #96 f5.com (with warnings)
- #99 store.epicgames.com (via epicgames.com) (with warnings)
- #101 wordpress.com
- #106 sentry.io
- #107 letsencrypt.org (via lencr.org)
- #109 ui.com
- #114 st.okcdn.ru (via okcdn.ru) (with warnings)
- #116 bitly.com (via bit.ly)
- #117 ipify.org (with warnings)
- #120 samsung.com
- #121 office365.com (with warnings)
- #123 aliyuncs.com (with warnings)
- #128 one.one.one.one (via cloudflare-dns.com)
- #130 registrar-servers.com
- #131 pages.github.com (via github.io) (with warnings)
- #132 dropbox.com
- #135 discord.com (via discord.gg)
- #136 developer.adobe.com (via adobe.io)
- #139 apache.org
- #140 android.com
- #141 nih.gov
- #153 webex.com (with warnings)
- #154 snapchat.com
- #156 godaddy.com
- #158 kaspersky.co.uk (via kaspersky.com)
- #159 firebase.google.com (via crashlytics.com)
Overview
How this rating is worked out8 of 9 points
| Factor | Points | Why |
|---|---|---|
| Vendor support | 2 / 3 | 2 vendors supporting, 2 partly or planned |
| Top-100 adoption | 3 / 3 | 56% of measured sites |
| Spec maturity | 3 / 3 | Published standard |
8 or more points is Established, 5 to 7 is Gaining traction, 2 to 4 is Speculative and under 2 is Stalled. A feature is also Stalled when more vendors have said no than yes. Read the spec.
Community insights
No community insights for this feature yet.
Quotes are from public posts, checked against the original before they appear here. Suggest an insight, or ask for yours to be removed.