The verdict
AI can read you — but the house has slow rooms and bare walls.
Server-rendering is flawless (100% SSR — GPTBot and ClaudeBot get real HTML), and the security baseline is solid. But the homepage is a 739KB shell with no schema and no canonical, 18 of 31 pages answer slower than 2s (peaking at 6.3s), only 29% carry structured data, and your safety & research content is under-linked and uncrawlable-fast.
31 pages
How thorough this audit is
vs SEOptimer's single-page, ~30-check reportSEOptimer grades one URL with black-box letter grades (it stamped anthropic.com's careers page a B, GEO an F — without explaining either). We crawl the whole site, show the math behind every sub-score, scan each page for AI-readability and injection payloads, and hand back the repair code. Same instrument, an order of magnitude deeper — and honest about what only your server logs can answer.
The math — every sub-score, shown
Technical Health 70 = weighted sum of 8 measured sub-scores
no black boxWeights sum to 100; each sub-score is computed from real crawl + header/DNS + Lighthouse lab data — every input is in the per-page table and the sections below. Owner-only signals (server-log crawl frequency, true field-CrUX per page, full index coverage) are excluded from the score, not faked.
Crawlability & discovery — can the bots find everything
AI & search crawler access
1 bot blockedYour robots.txt allows everything and points to one sitemap — so on paper every crawler is welcome. But a live per-bot probe (9 bots × 3 URLs) caught what robots-parsing misses: Bingbot is blocked at the edge — 403 on every request from the Cloudflare WAF, not robots. That silently cuts Bing's index, which grounds Bing Copilot. The other gap: zero crawler-specific rules — you neither manage crawl budget nor explicitly welcome the AI bots that now mediate discovery.
User-Agent: * Allow: / Sitemap: https://www.anthropic.com/sitemap.xml
Discovery files
The sitemap lists 475 URLs — your real index footprint — yet only a handful carry schema or canonical (below). And there's no llms.txt: the file Claude's own ecosystem reads, missing from Anthropic's own domain.
Indexability — clean signals to the index
Canonical
of pages declare a canonical. The other 39% — including the homepage — leave canonicalization to Google's guess.
Heading structure
pages skip a heading level (e.g. H1→H3). 2 pages (/engineering, /claude-corps) have no H1 at all; H1 present on 94%.
Duplicate signals
/responsible-scaling-policy was crawled twice (two URL forms), and 8 pages share boilerplate meta — duplicate signals that dilute the index.
AI rendering — what the bots actually see
Server-side rendering — your strongest plane
SSR 100%All 31 crawled pages serve real HTML before JavaScript runs. This matters more than anything else here: GPTBot, ClaudeBot and PerplexityBot do not execute JavaScript — a client-rendered page returns an empty <div id="root"> and is invisible to them. Anthropic passes this gate cleanly, which is why it gets cited at all.
Oracle signals scored here: sig-ssr-mandate · sig-noarchive-kill · sig-clean-accessibility-tree · sig-copilot-prometheus — all PASS. This is the one area where Anthropic is built right; every other section is upside.
Architecture — where the link equity flows
Internal-link graph
31-page sampleNo orphans is good — but the average hides the problem: the nav links the same ~24 pages everywhere, while your deepest content gets almost nothing.
The under-linked: your defining content is starved
equity gap| Page | Inbound links | Status |
|---|---|---|
| /news/the-anthropic-institute | 1 | starved |
| /responsible-scaling-policy | 2 | starved |
| /news/core-views-on-ai-safety | 2 | starved |
| /features/81k-interviews | 2 | starved |
| /news/claude-opus-4-8 | 3 | thin |
| /research, /company, /careers (nav) | 30 | hub |
Your Responsible Scaling Policy, Core Views on AI Safety and the Anthropic Institute — the pages that define your authority on safety — get 1–3 internal links each, vs 30 for routine nav pages. Google reads that as "not important." Add contextual links from the hubs.
Core Web Vitals & speed
Core Web Vitals — homepage
LCP poorLighthouse lab pass (desktop). The homepage's 4.9s LCP is the drag — a 739KB page with a slow largest-element render. Secondary pages (/product/*) land near 2.0s. CLS and interactivity are clean.
Server response time (TTFB)
18 slow pagesDespite Cloudflare in front, most content pages answer slowly from the Webflow origin: /engineering 6.3s, /product/enterprise 5.6s, /claude/fable 5.4s, /careers 5.0s. The fast pages (home 129ms, /events 87ms) prove the CDN works — the origin/cache config is the issue.
Structured data — the machine-readable layer
Schema coverage 29% — and it's the wrong schema
34 / 100Only 9 of 31 pages carry any structured data, and the only types present are FAQPage / Question / Answer. There is no Organization schema (the entity anchor every AI engine reads), no Article on news/research, no Person for authors, and no BreadcrumbList. The product pages have schema; the homepage, research, news and policy pages have none.
Oracle signals here: sig-schema-three-plus · sig-chunk-schema-combo · sig-faqpage-schema — measured lift from full structured data is +30–40% (Stackmatix, Grade-B). The 30,524-word Constitution and the 9,875-word 81K-interviews study run with zero Article markup — invisible structure to every engine.
Security & technology stack
Transport & headers
74 / 100DNS & email authentication
strongEmail auth is strong — DMARC p=reject with reporting. One tweak: SPF ends in ~all (softfail); move to -all (hardfail) once you've confirmed all senders. The three missing response headers are one Cloudflare Transform Rule away.
Defensive scan — AI prompt-injection (IDPI)
Indirect Prompt-Injection / AI-poisoning scan
31 pages cleanEvery crawled page is scanned for content engineered to hijack an AI that reads it — the December 2025 Unit 42 attack class. anthropic.com is clean: no hidden-text or injection payloads found across 31 pages. No competing AEO/SEO tool runs this scan — it's a defensive layer unique to this audit, and it matters most for the company whose models are the target.
font-size:0 · line-height:0
left:-9999px
opacity:0 · color-match
URL #payloads
Per-page forensic — top issues first
Every page, ranked by issue count
31 pages · click to expand all| Page | Issues | TTFB | KB | SSR | Schema | Canon. | H1 | Skips | Flags |
|---|---|---|---|---|---|---|---|---|---|
| /policy-on-the-ai-exponential | 4 | 4.1s | 138 | ✓ | 0 | ✗ | 1 | 1 | ttfb skip |
| /transparency | 4 | 2.1s | 612 | ✓ | 0 | ✗ | 1 | 0 | weight |
| / (homepage) | 4 | 129ms | 739 | ✓ | 0 | ✗ | 1 | 1 | 739KB skip |
| /engineering | 3 | 6.3s | 140 | ✓ | 0 | ✓ | 0 | 0 | no H1 6.3s |
| /learn | 3 | 4.1s | 105 | ✓ | 0 | ✗ | 1 | 0 | ttfb |
| /news/expanding-project-glasswing | 3 | 3.6s | 125 | ✓ | 0 | ✗ | 1 | 0 | ttfb |
| /news/core-views-on-ai-safety | 3 | 2.8s | 226 | ✓ | 0 | ✗ | 1 | 0 | 6,984 words, no schema |
| /claude-corps | 3 | 469ms | 198 | ✓ | 0 | ✗ | 0 | 0 | no H1 |
| /constitution | 3 | 376ms | 685 | ✓ | 0 | ✗ | 1 | 0 | 30,524 words, no schema |
| /news/claude-opus-4-8 | 3 | 226ms | 202 | ✓ | 0 | ✗ | 1 | 1 | skip |
| /features/81k-interviews | 3 | 218ms | 696 | ✓ | 0 | ✗ | 1 | 0 | 696KB |
| /events | 3 | 87ms | 216 | ✓ | 0 | ✗ | 1 | 2 | 2 skips |
| /careers | 2 | 5.0s | 170 | ✓ | 1 | ✓ | 1 | 1 | 5.0s |
| /economic-futures | 2 | 4.9s | 122 | ✓ | 0 | ✓ | 1 | 0 | ttfb |
| /responsible-scaling-policy (crawled 2×) | 2 | 4.1s | 177 | ✓ | 0 | ✓ | 1 | 0 | dup-URL |
| /responsible-disclosure-policy | 2 | 2.5s | 125 | ✓ | 0 | ✓ | 1 | 0 | no schema |
| /company | 2 | 2.3s | 125 | ✓ | 0 | ✓ | 1 | 0 | no schema |
| /news | 2 | 556ms | 386 | ✓ | 0 | ✓ | 1 | 1 | skip |
| /research | 2 | 527ms | 240 | ✓ | 0 | ✓ | 1 | 2 | 2 skips |
| /news/the-anthropic-institute | 2 | 101ms | 124 | ✓ | 0 | ✗ | 1 | 0 | 1 inbound link |
| /policy | 2 | 94ms | 161 | ✓ | 0 | ✓ | 1 | 1 | skip |
| /product/enterprise | 1 | 5.6s | 138 | ✓ | 1 | ✓ | 1 | 0 | 5.6s |
| /claude/fable | 1 | 5.4s | 360 | ✓ | 1 | ✓ | 1 | 0 | 5.4s |
| /claude/sonnet | 1 | 4.1s | 475 | ✓ | 1 | ✓ | 1 | 0 | 4.1s |
| /product/security | 1 | 3.7s | 128 | ✓ | 1 | ✓ | 1 | 0 | ttfb |
| /claude/opus | 1 | 2.6s | 387 | ✓ | 1 | ✓ | 1 | 0 | ttfb |
| /claude/mythos | 1 | 2.3s | 233 | ✓ | 1 | ✓ | 1 | 0 | ttfb |
| /supported-countries | 1 | 131ms | 179 | ✓ | 0 | ✓ | 1 | 0 | no schema |
| /product/claude-code | 0 | 305ms | 133 | ✓ | 1 | ✓ | 1 | 0 | clean |
| /product/claude-cowork | 0 | 169ms | 125 | ✓ | 1 | ✓ | 1 | 0 | clean |
The split is stark: the two clean pages are products (/product/claude-code, /product/claude-cowork) — schema, canonical, sub-300ms. Everything that tells Anthropic's story (homepage, research, news, safety, the Constitution) runs bare and slow. Same template, opposite discipline.
The fixes — drop-in code, impact-ordered
Add Organization schema site-wide (the entity anchor)
+30–40% AI-citationZero Organization schema today. This single block, in <head> on every page, is what AI engines read to resolve "Anthropic" as an entity.
<script type="application/ld+json">
{
"@context":"https://schema.org","@type":"Organization",
"@id":"https://www.anthropic.com/#org",
"name":"Anthropic","url":"https://www.anthropic.com/",
"logo":"https://www.anthropic.com/images/logo.png",
"foundingDate":"2021",
"sameAs":[
"https://en.wikipedia.org/wiki/Anthropic",
"https://www.wikidata.org/wiki/Q116758847",
"https://x.com/AnthropicAI",
"https://www.linkedin.com/company/anthropicresearch",
"https://www.youtube.com/@anthropic-ai"
]
}
</script>
Fix the two pages with no H1, then the heading skips
indexability/engineering and /claude-corps render with zero H1; 8 pages skip a heading level. Give every page exactly one H1 and no level jumps (H1→H2→H3).
Publish llms.txt + add a self-referencing canonical
discoveryllms.txt 404s and 39% of pages (incl. the homepage) have no canonical. Ship both:
# /llms.txt
# Anthropic — AI safety and research
> Claude, Constitutional AI, MCP, the Responsible Scaling Policy.
- [Research](https://www.anthropic.com/research)
- [Claude](https://www.anthropic.com/claude)
- [Responsible Scaling Policy](https://www.anthropic.com/responsible-scaling-policy)
<!-- + on every page -->
<link rel="canonical" href="https://www.anthropic.com/{path}">
Cache the origin — kill the 2–6s TTFB on content pages
18 pages18 pages answer >2s (peaking 6.3s) from the Webflow origin while the CDN sits idle. Add a Cloudflare Cache Rule for HTML on these paths (the homepage already proves 129ms is possible).
Add the three missing security headers + extend HSTS
security 74→90One Cloudflare Transform Rule closes clickjacking + MIME-sniff + referrer leakage and makes HSTS preload-eligible.
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload X-Frame-Options: SAMEORIGIN X-Content-Type-Options: nosniff Referrer-Policy: strict-origin-when-cross-origin
Internal-link your safety & research content from the hubs
equityAdd contextual links to /responsible-scaling-policy, /news/core-views-on-ai-safety and /news/the-anthropic-institute (1–3 inbound today) from /research, /company and /policy (30 inbound). Resolve the duplicate /responsible-scaling-policy URL to one canonical form.
Methodology & honesty
100% real, zero defaults. Every value above is measured from anthropic.com on 19 Jun 2026. Honest gaps: orphan detection is within the 31-page sample (a full crawl needs the 475-URL sitemap); per-page CWV is lab not field-CrUX; true crawl frequency, render-budget and full index coverage need your server logs + Search Console — the one place SEOptimer and Semrush also go blind, and the upgrade path. SPF/DMARC, headers, robots, sitemap and the link graph are all live, not estimated.
Go deeper — the technical-readability suite
Each tool is a full screen on real anthropic.com data, with transparent sub-scores and deployable fixes.