Skip to content

AI crawler tracking: see GPTBot, ClaudeBot and PerplexityBot on your site

theBizness.ai tracks 61 AI crawlers by user agent, including GPTBot, ClaudeBot and PerplexityBot. Your server reports each bot request to us, and the Crawlers card on your dashboard shows which bots came and which pages they read. Browser analytics can't see them, because bots don't run JavaScript.

Need setup steps? Jump to the middleware snippet, read the installation docs, or see pricing. Crawls don't count toward your event limit.

AI answers

Fetches made when an AI assistant opens a page to answer someone, right now.

CrawlerOperator
ChatGPT-UserOpenAI
Claude-UserAnthropic
Perplexity-UserPerplexity
Google-AgentGoogle
Google-NotebookLMGoogle
Google-Read-AloudGoogle
CopilotMicrosoft
MistralAI-UserMistral
Amzn-UserAmazon
DuckAssistBotDuckDuckGo
xAI-SearchBotxAI
Grok-DeepSearchxAI
meta-externalfetcherMeta
Kimi-UserMoonshot AI
Qwen-UserAlibaba

Training crawlers

Crawlers that collect public pages that may be used to train AI models.

CrawlerOperator
GPTBotOpenAI
ClaudeBotAnthropic
GoogleOtherGoogle
Google-CloudVertexBotGoogle
Google-Extended
robots.txt token
Google
ApplebotApple
Applebot-Extended
robots.txt token
Apple
AmazonbotAmazon
meta-externalagentMeta
KimiBotMoonshot AI
BytespiderByteDance
ERNIEBotBaidu
QwenBotAlibaba
DeepSeekBotDeepSeek
ChatGLM-SpiderZhipu AI
cohere-aiCohere
cohere-training-data-crawlerCohere
AI2BotAllen AI
CCBotCommon Crawl

Other AI bots

Ad checks, link previews and other automated fetchers run by AI companies.

CrawlerOperator
OAI-AdsBotOpenAI
GrokBotxAI
xAI-BotxAI
xAI-GrokxAI
xAI-Web-CrawlerxAI
GrokxAI
meta-externaladsMeta
facebookexternalhitMeta
FacebookBotMeta
DoubaobotByteDance
YiyanBotBaidu
TongyiBotAlibaba
AliyunBotAlibaba

How AI crawler tracking works

Crawlers don't run JavaScript, so the tracking script can't see them. Your server has to report them. Copy your ingest secret and website ID from Dashboard → Setup into environment variables, then add this middleware. For each request that looks like a bot, it sends the path and user agent to POST /api/crawls. We store the visit only if the user agent matches one of the 61 crawlers below; anything else is ignored. Visits appear in the Crawlers card on your dashboard, by crawler and by page, and are kept for 25 months. Crawls never count toward your event limit. Browsers can't send crawls: the request must carry your ingest secret, so keep it on the server. Add the tracking script too (installation guide) to see human visitors alongside the bots.

Next.js

// middleware.ts
import { NextResponse, type NextRequest, type NextFetchEvent } from 'next/server';

const MAYBE_BOT = /bot|crawl|spider|-user|agent|fetcher|copilot|grok|notebooklm|read-aloud|externalhit|cohere/i;

export function middleware(request: NextRequest, event: NextFetchEvent) {
  const userAgent = request.headers.get('user-agent') ?? '';
  if (MAYBE_BOT.test(userAgent)) {
    event.waitUntil(
      fetch('https://thebizness.ai/api/crawls', {
        method: 'POST',
        headers: {
          'Content-Type': 'application/json',
          Authorization: `Bearer ${process.env.THEBIZNESS_INGEST_SECRET}`,
        },
        body: JSON.stringify({
          websiteId: process.env.THEBIZNESS_WEBSITE_ID,
          url: request.nextUrl.pathname,
          userAgent,
        }),
      }).catch(() => {})
    );
  }
  return NextResponse.next();
}

export const config = { matcher: ['/((?!_next/|favicon.ico).*)'] };

Any server

Send websiteId, url and the request's userAgent to POST /api/crawls with your ingest secret. Add the response status if you have it, to see which pages crawlers hit that return 404.

curl -X POST https://thebizness.ai/api/crawls \
  -H "Authorization: Bearer $THEBIZNESS_INGEST_SECRET" \
  -H "Content-Type: application/json" \
  -d '{"websiteId":"YOUR_WEBSITE_ID","url":"/pricing","userAgent":"Mozilla/5.0 (compatible; GPTBot/1.2)","status":200}'

Crawler FAQ

Why doesn't my analytics show AI crawlers already?

Crawlers fetch your HTML without running JavaScript, so no browser-based analytics script ever sees them. You have to report them from your server, which is what the snippet below does.

Do I need the tracking script to see crawlers?

No, and the script alone will never show them. Crawlers don't run JavaScript. Crawler tracking works only when your own server (or middleware) sends each bot request to us with your ingest secret. Until you add that, the Crawlers card stays empty.

Do crawler visits count toward my plan's event limit?

No. Crawls are stored separately from pageviews and do not count toward your event limit or your visitor numbers.

Can a crawler's user agent be faked?

Yes. Anyone can send a user agent that says GPTBot. We identify crawlers by their user agent, which is what most of them announce, but we do not verify the request came from the operator's IP ranges.

What is the difference between Google-Extended and Googlebot?

Googlebot crawls pages for Google Search. Google-Extended is only a robots.txt token that controls whether Google may use your content for Gemini; it never appears in a user agent. Applebot-Extended works the same way for Apple.

Know when AI reads your site

  • See which assistants fetch your pages to answer people
  • Spot training crawlers and the pages they take
  • Find the pages bots hit that return 404
Start 14-day free trial

Crawler tracking is included in every plan. See pricing or install the tracking script.

14-day free trial. No card required.