AI bot analytics · live

AI bots are reading your site. You can't see them.

Geordy serves your AI files, so every request to them is counted - including the traffic your analytics has never shown you.

AI bot analytics · live
The blind spot

Why your dashboard says zero when reality says thousands.

Standard analytics measures pages with a JavaScript tag. Your AI-readable files - , .md, .json, .yaml - are plain files, so there is nothing for a tag to run in.

The result - requests to those files are never counted. Your dashboard reads 0, so you assume nothing is reading them.

Geordy

Logs every request to every file Geordy serves.

Named engine, exact file, exact time.

Counted where the files are served. Nothing to install.

The dashboard

The screen you've been missing.

Every AI request to every one of your files - by engine, by format, over time. The whole consumption layer, on one screen.

AI Bot Crawls

Track how AI bots access your structured content

Resolution:
DailyWeeklyMonthly
Page Filter09/18/2026to10/18/2026
Bot visits per format over time
18013590450
Sep 19Sep 24Sep 29Oct 04Oct 09Oct 14Oct 18
YAMLMarkdownLLMs.txtSchemaRSSManifestHumans.txtOG
Visits per bot per format
BotTotalYAMLMarkdownLLMs.txtSchemaRSSManifestHumans.txtOG
ClaudeBot5,472675493840647587773869588
GPTBot2,2974193734815448713018875
GoogleOther2,274177197429150480535194112
PerplexityBot2,235376294124308295196444198

The read layer, finally on the record.

AI engines pull your content constantly and silently - then decide what to cite from what they found. Geordy writes down every visit, so the layer that shapes your AI visibility stops being a black box you have to guess at.

0JavaScript tags to install. Geordy reads requests to your files, not browser pixels.No script
39crawlers named by user-agent, 27 of them AI. All 39 are listed below.Engines
Everyrequest to every file - attributed by bot, by format, by page.Logged
What the data unlocks

See who's reading - and what they take.

Every hit carries a fingerprint: which engine, which file, which status, how recently. Here is what that visibility makes possible.

Engine identification

Know exactly which AI is on your site.

Every bot that touches a Geordy-served file is matched against its - so GPTBot, ClaudeBot, PerplexityBot, GoogleOther and dozens more are named, not lumped into “other.” New entrants surface the moment they first crawl.

