TrackingDesk

analytics·ai·attribution

GA4's AI Assistant channel only counts the untagged clicks

Published 2026-10-28

If GA4 shows an AI Assistant channel, it is easy to assume that is all your AI traffic. It is not. The channel counts one kind of click: one that arrives with an AI referrer GA4 recognises and no campaign tags. Add a utm_source to the same link and the visit leaves the channel. Lose the referrer and it goes to Direct. A click from Google’s own AI answers was never in the channel.

We ran five kinds of AI click through Google’s documented rules. They landed in five different channels. We also tested the regex Google publishes for building your own AI channel. It misses two of the assistants that Google’s own default channel names.

The rule, as Google writes it

GA4 added the channel on 13 May 2026. The rule is short. The channel is “medium exactly matches ai-assistant”. GA4 writes that medium itself when the referrer matches a list of recognised AI assistants. Google names ChatGPT, Gemini, Deepseek, Copilot and Grok as examples. It does not publish the list.

Two other documented rules decide what happens next:

  • Tags beat the referrer. In GA4’s processing rules, the referrer sets the source “when no other campaign or traffic source fields have been set”. When a link carries UTM parameters, their values go straight into the report.
  • Missing tags become (not set). Google’s URL builder page says it directly: set one UTM parameter and the ones you leave out show as (not set).

Google does not say whether the AI referrer rule is an exception to the first rule. Nothing on the channel page or the processing page says it is.

Five clicks, five channels

The same reader, the same assistant, the same landing page. Only the link changes.

The click arrives withSource / medium GA4 recordsChannel
A recognised AI referrer, no tagschatgpt.com / ai-assistantAI Assistant
The referrer and ?utm_source=chatgpt.comchatgpt.com / (not set)Unassigned
?utm_source=chatgpt.com&utm_medium=referralchatgpt.com / referralReferral
No referrer, no tags(direct) / (none)Direct
A click from Google AI Mode or an AI Overviewgoogle / organicOrganic Search

The second row is the one to check in your own property. A utm_source with no medium matches no channel rule. chatgpt.com is not in any of GA4’s source lists, and (not set) is not a medium any rule accepts. GA4 calls a visit that matches no rule Unassigned.

The fourth row covers any click that loses its referrer: a link copied out of the chat, or an app that does not pass a referrer. GA4 cannot tell it from someone typing your address.

The fifth row is Google’s own decision. AI Overviews and AI Mode are written into the Organic Search definition and excluded from AI Assistant. Gemini is in AI Assistant. So an answer from Google’s search page counts as search, and an answer from Google’s chat app counts as an assistant.

The list behind the rule is not public

The channel rules refer to “a list of AI Assistants”. Google does not publish that list. The source list Google does publish is a PDF that the help page links as a spreadsheet. Its file was last changed on 9 February 2023. It has 819 sources: 592 social, 129 search, 52 shopping, 46 video. No AI assistant is in it. So you cannot check, from Google’s documents, whether a given assistant’s referrer will be recognised.

We tested Google’s regex for a custom AI channel

Because the default channel cannot be edited, Google’s help page on custom channel groups gives a regex to build your own:

^.*ai|.*\.openai.*|.*chatgpt.*|.*gemini.*|.*gpt.*|.*copilot.*|.*perplexity.*|.*google.*bard.*|.*bard.*google.*|.*bard.*|.*.*gemini.*google.*$

GA4 regex is a full match and case sensitive by default, per Google’s regex page. We ran the pattern that way against nine assistant hostnames and one capitalised source name:

Value testedMatches?
chatgpt.com, chat.openai.comYes
gemini.google.comYes
copilot.microsoft.comYes
claude.aiYes
perplexity.ai, www.perplexity.aiYes
chat.deepseek.comNo
grok.comNo
ChatGPT (a capitalised utm_source)No

Google’s default channel names Deepseek and Grok. Google’s own sample regex misses both. It also misses a utm_source typed with capitals, because the match is case sensitive.

The first part of the pattern, ^.*ai, matches any value that ends in the letters “ai”. That is every .ai domain, AI product or not. Under a full match it caught none of Google’s 819 listed sources. Under a partial match, as in a “partially matches regex” condition, it caught 18 of them. Among them are baidu, m.baidu.com, mail.yandex.ru and dailymotion.com. Google’s page suggests you may put the AI channel above Organic Search. With a partial match, Baidu search visits would then move into it.

What to do

  1. Look for the tagged rows. In Traffic acquisition, use Session source / medium and filter the source for the assistants you care about. A source such as chatgpt.com with medium (not set) is AI traffic in Unassigned. Add those rows to the AI Assistant row when you report.
  2. Tag AI links completely, or not at all. If you place links in AI products yourself (a GPT, an app, a plugin), set utm_medium too. referral puts the visit in Referral; a custom group can then move it.
  3. If you build a custom AI channel, fix the regex first. Add .*deepseek.* and .*grok.*, keep it as “matches regex” rather than a partial match, and list your hostnames explicitly instead of ^.*ai.
  4. Report AI Overviews and AI Mode as search. That is how GA4 files them, and it cannot be changed in the default group. Say so next to any “AI share” figure.

Each of these fixes counts a click. A click is the smaller part of what assistants do. Most of the reading happens on the assistant’s own pages, and no channel rule ever sees it. How much reading is that?

Sources

  • Google Analytics added an AI Assistant channel on 13 May 2026. The medium 'ai-assistant' is assigned automatically when the referrer matches a recognised AI assistant, the channel group is AI Assistant, and the campaign is '(ai-assistant)'. verified 2026-10-28
  • GA4 default channel group: AI Assistant is the channel by which users arrive from sources like ChatGPT, Gemini, Deepseek, Copilot or Grok, and it excludes Google's AI Overviews and AI Mode. Organic Search includes AI Overviews and AI Mode. verified 2026-10-28
  • GA4 default channel definitions: AI Assistant = the medium exactly matches 'ai-assistant'. Referral = medium is one of referral, app or link. Direct = source exactly matches '(direct)' and medium is '(not set)' or '(none)'. Unassigned is the value used when no other channel rule matches. Channel definitions can't be edited. verified 2026-10-28
  • GA4 processing: the document referrer describes the referring source and may set dimensions when no other campaign or traffic source fields have been set. When a custom campaign is processed, the utm_ parameter values map directly to the dimensions in reports. verified 2026-10-28
  • GA4 URL builder guidance: if you set one UTM parameter, set all the relevant ones. Missing UTM parameters result in (not set) values in reporting. verified 2026-10-28
  • GA4 '(direct) / (none)' is traffic without a clear referral source, including links that lack UTM parameters and links opened from offline documents such as PDFs. verified 2026-10-28
  • The spreadsheet of GA4 default-channel-group sources and categories linked from Google's channel help page downloads as a PDF last modified 9 February 2023. It lists 819 sources: 592 social, 129 search, 52 shopping and 46 video. None of them is an AI assistant. verified 2026-10-28
  • Google's custom channel group example for AI assistants uses the condition 'matches regex' with ^.*ai|.*\.openai.*|.*chatgpt.*|.*gemini.*|.*gpt.*|.*copilot.*|.*perplexity.*|.*google.*bard.*|.*bard.*google.*|.*bard.*|.*.*gemini.*google.*$ and says to put the channel above Referrals, or above other channels such as Organic Search. Traffic goes to the first channel whose definition it matches. verified 2026-10-28
  • By default, Google Analytics regex is full regex and case sensitive. A partial match needs metacharacters such as .* added by the user. verified 2026-10-28