How to Check How Much of Your Traffic Comes From AI Search vs Traditional Search
Here's the check most people run: open GA4, go to Traffic acquisition, find the new "AI Assistant" channel, see a number that rounds to zero, and conclude AI search doesn't matter yet.
The conclusion might be right. The check is broken. GA4's AI Assistant channel is one of three signals, and it happens to be the narrowest of the three: it only exists from May 2026 onwards, its engine list is unpublished, and it explicitly excludes Google's own AI Overviews and AI Mode, which are probably the largest AI search surface there is. Checking that one dimension and calling it a day is like installing a doorbell camera in May and concluding nobody visited you in April.
This post gives you the actual check: three GA4 dimensions, one rule for combining them, and the three measurement traps that mean whatever number you get is a floor, not a total. It's the same logic we run in production, so it's been argued about more than once.
Why the one-dimension check lies to you
In May 2026 Google announced a new default channel group called "AI Assistant" (the release notes entry is dated May 13, 2026). Sessions referred from certain AI assistants now get their medium rewritten to ai-assistant and land in this channel instead of Referral. Genuinely useful. Also genuinely limited, in three specific ways:
It's forward-only. The classification applies from rollout onward, with no backfill. Any date range that starts before mid-May 2026 includes a stretch where the channel reports zero by construction. If you're comparing "this quarter vs last quarter", the channel dimension quietly rigs the comparison.
The engine list is unpublished. Google has not said which assistants the channel recognizes. Different pages of Google's own documentation name different example engines, and both lists are explicitly illustrative: the channel definitions page describes "sources like ChatGPT, Gemini, Deepseek, Copilot, or Grok", while the release notes entry for the same feature names ChatGPT, Gemini, and Claude. So you can't reason about what's missing, because nobody outside Google knows what's included. Treat it as a black box that sometimes says yes.
It excludes Google's own AI surfaces. Google's channel documentation says it plainly: the AI Assistant channel "excludes Google's AI Overviews and AI Mode", and the Organic Search channel includes them. A click from an AI Overview arrives in GA4 as google / organic, indistinguishable from a classic blue-link click. So the single biggest AI answer surface on the internet is, by design, filed under traditional search. (Why those surfaces are the ones to watch is its own post: Google AI Overviews.)
And before you ask: Search Console won't rescue you here either. As of August 31, 2026, every property worldwide has the new Generative AI performance report, covering AI Overviews and AI Mode. It reports impressions only. No clicks, and no API access. So Google will now tell you how often its AI surfaces showed your pages, but not how many people arrived because of it, and GA4 files whoever did arrive under organic.
Between the two tools, AI-surface clicks are officially nobody's job.
The channel is a new doorman who started in May, recognizes faces from a list he won't show you, and waves the owner's family through without logging them. Useful employee. Not a census.
The three signals, and how to combine them
Every GA4 session row carries three fields that can each independently tell you "this visitor came from an AI assistant":
sessionDefaultChannelGroupequals"AI Assistant". Google's native classification, described above.sessionMediumequals"ai-assistant". The medium GA4 rewrites AI referrals to. It arrived in the same rollout, so it shares the date floor, but it survives situations where you're not querying the channel dimension, and it catches rows where a custom channel group has reshuffled things.sessionSourcematches a known AI host. This is the raw referrer hostname, recorded regardless of what the channel logic decided, with no date floor. It's the only signal that works on your historical data, and the only one that catches engines Google's channel ignores.
The combining rule matters as much as the signals: it's a union, not an intersection, evaluated per row. A row counts as AI traffic if any of the three fires, and each row is classified exactly once, so summing the classified rows never double-counts. The practical version of that warning: don't run one report filtered to the channel, another filtered to the source regex, and add the two numbers together. Rows that match both get counted twice. Classify each row once, then sum.
Signal 3 carries most of the weight, so it deserves its own paragraph. GA4 files most non-Western AI assistants under plain Referral, so if any of your market is in APAC, the channel dimension is close to blind there: Doubao, Kimi, Yuanbao, Tongyi, Yiyan, ChatGLM, and Metaso all show up only by referrer host. And matching hosts safely means matching on distinctive tokens, not bare words. The token is gemini.google, not google, which is exactly why Gemini referrals match and your entire organic search channel doesn't. Get this wrong in the sloppy direction and you'll publish a very exciting graph.
Here's a host-token pattern that covers the engines we currently see in the wild (ChatGPT, Perplexity, Gemini, Copilot, Claude, Grok, DeepSeek, You.com, Poe, Phind, Andi, plus the APAC engines above):
chatgpt|openai\.com|perplexity|gemini\.google|copilot|claude\.ai|grok|x\.ai|deepseek|you\.com|poe\.com|phind|andisearch|doubao|kimi|yuanbao|tongyi|yiyan|chatglm|metasoThis list churns. Engines appear, and engines change referrer hosts (chat.openai.com became chatgpt.com). Whatever you build, make the list data you can update, not logic you have to redeploy.
Running the check, three ways
The five-minute version (GA4 Explorations). Build a Free-form exploration with dimensions Session source, Session medium, Session default channel group, and the Sessions metric. Then create a segment, call it "AI traffic", set the condition group to include sessions matching any of:
- Session default channel group exactly matches
AI Assistant - Session medium exactly matches
ai-assistant - Session source matches the regex above, wrapped as
.*(chatgpt|...|metaso).*because GA4's "matches regex" wants a full match
Compare that segment's sessions against your Organic Search channel sessions over the same window and you have your ratio. Because the segment is an OR at the session level, GA4 does the dedup for you.
The API version. Pull date, sessionSource, sessionMedium, sessionDefaultChannelGroup, and sessions from the Data API, then classify each row, first match wins:
isAiRow(row):
if row.sessionDefaultChannelGroup == "AI Assistant" -> true
if lower(row.sessionMedium) == "ai-assistant" -> true
if AI_HOST_PATTERN matches lower(row.sessionSource) -> true
else -> falseSum sessions over rows where isAiRow is true. That's the whole classifier. Ours in production is about forty lines including comments, and most of the comments are warnings.
The trend version. Because sessionSource has no date floor, the regex signal alone gives you a usable historical series back through your whole GA4 retention window. Just label it honestly: the channel and medium signals only contribute from May 2026, so the pre-May part of the series is source-only and will read slightly lower on a consistent basis.
Trap one: the traffic that never carries a referrer
All three signals depend on the visit announcing where it came from. A lot of AI traffic doesn't. Native apps and in-app browsers routinely strip the referrer, and those visits land in (direct) / (none), indistinguishable from someone typing your URL. No dimension you can query will recover them.
This isn't a small asterisk, and there's no clever workaround to sell you. It means every AI-traffic number you will ever produce from analytics is a lower bound. Say "at least" in front of the number and you'll be right; drop the "at least" and you're guessing. The mail still arrives, but some of it arrives with the return address torn off, and you don't get to know how much.
Trap two: the consent trap (the visit that isn't misfiled, it's gone)
This is the one almost nobody writes about, so here's a controlled experiment instead of a claim.
Setup: a site running Google Consent Mode with the default set to denied, the standard configuration for anyone taking EU privacy seriously. Two real clicks staged from chatgpt.com to the site. On the first, the visitor granted cookie consent. On the second, the visitor declined.
The granted click showed up in GA4 exactly as the textbook says: chatgpt.com / ai-assistant / AI Assistant. Clean row, correct channel, everything working as designed.
The denied click did not show up as Direct. It did not show up as Unassigned. It did not show up at all. The GA4 Data API standard report contained no row for that session. Not misclassified: absent.
Sit with that for a second, because it breaks the mental model most practitioners carry. We're used to attribution failures being relabeling problems, where the session exists but wears the wrong badge, and you can at least see a suspicious lump growing in Direct. Consent-denied sessions on a default-denied setup aren't relabeled in the standard reports. They're the guest who was never in the guestbook, and no amount of squinting at Direct will find them. If half your AI-referred visitors decline cookies, your AI traffic number is missing half its rows and showing no symptom.
The fix is what's sometimes called Consent Mode "option B", and the details matter:
- Set
send_page_view: falsein your gtag config so the landing page_view doesn't fire immediately. - Defer that first page_view until the consent choice resolves.
- When you replay it, pass the real
document.referrervia thepage_referrerparameter. Do not reconstruct attribution with a manualcampaign_source: that forces the session into plain Referral and throws away theai-assistantrewrite you did all this to keep. - Keep a cookieless page_view firing on denial as the fallback, so your totals don't visibly drop when consent is declined.
Done right, the granted path keeps its full attribution, and the denied path at least exists in aggregate instead of vanishing.
Trap three: the mention that never becomes a click
The first two traps are about clicks you can't see. The third is about influence that never produces a click in the first place, and to explain it you need a distinction the GEO industry has settled on: mentions versus citations.
A citation is what everything above this line measures: the AI answer credits one of your pages as a source, with a link, and some fraction of readers click it. Citations come from live retrieval — ChatGPT search, Perplexity, AI Overviews fetching your page and quoting it — which is why crawler access and answer-shaped content earn them.
A mention is when the answer contains your brand name with no link at all. "Tools like Alice can check this for you" — that sentence came from the model's training data and your general reputation across the web, not from fetching your site, and it produces exactly zero rows in any GA4 dimension. The two aren't even earned the same way: off-site presence (reviews, listicles, communities, PR) drives mentions, on-site content drives citations. They're correlated — one large-scale analysis found brands in the top quartile for web mentions earn over 10x the AI citations of the next quartile — but they are different events with different fingerprints in your analytics.
And the mention's fingerprint isn't in your referral data at all. A reader who sees your name in an AI answer and wants to know more doesn't click a link that isn't there. They open a new tab and Google your brand, or type the URL. That visit lands in Organic Search (branded) or Direct — the same buckets as trap one's stripped referrers, but for a different reason: the referrer wasn't torn off in transit, it never existed.
So the practical read is this. The union check above measures your citation traffic, and traps one and two make even that a floor. Your mention impact — which for a considered purchase may be doing more of the actual persuading, since the AI already ran the comparison before anyone clicked anything — shows up, if anywhere, as a drift in branded search queries and unexplained Direct. If your AI referral line is flat but branded search has been climbing since your category started showing up in ChatGPT answers, don't rule AI out just because the AI Assistant channel is quiet. Watch branded impressions in Search Console next to the referral number; neither alone is the story.
One honest caveat, because this post has a rule about benchmarks: the causal chain from "mentioned in AI answers" to "branded search lift" is mechanically obvious but very hard to isolate in your data, and nobody has published a study that does it cleanly. Treat it as a place to look, not a number to report.
What should the number even be?
Now you have a number. The next reflex is to ask whether it's good, and this is where the content marketing industry is waiting for you with statistics of highly variable parentage.
The genre has a shape: aggregator posts cluster around "AI traffic converts 4–5x better than organic," with per-engine breakdowns as precise-sounding as "ChatGPT converts at 15.9%, Perplexity at 10.5%" floating between them — figures that disagree with each other by an order of magnitude depending on the post, because they're measured on different sites, different funnels, and different definitions of "conversion," none of which the posts publish.
The most repeated single stat is that "AI visitors convert 4.4x better than organic." It's real, in the sense that Semrush published it in June 2025. It was measured over 500+ topics in digital marketing and SEO, which is the single most AI-saturated content niche in existence, an audience of people who ask ChatGPT about marketing tools all day. It is not a B2B SaaS benchmark, and none of the secondary coverage repeating it includes a methodology you could check. Citing it for your SaaS is like benchmarking your restaurant against a food court inside a culinary school.
The one study we found with a real methodology and an actual significance test is Amsive's: 54 sites, six months of manually audited GA4 data. Their findings, from the primary source:
- LLM referrals were 0.24% of sessions. Organic search was 31.9%. Nearly 90% of sites had LLM traffic under 0.6% of total.
- Conversion rate: LLM 4.87% vs organic 4.60%, paired t-test p = 0.794. Not significant.
- B2B subset: 2.03% vs 1.68%, p = 0.705. Also not significant.
In other words: today it's small, and it converts about the same. That's a null result, which is why you've mostly never seen it quoted.
Meanwhile, aggregator posts will tell you the B2B SaaS benchmark for AI traffic share is 1%, or 2.8%, or 5-15%, depending on which one you read. That's a 15x spread for the same segment, and none of them trace to a primary source. And in one secondhand summary we found, Amsive's B2B split had mutated from "2.03% vs 1.68%, not significant" into "2.17% vs 1.16%, a real difference." Somewhere between the study and the fourth blog post citing it, someone garbled the digits and flipped a null into a finding. Nobody noticed, because nobody checks.
Which is the actual moral: don't calibrate against benchmarks that can't survive contact with their own primary source. Your site, your consent setup, your audience, measured with the union check above, is the only benchmark that means anything. It costs you an afternoon, and unlike the aggregators, you'll know where the number came from.
Where this came from
The three-signal union in this post isn't a thought experiment; it's the classifier Alice (TranX's growth agent) runs against GA4 in production, and every AI-traffic figure she reports carries the lower-bound label for exactly the reasons above. If you'd rather maintain the regex yourself, everything you need is in this post, and it will genuinely work. If you'd rather not, that's what we're for. (And measuring who arrives from AI is a different question from whether AI engines can read and cite your site at all; that one is covered in How AI Reads Your Website in 2026.)
Either way: check all three signals, never just the channel. And when someone shows you an AI-traffic number without the words "at least" in front of it, ask them where their consent-denied sessions went. Watch their face.
Sources
- Amsive, "Does LLM traffic convert better than organic? A new data-backed study" (amsive.com). All share, conversion, and significance figures are from this primary source, verified 2026-09-01.
- Google Analytics release notes, May 13, 2026 entry, for the AI Assistant channel and the ai-assistant medium rewrite (support.google.com). Re-verified 2026-09-01.
- GA4 default channel group definitions, for the AI Assistant definition, its illustrative engine examples, and the AI Overviews / AI Mode exclusion (support.google.com). Re-verified 2026-09-01.
- Search Console Help, Generative AI performance report, for the impressions-only scope and the worldwide rollout as of August 31, 2026 (support.google.com). Re-verified 2026-09-01.
- The Semrush "4.4x" study, June 2025, for that figure and its scope (500+ topics in digital marketing and SEO).
- The consent experiment is our own: two staged chatgpt.com clicks against a Consent Mode default-denied property, one granted, one denied, compared via the GA4 Data API standard report.
- Mentions vs citations distinction and the top-quartile-mentions correlation (similarweb.com; the 10x figure is from an analysis of ~75,000 brands, and it is correlational, not causal). Background on unlinked-mention effects: Search Engine Land's unlinked mentions guide.
- Examples of the "4–5x conversion" genre, cited as genre rather than as benchmarks: one arguing AI traffic converts 4–5x better and one arguing ChatGPT traffic converts worse. The two headlines point opposite directions, which is the point.
What's measured vs. illustrative: the Amsive figures are quoted from the primary study. The consent experiment is n=2 by design; it demonstrates the mechanism (denied sessions produce no standard-report row), not a rate. The host-token list reflects engines observed in real traffic as of September 2026 and will churn. Fig. 1, Fig. 2 and Fig. 3 depict real classification behavior; Fig. 4 is a stylized composite of the citation drift described above, anchored to the real primary and the real garbled retelling.
Want this measured for you, every week?
Alice runs this exact three-signal classifier against your GA4 property in production, labels every AI-traffic figure as the lower bound it is, and tells you when the number actually moves. Free to try.
Try Alice FreeGet new posts in your inbox
One email when a new post ships — growth, SEO, and AI visibility for SaaS. No spam, unsubscribe anytime.