A technical SEO checker asks whether Google can crawl and index the page. A GEO checker asks whether ChatGPT, Claude, and Perplexity can read it, quote it, and name you as the source. Those two questions overlap more than the tool vendors admit, and they also miss different things. On October 14, 2026 we sent the same eight URLs to two user agents — a Googlebot string and a GPTBot string — from one host, no JavaScript, no browser, and scored the results the way each checker does.
What each checker actually tests
| Dimension | Technical SEO checker | GEO checker |
| Audience tested | One crawler. Googlebot, sometimes Bingbot | Many. GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot, plus the human-facing answer layer |
| Crawl access | robots.txt syntax, sitemap references, blocked paths | Which AI agents are named in robots.txt, and whether each gets the same response Googlebot gets |
| Files it reads | robots.txt, sitemap.xml, sometimes an RSS feed | robots.txt, llms.txt, .md page variants, MCP endpoints |
| Head layer | Canonical, title, meta description, hreflang, noindex, viewport | JSON-LD types that make a claim quotable: FAQPage, SoftwareApplication, Offer, AggregateRating |
| Body layer | Server-side words, Core Web Vitals, mobile layout | Raw-text passage shape: does a paragraph answer a question without the surrounding page |
| Blind spot | AI agent policy and llms.txt do not exist in its model | Core Web Vitals, hreflang, meta description hygiene, sitemap structure |
The overlap is real but narrow: status code, canonical, noindex, and whether the words exist in the raw HTML. Everything else belongs to one report or the other.
Eight sites, one raw fetch each
Same day, same host, same request shape. Only the user agent changed between columns.
| Site | Googlebot UA | GPTBot UA | AI crawlers in robots.txt | llms.txt |
| twilio.com | 200, 708 KB | 200, 708 KB | 0 named, 976 B file, no Sitemap line | 2.25 MB, 9,715 lines, 7,486 .md links |
| notion.so | 403, 4.4 KB | 200, 205 KB | robots.txt itself 403 | 6.6 KB, 48 links, no H1 |
| mailchimp.com | 200, 496 KB | 200, 496 KB | 0 named, 101 B file, wildcard group empty | 514 KB, 1,012 headings, dated 7/29/2025 |
| dropbox.com | 200, 618 KB | 200, 618 KB | 0 named, 801 B file | 204 KB, 829 links |
| atlassian.com | 200, 2,563 KB | 200, 2,563 KB | 0 named, 1,292 B file | 26 KB, 105 links |
| vercel.com | 200, 594 KB | 200, 594 KB | 0 named, 629 B file | 4.9 KB, 25 links, agent instructions |
| cloudflare.com | 200, 1,303 KB | 200, 1,303 KB | 8 named, every one Allow: / | 16.8 KB, 90 links |
| squarespace.com | 200, 604 KB | 200, 604 KB | 23 AI agents in one shared group | 2.4 KB, 7 links |
Seven of eight sites served the same words to both agents — identical text counts, identical schema — with small byte differences that come from on-the-fly compression. The exception runs the other way from what most people expect.
Where the two reports disagree
Notion answers two crawlers differently. Our Googlebot string got a 403 and a 4.4 KB Cloudflare "Attention Required!" page. Our GPTBot string got a 200 and the full 205 KB homepage, with Organization, WebSite, SoftwareApplication, and Offer schema in it. One caveat before you act on this: our requests came from a datacenter IP, so an unverified Googlebot string is the kind of traffic bot management is built to stop, and verified Googlebot would likely pass. What the number still proves is that the response depends on the user agent. A technical SEO checker tests Googlebot and would file your site as blocked; an AI agent reading the same URL would never notice. Run the AI-agent test before you rewrite anything.
Six robots.txt files say nothing about AI. Cloudflare names eight agents and allows every one. Squarespace stacks 23 AI crawler names into a single group that shares the wildcard rules — no extra permission, no block, just the access everyone gets. The other six — Twilio, Mailchimp, Dropbox, Atlassian, Vercel, plus Notion's unreachable 403 file — mention zero AI crawlers. All six would pass a technical SEO crawl of robots.txt, because "does this file block Googlebot" and "does this file tell GPTBot anything" are different questions.
llms.txt stopped being a differentiator. In our August 29 test, two of six sites published one. On September 12, in the hospitality set, one of eight did. Today: eight of eight. So judge the file, not its existence. Twilio dumps 2.25 MB listing 7,486 .md page variants — an index you can search and never finish reading. Mailchimp's 514 KB opens with "Total Pages Analyzed: 989" and an analysis date of 7/29/2025, which makes the file AI systems read to learn about Mailchimp 15 months stale. Notion's 6.6 KB skips the H1, opens with a blockquote and a "Key terms:" line, and points at product pages, pricing, and downloads — useful for marketing questions, silent about the developer docs it lists "API" alongside. Vercel's 4.9 KB earns the model-copy label: separate sections for when to use the platform, how agents should fetch it, where the OpenAPI description lives, and which pages ship as Markdown. Squarespace proves small can still be sharp, because its 2.4 KB names a pricing.txt file, the pricing page's JSON-LD OfferCatalog, and a per-currency caveat.
Schema depth is a GEO line item, not a technical one. Dropbox serves SoftwareApplication with AggregateRating and Offer, Squarespace serves FAQPage and HowTo, Cloudflare serves WebPage. Mailchimp serves Service and Organization and stops there. Nothing in a technical SEO report flags that gap, and a citation-ready claim is exactly what FAQPage and Offer markup produce.
The reverse blind spot is body weight. Atlassian's homepage carries 2,563 KB of HTML around 1,835 words of visible text — a 0.5% text ratio. Vercel: 594 KB and 546 words. Squarespace: 604 KB and 3,963 words, 4.3%. A GEO checker counts the words an engine can quote; a technical checker mostly counts the bytes' cost to LCP. Also invisible to GEO tools: Dropbox ships no meta description at all, Atlassian's is 9 characters, and Twilio's runs 183 characters, past the limit. Those are the cheap wins nobody on the AI side will remind you about.
Which one to run first
Technical first, always, then GEO. Here's the real talk: a 92 GEO score on a URL with a broken canonical or a 403 to every crawler is decoration. Fix the floor — status, canonical, meta, sitemap, raw-HTML content — and then work the AI layer, which is where the compounding upside sits. The order that wastes least time:
- Indexability floor: status 200, canonical present, no stray noindex, real words in the raw HTML.
- AI access: what your robots.txt says about GPTBot, ClaudeBot, PerplexityBot, and OAI-SearchBot — or whether you can fetch it at all.
- Files: llms.txt exists, carries a date, and orients an agent. Past roughly 100 KB it is usually a dumped site inventory, not a curated index.
- Attribution layer: JSON-LD types on the pages you want quoted, not just the homepage.
- Re-run both monthly. Twilio's robots.txt declares no sitemap in the file AI crawlers read first, and Cloudflare's eight allowed agents are a policy choice that can flip in either direction.
Run the pair in ten minutes
The whole test is five requests and no browser. Fetch your homepage twice, once with a Googlebot string and once with GPTBot, and compare status and bytes. Grep robots.txt for agent names. Pull /llms.txt and read it — the analysis date in the header tells you whether anyone maintains it. Strip the script tags and count the words left in the raw HTML. Then dump the JSON-LD @types from the head.
Or skip the terminal. Run the free technical SEO check first to clear the floor, then the GEO audit for the AI layer, the llms.txt check for file size and structure, the AI crawler check for your agent policy, the schema checker for quotable types, and the citability check for passage-level answers. Six checks, no signup, and each one reports the gap you cannot see from a browser.
One last thing worth pinning to the wall. Mailchimp's marketing surface — canonical, hreflang, sitemap reference, 2,797 words in the raw HTML — is clean, and its llms.txt was generated in July 2025 and never touched again. That is the pattern to watch for: a technical SEO report that stays green while the AI-facing layer quietly goes stale. Our technical SEO check walkthrough covers the crawl-side failures in detail, and the GEO vs SEO breakdown covers where the two disciplines part company.