agent-tracking

Guides

How do you measure AI agent traffic to your website?

Measure three separate signals: people who arrive from an AI assistant, automated requests that fetch your pages, and tool actions an agent performs on the site. Use page analytics for identifiable referrals, server access logs for crawlers, and explicit events for tool calls and completed goals. Keep the three counts separate: a fetch is not a click, and neither proves a citation.

By · Updated 2026-09-24

Diesen Guide auf Deutsch lesen

Start with the question behind the number

A search for AI agent traffic can mean several things. A marketer wants to know whether ChatGPT sends visitors. A publisher wants to know which crawlers read articles. A developer wants to see whether an assistant calls a WebMCP tool and completes a booking. These are different events with different collection methods. If a dashboard adds them into one traffic number, the result looks impressive but cannot guide a decision.

Write down the decision first: which landing page to improve, which bot to allow, or which tool error to fix. Then choose the signal that answers it. The short guide to agentic visitors explains the three categories; this article shows how to measure them together without confusing them.

1. Measure visits referred by assistants

When a person clicks a link in an assistant, their browser may send a referrer such as chatgpt.com or perplexity.ai. Some links also carry a campaign parameter such as utm_source. Record the referring host, landing page, date and any relevant conversion. Classify that visit as an AI referral, which still represents a person visiting your site. It does not mean an autonomous agent used the page.

The referrer is not guaranteed. Apps, privacy settings and redirects can remove it. A missing referrer therefore becomes Direct or another source; no analytics product can infer the missing origin with certainty. Report identifiable AI referrals as observed clicks, not as the total number of times an assistant mentioned you. Plausible now provides an AI Assistants channel, so it can measure this layer without a custom referrer list. GA4 can also report the underlying sources; the useful setup depends on your channel grouping and reports.

For this layer, compare landing pages and outcomes. If one guide receives ten identifiable ChatGPT visits and two signups, that is more useful than a bot request total. Review a few weeks of data before drawing conclusions: a newly launched site can have many zero days. See the ChatGPT referral guide for the narrow setup.

2. Read server logs for crawlers and live fetchers

Most named crawlers request HTML without executing the JavaScript analytics tag. Their requests appear in the web server or CDN log instead. Collect timestamp, path, response status, user-agent string and network address temporarily for verification. Group requests by crawler family and purpose: broad crawling for training, search indexing, or a user-initiated fetch are not equivalent. Cloudflare's bot reference lists examples, including GPTBot, OAI-SearchBot and ChatGPT-User.

Do not trust a user-agent string on its own. Anyone can claim to be GPTBot. Where an operator publishes address ranges or another verification method, check the request against it before describing the count as verified. Where verification is unavailable, label the count accordingly. Keep the verification rule and the date of the vendor list with your method, because those lists change. The GPTBot verification guide covers the practical check.

Look at paths and status codes, not only totals. A bot requesting a removed URL and receiving 404 is different from one successfully fetching your documentation. Short groups of requests can suggest a live research session, but the log does not reveal the user's prompt or guarantee that any page was cited. Some requests can be served from caches before they reach the origin, so an origin log may undercount activity at the edge.

3. Instrument actions and goals on the page

If your website exposes browser tools, record registrations and calls with a tool name, outcome, duration and error class. Mark a meaningful completion such as a confirmed booking or signup as a goal. A tool call is an attempt; a completed goal is a separate result. Avoid storing input values, personal details or entire prompts merely to produce aggregate analytics.

A conventional web analytics tool can track a custom event if you add instrumentation. It does not automatically know that a browser model-context call took place, or whether an action was performed by an assistant. Agent Tracking's snippet observes supported on-page tools and goal markers. Check how attribution works before calling a conversion autonomous: a human who arrived from ChatGPT is an AI-referred visitor, while a browser agent operating a tool is another case. The WebMCP analytics guide explains the tool layer.

A repeatable setup for a small site

First, put a regular analytics tool on the site if you need the full picture of human visitors. In Agent Tracking, create the site and add the deferred snippet to every public page. Verify that a known assistant referral appears when it occurs and that ordinary human visits are not reported as bots. Second, import one day of access logs, then automate the import. Inspect a few raw lines and confirm that the displayed path and verified status match the log. Third, if you publish WebMCP tools, call one in a test environment and confirm its result appears. Finally, mark one real outcome as a goal and test it end to end.

The software is open source on GitHub under AGPL-3.0 and can run on your own server. The hosted Free plan currently covers one site, 10,000 agent events per month and a 30-day dashboard window; larger plans have different limits. Self-hosting avoids a software subscription but still requires a server and maintenance. The documentation provides the installation and API details.

Build a report that can drive action

Make separate weekly lines for identifiable AI referrals, verified crawler fetches, unverified claims, live fetches, tool calls, tool success rate and goal completions. For each, show the previous period and the top affected pages. Keep the definitions beside the chart. A rising crawler count with flat referrals is an observation, not evidence that your content is failing; the crawler's purpose and the time lag matter.

Pair the report with Google Search Console for indexed pages, impressions and clicks. Google now offers separate visibility reporting for its generative search features; those impressions are part of Search Console's overall performance data, so avoid adding the reports together as if they were independent visits. Google's announcement describes the scope. Check a page that earns impressions but few clicks before publishing another near-duplicate article.

A useful weekly action might be: update a page that gets search impressions but no clicks; repair a tool that fails on a required field; or investigate a spike of unverified bot claims. Record the change date, then compare the same metric over the following weeks. That is a measurement loop, not a promise that every change will increase AI referrals.

What this measurement cannot prove

A crawler fetch does not prove inclusion in training, a search answer or a citation. A person arriving with a ChatGPT referrer does not reveal the prompt or the exact answer they saw. A missing referrer does not prove there was no AI recommendation. A burst of fetched pages is a pattern to investigate, not a confirmed single question. And conversion attribution depends on the events you instrument and the signals the browser exposes.

Use language that matches the evidence: fetched, referred, called, completed. If you need to know whether a specific assistant visibly cites a page, test that assistant's answer separately and record the result as a sample, because live answers vary by query, account, location and time. Google's guidance for AI search emphasizes useful original content and ordinary search fundamentals; it does not promise a ranking shortcut for a special file or schema.

In short

Can Google Analytics or Plausible count AI traffic?

They can count identifiable visits referred by AI assistants. Plausible has an AI Assistants channel. Neither a browser analytics tag nor an unconfigured custom event measures all crawler fetches or browser tool calls automatically.

Does a crawler request mean my page was cited?

No. It proves that a request for the page occurred in the available log. Citation and click-through are separate observations.

What should a new site measure first?

Confirm indexing and search impressions, then measure identifiable assistant referrals and verified bot requests separately. Add tool and goal events only if the site offers relevant actions.