Someone in the thread says AI assistants now send 12% of their traffic. Someone else, same industry, has never seen one referral from ChatGPT in two years. Both are reading a GA4 report. Both reports are wrong, in opposite directions, and neither person knows it. That is the state of this argument: conducted almost entirely by people who have never instrumented either side of it on a property they control.
The direct answer first. AI-generated traffic is not replacing classic search traffic on any site that has measured it properly, because the volumes are two or three orders of magnitude apart. What AI surfaces are doing is removing clicks from search you already had, and that loss shows up in Search Console, not in any AI referral report. Two separate measurements. They move independently. Conflating them is why the thread never resolves.
You can measure both on your own site, imperfectly. The measurement is hard for structural reasons rather than because you configured something wrong, and knowing which reasons stops a vendor dashboard fooling you.
Why AI referral traffic resists attribution
The referrer header is unreliable by design. The default browser referrer policy since late 2020 is strict-origin-when-cross-origin, which sends only the origin on a cross-origin navigation, not the path or query string. So you may learn a visit came from chatgpt.com and never which prompt produced it. Any page can go further and set no-referrer, in which case the header is omitted entirely and the visit arrives looking like somebody typed your URL. Those sessions land in Direct. Not mysterious “dark traffic”: a header that was deliberately not sent.
Some assistants read your page server-side. When an assistant fetches a URL to answer a question, the request comes from vendor infrastructure, not a browser. Your JavaScript tag never executes. No session, no pageview, no referrer. The event exists only in your server log. That is the main reason analytics-only measurement understates AI activity: a whole class of traffic is invisible to the tool most people check.
A citation is not a click. An assistant can name you, quote your figures and link you, and the user can act on that answer without ever visiting. That interaction leaves zero trace on your property. If it converts, it converts weeks later as a brand search or a direct visit.
Google folds its AI surfaces into your existing reports. Use Google’s own words, because people guess constantly. Its AI features documentation states that sites appearing in AI features “such as AI Overviews and AI Mode” are included in overall search traffic in Search Console, and specifically that they are reported in the Performance report “within the ‘Web’ search type”. There is no AI Overviews row to filter to. This is moving: Google announced “Search Generative AI performance reports in Search Console” on the Search Central blog in June 2026, so open your own property and look rather than trusting any blog post, this one included. And note the consequence people miss: because Google’s AI surfaces sit inside Search, traffic from them is organic search in your analytics, not an AI channel.
Instrument it before you have the argument
Set this up first. A month of clean data beats any amount of thread reading, and you cannot backfill a segment you never created.
Use the channel that already exists. GA4 ships an AI Assistant default channel, defined as the channel by which users arrive “from sources like ChatGPT, Gemini, Deepseek, Copilot, or Grok”. The rule is that medium exactly matches ai-assistant, which GA4 sets automatically when the referrer matches its internal list. Read the caveat in the same documentation, because it decides how you use the number: that channel excludes Google’s AI Overviews and AI Mode. It covers chat interfaces only, and says nothing about the thing actually costing you clicks.
Then build your own, because a vendor-maintained list is a black box. Create a custom channel group on a referrer-hostname regex you control, and derive the list from your own data rather than copying anyone’s: sort referral and unassigned reports by sessions monthly and read the hostnames you do not recognise. You will see the obvious ones, chatgpt.com, perplexity.ai, claude.ai, gemini.google.com, copilot.microsoft.com, plus regional and legacy variants and a tail of wrappers built on those APIs. Product domains change; a static list rots in about two quarters.
Watch inbound query strings. Some assistants append their own tracking parameters to surfaced links, so report landing pages by utm_source and by raw query string monthly, and read the unfamiliar values instead of filtering them out. Tag anything you control with utm_medium=ai-assistant. And check your referral exclusions first, because half the surprising numbers in this area are configuration errors.
Your server logs know more than your analytics
Logs capture every request, including the ones that never run JavaScript, and they capture the user agent. That field separates the two things people keep averaging together. A crawler indexing you is not a person arriving from an answer. One is a cost, the other a customer, and in a raw log they look similar enough that plenty of “our AI traffic tripled” claims are somebody counting bot hits.
The documented user agents, from each vendor’s published docs, fall into three groups:
- Training crawlers. GPTBot (OpenAI, for training generative foundation models). ClaudeBot (Anthropic, content that may contribute to training). Google-Extended, a robots.txt token rather than a separate HTTP user agent string, documented as controlling whether crawled content trains future Gemini models and is used for grounding. All obey robots.txt.
- Search and answer crawlers. OAI-SearchBot, which OpenAI documents as powering ChatGPT search and explicitly not used for training. PerplexityBot, which Perplexity documents as surfacing and linking sites in its results, also not for training. Claude-SearchBot. These obey robots.txt, and blocking them removes you from live answers rather than from a training set. OpenAI is blunt about the consequence: sites disallowing OAI-SearchBot will not appear in ChatGPT search answers.
- User-triggered fetchers. ChatGPT-User, Perplexity-User, Claude-User, and on Google’s side a documented family including Google-Agent, Google-GeminiNotebook and Google-Read-Aloud. Here the robots.txt position differs by vendor, and not slightly. Google documents that its user-triggered fetchers “generally ignore robots.txt rules” because the fetch was requested by a user; Perplexity says the same of Perplexity-User; OpenAI says the rules “may not apply” to ChatGPT-User. Anthropic documents Claude-User as respecting robots.txt.
A hit from the third group is the closest thing in your logs to a real person: someone asked a question and the assistant fetched your page. Still not a visit, but a far better leading indicator than a training-crawler hit. If you segment your logs one way, segment them this way.
Verify before you believe any of it, because Google’s own documentation warns that user agent strings can be spoofed. Google publishes JSON IP range files for exactly this, with separate files for common crawlers and for user-triggered fetchers, and documents a reverse-then-forward DNS check: reverse lookup the IP, confirm the domain is googlebot.com, google.com or googleusercontent.com, then forward lookup that domain and confirm it resolves back to the original IP. OpenAI publishes per-bot ranges at openai.com/gptbot.json, openai.com/searchbot.json and openai.com/chatgpt-user.json. Match on IP, not on the user agent string, and your bot report stops being fiction. The ratio of verified AI fetches to assistant-referred sessions is then the most honest single figure in this subject.
Whether to block them is a money question
Once you can see the crawlers, someone will want to block them. The technical part is trivial; the consequences are not. What robots.txt can do: ask compliant automated crawlers not to fetch. What it cannot do, per Google: keep a page out of an index. Google states that robots.txt “is not a mechanism for keeping a web page out of Google”, that a disallowed page can still be indexed if linked from other sites, and that the rules “may not be supported by all search engines”. To prevent appearance you need noindex, password protection or removal. And since several user-triggered fetchers are documented as ignoring robots.txt outright, the class of request most likely to represent a live human is the class your robots file has least influence over.
- Block training crawlers (GPTBot, ClaudeBot, Google-Extended) and you forgo nothing in ranking. Google documents that Google-Extended does not affect inclusion in Google Search and is not a ranking signal. The cost is diffuse: less of your material in the models people consult in three years.
- Block search and answer crawlers (OAI-SearchBot, PerplexityBot, Claude-SearchBot) and you remove yourself from answers your buyers are reading now, to protect content you publish free anyway. For a firm selling services, usually a bad trade. For one selling access to the content itself, often right.
- Serve everyone and compete for the citation if your content is marketing rather than product. Most B2B and service firms sit here.
The grievance underneath the blocking debate is that fetch-to-referral ratio. Cloudflare’s chief executive claimed in July 2025 that earning traffic was roughly 750 times harder with OpenAI and 30,000 times harder with Anthropic than with “the Google of old”, with no methodology published alongside. Treat it as framing, not a constant, and verify the shape on your own logs.
Stop counting sessions and count these instead
The structural problem with AI referrals is that the numbers are small enough for ordinary noise to swamp the signal. At 140 assistant sessions a month, a 30% swing is 42 sessions and means nothing. Measure things large enough to move visibly.
- Branded search volume, split out. If assistants put your name in front of people without sending a click, it surfaces as growth in branded queries. Split branded from non-branded impressions and clicks in Search Console, monthly and permanently. Best available proxy for citation exposure, and you already own the data.
- Direct traffic from new users. Not total direct, which is bookmarks and repeat customers. New-user direct sessions, office IPs and known bots excluded. Rising new-user direct against flat or falling organic is the fingerprint of discovery happening where you cannot see it.
- Assisted conversions, not last-click. An assistant referral is often the first touch in a path that closes weeks later through branded search, so on last-click it looks worthless. Compare conversion paths containing an assistant referral anywhere against paths that do not.
- Citation share for a fixed prompt set. Below, because most people do it badly.
Report these together or not at all. Any one alone misleads.
A citation audit that survives scrutiny
The point of an audit is a trend line, not a screenshot. Three rules make it usable.
Fix the prompts and never edit them. Write 40 to 120 prompts a real buyer would type, in their words: problem framing, comparisons, “who does X in Y”, pricing, and your brand name plus a qualifier. Freeze the wording. Improve a prompt and you have broken comparability with every earlier run and quietly reset your baseline.
Fix the cadence and conditions. Monthly suits most businesses; weekly generates noise you will mistake for movement. Same assistants each time, model version noted, clean session with no history or personalisation, date recorded. Undocumented drift looks just like a result.
Record four fields per prompt. Whether you were mentioned. Whether you were mentioned with a link. Which competitors appeared. And what was said about you, pasted verbatim. The fourth field holds the money: being cited alongside a sentence that gets your pricing wrong, or names a service you dropped last year, is a fixable content problem you would never find by counting mentions.
Then the caveat, in writing, in every report. These systems are non-deterministic: the same prompt can return different sources, different wording and different competitors on consecutive runs, because responses are sampled rather than looked up, retrieval is live, personalisation varies and vendors run experiments continuously. A single check proves nothing. One appearance is not visibility; one absence is not a problem. Run each prompt three times and record the hit rate, and read direction across three months or more before concluding anything. A single-run “AI visibility score” is a coin flip with a logo on it.
How to read the headline numbers
Once you have your own data, third-party studies become useful rather than authoritative. Published figures vary wildly mostly because three different methods are in circulation.
- Panel clickstream. A recruited group whose browsing is instrumented, either academically (Pew Research Center’s AI summary work: 900 US adults, 68,879 searches, stated period) or commercially (Similarweb-style figures, broad coverage, proprietary weighting). Real behaviour, but panel composition decides everything, and year-over-year comparisons are sometimes drawn across panels built differently, which several widely quoted charts admit in their footnotes. Two vendors can disagree and both be honest.
- Modelled from keyword sets. Ahrefs’ CTR work, useful partly because the authors state the limitation themselves: Search Console offers no way to isolate AI Overview CTR, so the attribution is a model with a control group, not an observation.
- First-party census data. Aggregated from sites on one analytics platform, which is how Adobe’s retail AI-traffic figures are built. Huge samples of real visits, but a census of that platform’s customers, enterprise-weighted and off very small bases.
Four questions before repeating any figure. Measured, modelled or projected? Does the denominator include your sector, given that publisher referral collapse and services-site traffic are different phenomena? Who benefits from the number being large, since the boldest AI-visibility multiples come from firms selling AI-visibility tooling? And is the base tiny, because “up 700%” from 0.1% of traffic is 0.8% of traffic?
Apply the same test to Google. Its August 2025 statement that total organic clicks to websites were “relatively stable year-over-year” came with no supporting data, which makes it a position rather than a finding. It can be true in aggregate and irrelevant to your own four hundred queries.
What the measurement shows, and the decision it forces
Run this across a range of properties and the result is boringly consistent. Assistant referrals land between a fraction of a percent and low single digits of sessions: growing, engaged, nowhere near replacing search. Verified crawler and fetcher hits run orders of magnitude above those referrals. Search Console shows impressions holding and clicks falling across the informational half of the library. Branded search is flat or slightly up. Conversions are often unchanged, because the traffic that vanished was never going to buy.
Which forces a decision the thread is not arguing about. It is not “chase AI traffic or defend SEO”. On these numbers, chasing AI referrals as a volume channel is a mistake for almost everyone, and so is cancelling search investment. The real call is a reallocation inside the content programme, between pages whose clicks are being intercepted and pages a generated answer cannot finish. Set the baseline now, re-run monthly, and watch the share of your commercial queries showing an AI surface; if that climbs you will see it months before your click data does. And if assistant referrals are 0.2% while organic clicks are down 40%, you have learned something actionable: the AI channel is not your problem yet. Your informational content is.
If you would rather have this built than described, that is work we do. AB7 Solutions sets the measurement up end to end: GA4 channel groups and referrer segmentation, verified server-log pipelines separating training crawlers from search crawlers from user-triggered fetchers, a robots.txt policy decided against your commercial position rather than a template, and a scheduled fixed-prompt citation audit with the non-determinism handled honestly. We run the SEO, AEO, GEO and AIO programmes behind it too. Call +1 321 341 7733, or email ab@ab7solutions.com or director@ab7solutions.com. More at www.ab7solutions.com. If a month of clean data says your AI exposure is negligible, we will say so and point you at what is actually costing you money.
Sources: Google Search Central, AI features and your website, Google common crawlers, Google user-triggered fetchers, Verifying Google crawlers and fetchers, Introduction to robots.txt, and “Introducing Search Generative AI performance reports in Search Console” (Search Central blog, June 2026); Google Analytics Help, Default channel group (AI Assistant channel definition and its stated exclusion of AI Overviews and AI Mode); OpenAI, Bots documentation (GPTBot, OAI-SearchBot, OAI-AdsBot, ChatGPT-User, published IP ranges); Anthropic, Does Anthropic crawl data from the web, and how can site owners block the crawler (ClaudeBot, Claude-User, Claude-SearchBot); Perplexity, PerplexityBot and Perplexity-User documentation; MDN, Referrer-Policy; Matthew Prince, Cloudflare, “Content Independence Day” (1 July 2025; crawl-to-refer claims published without methodology); cited as methodology examples only: Pew Research Center, Ahrefs, Adobe Analytics; Liz Reid, Google, “AI in Search: driving more queries and higher quality clicks” (6 August 2025).