agent-tracking

Guides

Can I track agentic visitors on my website, and what counts as one?

Yes, but it depends on what you mean by agentic visitor, because there are three different things and most analytics only sees one of them: a referral (a person sent by an assistant), a fetch (the agent itself loading pages, verified by IP range and grouped into bursts), and a tool call (an assistant operating your MCP or WebMCP tools inside the browser). Behaviour is the combination of all three, and only the combination says whether an agent finished what it came for.

By · Updated 2026-09-08

Diesen Guide auf Deutsch lesen

Level 1: referrals

A person clicks a link inside ChatGPT, Perplexity, Claude or Copilot. The visit arrives with a referrer such as chatgpt.com or perplexity.ai, and OpenAI often adds utm_source=chatgpt.com. GA4 or Plausible can show these if you build a segment by host name and keep it updated as assistants change domains. Agent Tracking keeps that list in one versioned file and shows each assistant as its own row.

Level 2: fetches

The agent itself loads your pages: GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot, or live fetchers such as ChatGPT-User. Most of them never execute JavaScript, so standard analytics scripts never fire; the only place they exist is your server log. Two things matter here. Verification: anyone can fake a user agent string, so the request address has to be checked against the ranges OpenAI, Perplexity, Microsoft, Google and Apple publish. Bursts: one agent fetching five pages in four seconds is a live assistant answering a prompt right now, not a routine crawl.

curl -sS -X POST https://agenttracking.co/api/logs/example.com \
  -H "Authorization: Bearer wmt_your_token" \
  -H "Content-Type: text/plain" --data-binary @/var/log/nginx/access.log

Level 3: tool calls and in-browser execution

If your site exposes MCP or WebMCP tools, an assistant calls them inside the visitor's browser. No separate page request hits a server, so only on-page event tracking can capture it: call duration, error rates, tools nobody calls, and goal completion such as a checkout. The snippet wraps the browser's model context API and records the names of the input keys, never their values.

<script defer data-domain="example.com" src="https://agenttracking.co/agent.js"></script>

Behaviour is the combination

Which pages a burst hits, which tools fail, and whether the assistant actually finishes the intended goal. If you only care about level 2, a server log parser plus the vendors' IP lists gets you most of the way there. If you want all three on one board, open source and self-hostable, that is what Agent Tracking is. AgentOps or LangSmith handle observability for agents you build yourself and will not show third-party visitors on your website.

In short

Which level do I have today without any tool?

Level 1, partly, if you built the referrer segment. Level 2 sits unread in your access log. Level 3 does not exist anywhere until something on the page records it.

Is a person sent by ChatGPT an agent?

The visit is counted as an AI referral: a person, sent by an agent. It is kept separate from fetches, where the agent itself reads the page.