Somebody asks how much traffic AI Overviews are sending them, you open GA4, and there is no filter for it. So you go looking, and you find a regex, a custom channel group and a text fragment trick, all presented as the answer.
None of them work. I want to be direct about that before the how-to sections, because the useful version of this question is not “which report” but “what can I actually measure”, and the answer to the second one is better than it sounds.
Can GA4 separate AI Overview traffic?
No. A click from an AI Overview and a click from a blue link arrive at your site identically.
Both are a user on a google.com search results page following a link to you. Same referrer, same google / organic source and medium, same landing page, nothing in the request that says which part of the page the link sat in. GA4 is not hiding this from you in a menu. The distinguishing information never reaches your server.
Google states the limit itself, in the place you would least expect a confirmation: the GA4 default channel group definitions. The AI Assistant channel, added for traffic from assistant tools, is documented as “the channel by which users arrive at your site from sources like ChatGPT, Gemini, Deepseek, Copilot, or Grok”, followed by one sentence that settles this whole article: “It excludes Google’s AI Overviews and AI Mode.”
That is Google’s own analytics product saying its AI channel does not contain the thing you came here to measure. If a post tells you to build a custom channel group for AI Overviews, it is building it out of data that is not there.
What about the #:~:text= fragment trick?
This is the method doing the rounds, and it deserves a proper answer rather than a dismissal, because the observation behind it was real.
The idea: AI Overviews sometimes link to your page with a text fragment on the end, the #:~:text= syntax that makes the browser scroll to and highlight a quoted passage. If you could read that fragment in the browser and push it into GA4 as an event, you would have a signal that the click came from an AI surface.
Two things kill it.
The first is the specification. Text fragments are deliberately hidden from page scripts. The directive is stripped from the URL during loading so that author scripts cannot directly interact with it, and document.fragmentDirective exists precisely to expose the feature’s presence while giving you nothing to read. So the value you want to send to GA4 is not readable by the JavaScript you would send it with. This is not a browser bug or a permissions setting, it is the designed behaviour, put there to stop exactly this kind of tracking.
The second is that the behaviour it depended on changed anyway. The person who published the method has noted that Google removed the enabling markup in early May 2026, so even the raw observation the trick rested on is no longer reliably present.
I am not saying nobody ever saw a number from this. I am saying you cannot tell whether the number is a sample, a subset, or noise, and a metric you cannot bound is worse than no metric because somebody will put it in a report.
Quoted wording from Google Analytics Help, "Default channel group", and Google Search Central and Search Console Help on the generative AI performance reports.
What you can measure instead
Search Console, and this is the part most articles on this query have not caught up with.
Google announced generative AI performance reporting on 3 June 2026, and the documentation carries a note that changes the answer to this question for almost everyone: “As of August 31, 2026, we’ve rolled out these insights to all websites worldwide.” Before that date, most people asking about AI Overview measurement genuinely had no source. Now they have one, and it is in a tool they already own.
Be clear about its shape before you build a report on it:
- AI Overviews and AI Mode are combined into a single set of insights. You cannot separate the two features.
- Impressions only. There are no clicks and no click-through rate in this view.
- No query dimension. The breakdowns are pages, countries, dates and devices. You will not learn which searches triggered you.
- It is not a separate bucket. Google’s documentation on AI features is explicit that this traffic is also counted in your overall search totals, under the Web search type, so you cannot subtract it out of your existing numbers.
A related and easily confused report is covered in AI Mode traffic in Search Console, which is worth reading alongside this if you are trying to work out which number you are actually looking at.
So what does a real answer to the client look like?
I set this up on my own property on 4 September 2026, days after the worldwide rollout, connecting GA4 to a Search Console domain property. What that gets you is not a joined AI Overview funnel. It is two honest halves.
From Search Console: are my pages being shown in AI surfaces, which ones, on which devices, and is that number moving. That is a visibility measure and it is legitimate.
From GA4: what organic search visitors do once they land, in aggregate, without any claim about which surface sent them.
The trap in between is the one worth naming. A page whose impressions are flat and whose organic clicks are falling is the classic AI Overview story, and it is a reasonable hypothesis. It is not proof: seasonality, a competitor’s new page, a layout change and a ranking slip all produce the same shape. That specific pattern is common enough that I have written it up separately in impressions but no clicks, and the honest framing there applies here too. Report it as a hypothesis with the evidence attached, not as a measured figure.
If the goal behind the question is really “am I visible in AI search at all”, the AI search visibility guide is a better starting point than any GA4 configuration, and whether AI Overviews need separate optimization covers the follow-up question that usually arrives ten minutes later.
What I would not build
Three things I see recommended and would not put in a client account:
- A custom channel group for AI Overviews. It will populate, because a regex against
googlematches everything, and everyone will believe it. Inventing a number is worse than reporting none. - Fragment or highlight detection in GTM. Blocked by the specification, and the markup it relied on has changed. It will silently return zero and look like a measurement of zero traffic.
- A Looker Studio blend claiming an AI Overview click-through rate. Search Console gives no clicks for the AI report, so any CTR in that blend is a division involving a number that does not exist.
If you need a number for a report this month, use Search Console impressions, label them as impressions across AI Overviews and AI Mode combined, and say plainly that click attribution to those surfaces is not available from Google. That answer holds up when somebody checks it, which is more than the alternatives manage.
Sources
- Google Analytics Help, Default channel group, for the AI Assistant channel definition and “It excludes Google’s AI Overviews and AI Mode”, checked 7 September 2026
- Google Search Central Blog, New generative AI performance reports in Search Console, 3 June 2026, for the announcement and the note that the insights rolled out to all websites worldwide as of 31 August 2026, checked 7 September 2026
- Google Search Console Help, Generative AI performance insights, for the combined AI Overviews and AI Mode scope and the pages, countries, dates and devices dimensions, checked 7 September 2026
- Google Search Central, AI features and your website, for AI feature traffic being included in the overall Web search type, checked 7 September 2026
- WICG, Text Fragments specification, for the fragment directive being stripped during loading so author scripts cannot interact with it, checked 7 September 2026
- Google Search Console and Google Analytics 4 for
shahidali.co, connected 4 September 2026. My own properties
