Pick the assistants, copy one regular expression, and follow the exact clicks to give AI visits their own line in Google Analytics 4.
^(www\.)?(chatgpt\.com|chat\.openai\.com|perplexity\.ai|claude\.ai|copilot\.microsoft\.com|copilot\.com|m365\.cloud\.microsoft|gemini\.google\.com|aistudio\.google\.com|notebooklm\.google\.com|grok\.com|duck\.ai|you\.com|chat\.qwen\.ai|chat\.deepseek\.com|doubao\.com|alice\.yandex\.ru|chat\.mistral\.ai|meta\.ai|phind\.com)$
325 characters. Paste it as is: GA4 matches the whole source value and is case sensitive.
A channel group makes AI visits a line of their own in every acquisition report, past visits included. The button names are from the English GA4 interface and Google's help page on custom channel groups.
If you would rather not change the property, or you already have two custom groups (the limit on a standard property), use an exploration. It only affects your own view.
Compare the total with Google's own AI Assistant channel in Traffic acquisition. If yours is higher, the difference is visits Google did not file under AI.
Most AI answers end without a click, and GA4 only sees the visits that happened. The free OperStack check asks ChatGPT the questions your buyers ask and shows whether it names you, and whom it names instead.
It does now. Google's default channel group has a channel called "AI Assistant" for visits from sources like ChatGPT, Gemini, DeepSeek, Copilot or Grok, and it excludes Google's own AI Overviews and AI Mode (Google: default channel group). Google does not publish the full list of sources behind it. A group of your own shows exactly which addresses are counted, and you can compare the two.
GA4 compares a regular expression with the whole value and is case sensitive (Google: regular expressions in Analytics). The anchors make that explicit, the escaped dots stop chatgpt.com from matching look-alikes, and (www\.)? covers sources recorded with www.
The list is strict on purpose: an address is on it only when a visit from it means a person read an assistant's answer and clicked. Ordinary search is left out. ya.ru is ordinary Yandex search (Alice lives at alice.yandex.ru), duckduckgo.com is ordinary search (its assistant is duck.ai), openai.com is the company's marketing site. Google AI Overviews arrive as Google organic traffic and cannot be separated by source.
When an app or a browser does not pass the address the visitor came from, GA4 has nothing to match and files the visit under Direct. No expression can recover that. ChatGPT often adds utm_source=chatgpt.com to the links it shows, which GA4 reads as the source, so those visits are caught.
No data is changed. Google says custom channel groups can be applied to your reports retroactively, so the new group also sorts past visits. A standard GA4 property can have 2 custom channel groups and a GA4 360 property 5 (Google: custom channel groups).
No. This page runs entirely in your browser: the expression is built on your screen and nothing is sent to us. We never connect to your GA4 property.
Built by Maksim Shchegolev, founder of OperStack. Free, no account, no cookie. The address you check is not stored.