request headers · resolvedlive
Mozilla/5.0 (compatible; GPTBot/1.2; +https://openai.com/gptbot)GPTBotOpenAI
Mozilla/5.0 (compatible; ClaudeBot/1.0; +claudebot@anthropic.com)ClaudeBotAnthropic
Mozilla/5.0 (compatible; PerplexityBot/1.0; +https://perplexity.ai/bot)PerplexityBotPerplexity
Mozilla/5.0 (compatible; GoogleOther)GoogleOtherGoogle
4 engines this view+ 35 more named
The list

Which crawlers, by name.

39 crawlers and robots.txt tokens, 27 of them AI. Every name here is either checked against your robots.txt by Geordy's probe, resolved to its operator in your crawl log, or both. The count above is this table's length, not a round number somebody liked.

Reviewed

AI assistants and answer engines

20 AI

Crawlers run by an AI product. They fetch pages to train on, to index for that product's search, or because a user asked it to open a link.

GPTBotOpenAICollects pages for OpenAI model training.robots.txtnamed in log
OAI-SearchBotOpenAIIndexes pages so ChatGPT search can surface them.robots.txtnamed in log
ChatGPT-UserOpenAIFetches one page because a ChatGPT user followed a link.robots.txtnamed in log
ClaudeBotAnthropicCollects pages for Anthropic model training.robots.txtnamed in log
Claude-SearchBotAnthropicIndexes pages so Claude search can surface them.robots.txtnamed in log
Claude-UserAnthropicFetches one page because Claude followed a link for a user.robots.txtnamed in log
Claude-WebAnthropicRetired. Still listed in many robots.txt files and still seen in older logs.robots.txtnamed in log
anthropic-aiAnthropicOlder Anthropic token. Still the one many robots.txt files name.robots.txtnamed in log
PerplexityBotPerplexityIndexes pages so Perplexity can cite them.robots.txtnamed in log
Perplexity-UserPerplexityFetches one page because a Perplexity user opened a source.robots.txtnamed in log
GoogleOtherGoogleGoogle's fetcher for uses outside Search, which is where its AI products pull from.robots.txtnamed in log
ApplebotAppleApple's crawler, behind Siri and Spotlight suggestions.robots.txtnamed in log
AmazonbotAmazonAmazon's crawler, behind Alexa answers.robots.txtnamed in log
Meta-ExternalAgentMetaCollects pages for Meta's AI products and model training.robots.txtnamed in log
Meta-ExternalFetcherMetaFetches one page because a Meta AI product followed a link.robots.txtnamed in log
BytespiderByteDanceByteDance's crawler, collecting pages for its AI work.robots.txtnamed in log
MistralAI-UserMistral AIFetches one page because a Mistral assistant followed a link.robots.txtnamed in log
cohere-aiCohereCohere's crawler for its own models.robots.txtnamed in log
DuckAssistBotDuckDuckGoFeeds DuckDuckGo's AI-assisted answers.robots.txtnamed in log
YouBotYou.comIndexes pages so You.com can cite them.robots.txtnamed in log

Training and dataset crawlers

7 AI

Crawlers that collect web data for models in general rather than for one assistant. Common Crawl alone is in the training mix of most large models.

CCBotCommon CrawlBuilds the open Common Crawl archive that most large models are trained on.robots.txtnamed in log
cohere-training-data-crawlerCohereCollects training data for Cohere's models.robots.txtnamed in log
OmgilibotWebz.ioCollects web data that is sold on as training sets.robots.txtnamed in log
DiffbotDiffbotBuilds a commercial knowledge graph that AI products query.robots.txtnamed in log
TimpibotTimpiBuilds a distributed web index aimed at AI search.robots.txtnamed in log
ImagesiftBotImageSiftCollects images and their page context for datasets.robots.txtnamed in log
FirecrawlAgentFirecrawlFetches pages on demand for AI agents and retrieval pipelines.robots.txtnamed in log

Search crawlers behind an AI answer surface

8

Not AI crawlers. They build a search index, and an AI surface answers from that index, so blocking one blocks the other.

GooglebotGoogleGoogle's search crawler. AI Overviews answer out of this index, so blocking it blocks them.robots.txtnamed in log
BingbotMicrosoftBing's search crawler. Copilot answers out of this index.robots.txtnamed in log
BingPreviewMicrosoftRenders Bing's page previews.robots.txtnamed in log
BaiduspiderBaiduBaidu's search crawler.robots.txtnamed in log
Baiduspider-renderBaiduBaidu's fetcher for pages that need JavaScript run first.robots.txtnamed in log
YandexBotYandexYandex's search crawler.robots.txtnamed in log
YandexRenderResourcesBotYandexYandex's fetcher for pages that need JavaScript run first.robots.txtnamed in log
PetalBotHuaweiPetal Search's crawler.robots.txtnamed in log

robots.txt tokens that never fetch

2

These send no requests and can never appear in a log. They exist so you can allow or refuse a use of what another crawler already fetched.

Google-ExtendedGoogleA permission token, not a fetcher. It says whether Google may use what Googlebot already fetched for Gemini and Vertex AI grounding. Nothing requests a page under this name.robots.txtnamed in log
Applebot-ExtendedAppleA permission token, not a fetcher. It says whether Apple may use what Applebot already fetched to train its models.robots.txtnamed in log

Social and preview fetchers

2

Not AI crawlers. Named here because they show up in the same log and get mistaken for one.

FacebookBotMetaMeta's link crawler, separate from its AI agents above.robots.txtnamed in log
LinkedInBotLinkedInBuilds the preview card when your page is shared on LinkedIn.robots.txtnamed in log

robots.txt means Geordy checks whether your robots.txt blocks that agent. Named in log means a visit from it arrives in your Crawls view under its operator's name and mark rather than as an unknown string. A crawler nobody has published yet still shows up the first time it visits, under whatever name it sends, which is how names get added to this list.

Format consumption

See which files each engine reads.

ClaudeBot may reach for markdown while GPTBot pulls schema.json and Perplexity leans on llms.txt. Per-engine, per-format counts show where each system looks first - so you know which formats matter for which surface.

  • Per-engine × per-format breakdown
  • Spot the formats an engine ignores
  • Prioritise what actually gets read
reads by formatlast 30d · illustrative
Enginellmsschemamdyamlrssog
GPTBot
ClaudeBot
Perplexity
Google-Ext
lessmore · reads per format
Broken-crawl diagnosis

Find the reads that never made it.

Filter by status code to surface 4xx and 5xx - the crawls that failed. A soft-404, a bad redirect, a timeout: each is a page an engine came for and could not read. Fix it and the page is back in play.

  • Isolate 4xx / 5xx AI crawls in one filter
  • See the exact URL and engine that failed
  • Every broken read is a page an engine could not reach
crawl health · status codes30d
200 78%3xx 9%4xx 9%5xx 4%
GPTBot → /pricing/enterprise404not read
PerplexityBot → /blog/ai-trends-2026500not read
ClaudeBot → /docs/api/v2404not read
3 broken crawls this month - three pages an engine came for and could not read.
Freshness & recency

Know when each engine last read you.

Publish an update and you're left guessing when AI will notice. Geordy timestamps every crawl - so you can see which engines came back this morning, which have gone quiet for days, and whether your latest content has been picked up yet.

  • Last-seen timestamp per engine
  • Spot engines that have gone quiet
  • Confirm fresh content actually got re-read
last crawl · per enginelive
24h agonow →
GPTBot2m ago
Google-Extended18m ago
ClaudeBot1h ago
PerplexityBot3h ago
Time & resolution

Slice it your way.

Resolution by day, week, or month, across any date range. Zoom from a single overnight spike out to a whole season of trends - without leaving the view.

DailyWeeklyMonthly
04 / 07→05 / 07
Export

Take it anywhere.

Export the raw numbers as CSV - every bot, every format, every page - and work with them in your own stack.

New engine detectedBytespider · first seen on /blog
Export CSVJSON API

Stop guessing what AI sees. Watch it happen.

Connect a property in two steps. From then on, every AI visit to your files is counted.

AI bot analytics - see exactly which engines read your site · Geordy