GA4's AI Assistant Channel: What It Counts, What It Misses
GA4 added an AI Assistant channel on 13 May 2026. It leaves AI Overviews and AI Mode in Organic Search and keys on a list of assistants Google does not publish. In our data, all 4,288 citations in answers from OpenAI's search model carried utm_source=openai, which a chatgpt.com rule misses. Where each AI visit lands, and a regex for assistants the channel may miss.
GA4's AI Assistant channel, added to the default channel group on 13 May 2026, counts sessions whose referrer matches a list of AI assistants that Google keeps but does not publish; its examples include ChatGPT, Gemini and Claude. Clicks from AI Overviews and AI Mode stay in Organic Search. A custom channel group with an exact regex covers assistants the list may leave out, and Search Console now reports impressions for Google's AI features. A visit with neither a referrer nor a campaign tag lands in Direct, where neither GA4 nor your server can tie it to AI.
One gap is easy to miss. Links in answers from OpenAI's search model, gpt-5-search-api, carry utm_source=openai: every one of the 4,288 citations in the answers we collected from it through OpenAI's API between 4 September 2026 and 6 October 2026 did. A visitor who clicks one inside an app built on that model, if the app keeps the link as it is, arrives with the source openai, which a rule written for chatgpt.com does not match.
What the AI Assistant Channel Counts
GA4 sets a session's medium to ai-assistant and its campaign to (ai-assistant) when the referrer matches a list of AI Assistants, and the channel collects those sessions. No setup is needed, and it appears in any report that uses the default channel group.
The list is not published
Google's channel definitions name ChatGPT, Gemini, DeepSeek, Copilot and Grok as examples, and its launch note names Claude. Neither names Perplexity. Google does name it in two other places, its custom channel group example and the Source Group field described below, and both are hints about the channel, not guarantees. Since the rule keys on the referrer, the only way to know where a given assistant's visits land in your property is to look: filter Traffic acquisition by session source and compare the channel each one received.
It excludes Google's own AI
The same definitions say the channel excludes AI Overviews and AI Mode, and the Organic Search channel explicitly includes them. A visitor who clicked a link in an AI Overview is, to GA4, an ordinary organic Google visit.
Source Group is a separate field
On 11 June 2026 GA4 added a Source Group field, which folds the different source values of one platform into a single name and, in Google's words, includes "built-in grouping for emerging traffic sources like ChatGPT (OpenAI) and Perplexity". It is filled in for past data as well. Google presents it for cross-channel reporting in the Advertising section, and its note says nothing about which sessions the AI Assistant channel collects, so treat it as a second view of the same visits. Check in your own property how it groups your ChatGPT sources, and whether openai is among them.
Where Each Kind of AI Visit Lands
| What happened | What GA4 receives | Where it lands |
|---|---|---|
| A click on a link in a ChatGPT answer | Referrer chatgpt.com, when the browser sends one; OpenAI's publisher FAQ said its search-result links carry utm_source=chatgpt.com | AI Assistant: ChatGPT is one of Google's named examples |
| A click in Gemini, DeepSeek, Copilot, Grok or Claude | The assistant as referrer, when the browser sends one | AI Assistant when Google recognises it |
| A click in Perplexity or a smaller assistant | The assistant as referrer, when the browser sends one | Not in Google's channel definitions or launch note; check which channel it lands in |
| A click in an app built on OpenAI's search model that keeps the link as it is | utm_source=openai on the link | Not among Google's named examples; check which channel source openai lands in and add it to a custom group |
| A click on a link in an AI Overview or AI Mode | google / organic | Organic Search, inseparable from ordinary search clicks |
| An untagged link opened without a referrer: an app that strips it, or a URL copied without its query string | (direct) / (none) | Direct, to GA4 and to your server alike |
| A crawler, or an assistant fetching the page without a browser | Nothing: no JavaScript runs, so the GA4 tag never fires | Only server-side tracking sees it |
The first row comes from OpenAI's publisher FAQ, which said, in the copy archived on 4 October 2026, that ChatGPT adds utm_source=chatgpt.com to referral links from its search results. The last two rows are why GA4 always undercounts AI, a point our dark AI traffic post covers in full.
Build a Custom Channel Group for the Gaps
A custom channel group lets you write your own rule. Standard properties get 2 besides the default (5 on Analytics 360), sessions go to the first channel whose rule they match, and the group applies to past data as well as new.
GA4 > Admin > Data display > Channel groups
1. Create new channel group (it starts as a copy of the default group).
2. Name it, for example "Channels with AI".
3. If the copy has an "AI Assistant" channel, edit it: keep its
condition and add an OR condition,
Source matches regex <the regex below>
If it has none, add a channel named "AI Assistant" with that condition.
4. Check that AI Assistant sits ABOVE Referral. Sessions go to the
first channel whose rule they match.
5. Save. Custom channel groups apply to past data as well.
6. In Traffic acquisition, switch the primary dimension to your group.The regex
This is the list of assistant sources our own traffic reporting uses (ChatGPT, Perplexity, Claude, Gemini, Grok, Copilot, DeepSeek, Meta AI), with openai, the source on links from OpenAI's search model, counted under ChatGPT. It matches whole sources only: the pattern is anchored at both ends, and Google's regex help describes a full match as the default in any case.
^(chatgpt\.com|chat\.openai\.com|openai|perplexity\.ai|www\.perplexity\.ai|claude\.ai|gemini\.google\.com|grok\.com|grok\.x\.ai|copilot\.microsoft\.com|deepseek\.com|chat\.deepseek\.com|meta\.ai)$Why not Google's example
Google's help page offers its own example for an AI assistants channel. Its first alternative, ^.*ai, matches any source that ends in "ai", so every referral from a .ai website, assistant or not, counts as AI. It also has no alternative for grok.com or chat.deepseek.com. An exact list has the opposite weakness: it misses assistants it does not name, such as chat.mistral.ai, which our list does not carry. Adding one takes a single alternative: put |chat\.mistral\.ai before the closing bracket. Keep the exact list, and once a month look at the sources in your Referral and Unassigned channels for assistants to add.
| Session source | Google's example | Exact list above |
|---|---|---|
| chatgpt.com | counted | counted |
| perplexity.ai | counted | counted |
| claude.ai | counted | counted |
| openai | counted | counted |
| grok.com | not counted (wrong) | counted |
| chat.deepseek.com | not counted (wrong) | counted |
| copilot.microsoft.com | counted | counted |
| chat.mistral.ai | counted | not counted (wrong) |
| partner-site.ai | counted (wrong) | not counted |
partner-site.ai stands for any website on a .ai domain that sends you a referral, so it should not be counted. openai is the source on links from OpenAI's search model, counted with the assistants, and every other source is an assistant. "(wrong)" marks a call that gets the source wrong: an assistant left out, or another website counted. Both patterns are tested here as full matches, which Google's regex help gives as the default; read as partial matches, every call in the table is the same. Google's example is quoted verbatim: ^.*ai|.*\.openai.*|.*chatgpt.*|.*gemini.*|.*gpt.*|.*copilot.*|.*perplexity.*|.*google.*bard.*|.*bard.*google.*|.*bard.*|.*.*gemini.*google.*$
What GA4 Cannot See, and Where to Look Instead
Google's AI: Search Console
Clicks from AI Overviews and AI Mode sit inside Search Console's ordinary Web search type. Since 31 August 2026 Google has rolled out generative AI performance reports to all sites, showing impressions, pages, countries, devices and dates for those features; a site with too few impressions in them may not see the report. Impressions are the only metric the reports list, so they tell you a page appeared in an AI answer, not whether anyone clicked.
Microsoft's AI: Bing Webmaster Tools
Bing's AI Performance report, in public preview since February 2026, counts how often your pages are cited in Copilot, Bing's AI summaries and some partner integrations, which pages, and a sample of the queries the AI used to find them. It is the closest thing to a citation report any engine publishes about your own site.
Crawlers: your server
A click that arrives with neither a referrer nor a campaign tag looks like any other direct visit, in GA4 and in server logs alike, and nothing recovers it. AI crawlers, and the plain fetches an assistant makes when someone asks it a question, run no JavaScript, so the GA4 tag never fires, but they do reach your server. An agent that drives a real browser is different: it can run the tag like any visitor. The server side is the layer our AI traffic funnel post walks through, from training crawls to the human click.
What traffic cannot tell you
Traffic moves for many reasons, so it confirms a change in AI answers late and loosely. To tell whether a specific change worked, count the answers it targeted, as in our measurement guide, and treat traffic as corroboration.
How Ranqo Does It
The Traffic page reads two sources, with a switch between them, because they see different things.
Google Analytics
With a GA4 property connected (read-only), Ranqo shows sessions from the AI platforms and search engines it recognises, by source, with engaged rate, conversions and top landing pages, and syncs daily. Its assistants are the list the regex above is built from, openai included. It reads GA4's session source, so it sees what GA4 attributes, from the referrer or a utm_source tag. A visit with neither is Direct in GA4, and Ranqo does not count it.
Site Tracking
Site Tracking is a snippet on your server that reports each page request to Ranqo. It sees the AI crawlers that never run JavaScript, checks bots against the address ranges their operators publish, and places each AI platform on a funnel from training crawls to human visits. It counts a human visit as AI when its referrer is an assistant; it does not read campaign tags, so a tagged link whose referrer was stripped counts as AI in the Google Analytics view but as Direct here.
When the Action Center holds open recommendations built from your traffic and citation data together, up to three appear on the Traffic page as Opportunities. Traffic sits in the same Monitor section as Visibility, so you can check whether visits from an assistant move when its answers start naming you. Ranqo does not tie a visit to a particular answer.
See the AI crawlers GA4 misses
Ranqo tracks whether AI answers name you, turns the gaps into recommendations in the Action Center, and, with GA4 or Site Tracking connected, shows the visits AI platforms send to your site, and with Site Tracking, the AI crawlers reading it. For the measurement side, read why most AI visits never look like AI visits.
Start a 7-day trialWritten by
Nisha Kumari
Nisha Kumari is Co-Founder at Ranqo, where she leads growth strategy and client acquisition. With a background in digital marketing and financial management, she specializes in SEO, Generative Engine Optimization, and helping brands build visibility across AI platforms.
Share this article
Related articles
Dark AI Traffic: Why Most AI Visits Never Look Like AI Visits
The statistic that roughly 70% of AI traffic is invisible is not a measurement, and it cannot be one: a referrer-less visit carries no evidence of where it came from, so the denominator is the thing being estimated. The gap is still real. Here are the five loss classes, which ones you can actually recover, and why server-side tracking fixes fewer of them than everyone claims.
The AI Traffic Funnel: Training, Indexing, Agentic, Visit (and What GA4 Misses)
GA4 collapses every AI bot visit and every AI-referred human into one rolled-up percentage. That number hides four different intents on four different timescales. This deep dive breaks down the Training → Indexing → Agentic → Visit funnel per AI platform, why client-side analytics misses most of it, and the server-side architecture that doesn't.
How to Tell If a GEO Change Worked: Count the Answers, Not the Score
Winning two of 20 tracked questions on every engine moves an overall AI visibility score 10 points. Between one run and the next, it moves 14.5 points or more about one time in twenty. So the score cannot tell you whether one GEO change worked; the answers it targeted can. Here is a six-step protocol, the two-run rule behind it, and a log to copy.