Tracking AI Search Traffic in GA4: Referrals from ChatGPT, Perplexity, and Others
- Filed November 10, 2026
- AI search, guide 4 of 4
GA4 can show sessions that arrive from AI assistants when the visit carries an identifiable referrer or campaign tag. Google Analytics now does part of this automatically: its default channel group includes an AI Assistant channel for visits from sources such as ChatGPT, Gemini, Copilot and others. Two boundaries define what that data means. Visits from Google’s own AI Overviews and AI Mode are counted as Organic Search, not AI Assistant. And any referral count measures only the clicks that arrived with recognizable attribution, which is a subset of how often an AI product showed or mentioned your site.
What GA4 does by default
Google’s documentation for the default channel group defines the channel this way: “AI Assistant is the channel by which users arrive at your site from sources like ChatGPT, Gemini, Deepseek, Copilot, or Grok. It excludes Google’s AI Overviews and AI Mode” (GA4 default channel group). The rule behind it: when the referrer matches Google’s list of AI assistants, GA4 sets the medium to ai-assistant and the campaign to (ai-assistant), and sessions whose medium exactly matches ai-assistant fall into the channel.
The same page says Organic Search includes “Google’s AI Overviews and AI Mode”. The split matters when reporting:
| Visit origin | Default GA4 channel |
|---|---|
| Link in ChatGPT, Gemini app, Copilot, Grok, DeepSeek (when referrer matches Google's list) | AI Assistant |
| Link in Google AI Overviews or AI Mode | Organic Search |
| AI product not on Google's list, with a referrer | Referral |
| Any visit with no referrer and no campaign tags | Direct |
Google says “sources like”, so the list is not published in full in that sentence. A tool that is not recognized lands in Referral until Google adds it, and Perplexity or another assistant should be checked in your own data rather than assumed to be in either bucket.
Step 1: find the sources you actually receive
Before building anything, look at what arrives.
- Open Reports > Acquisition > Traffic acquisition.
- Set the primary dimension to Session source / medium.
- Add a filter or search for strings such as
chatgpt,perplexity,gemini,copilot,claudeandai-assistant. - Note every source value that appears, including variants (a product may send traffic from more than one hostname).
This inventory is the basis for any custom grouping. Source names change when products rebrand or move domains, so the inventory is something to repeat, not a one-time step.
Step 2: decide whether the default channel is enough
The default AI Assistant channel is enough when you only need a total for recognized assistants. A custom channel group is useful when you need:
- AI sources that the default list does not catch to be grouped with the ones it does;
- separate rows per assistant in channel-level reports;
- consistent historical grouping, since Google states that custom channel groups “can be applied to your reports retroactively” (GA4 custom channel groups).
To build one, go to Admin > Data display > Channel groups, copy the default group, and add or edit a channel using a “matches regex” condition on Session source. Place the AI channel above Referral, because channels are evaluated in order and a session takes the first channel whose rule it matches. An illustrative condition:
Channel name: AI Assistants (custom)
Condition: Session medium exactly matches ai-assistant
OR Session source matches regex
.*(chatgpt|openai|perplexity|gemini.google|copilot|claude.ai).*
The .* at both ends matters. Google Analytics help states that “By default, Google Analytics Regex is full regex and case sensitive. Partial regex requires the user to add metacharacters” (Google Analytics on regular expressions), and Google’s own AI assistant channel example uses patterns such as .*chatgpt.*. Without them, a source such as chatgpt.com would not match. Keep the source values lowercase in the pattern, as they appear in your Step 1 inventory.
Expected result: recognized and unrecognized assistant referrals land in one channel. Verification: compare the custom channel’s sessions with the sum of the matching source rows from Step 1 for the same date range. Limitation: the regex reflects the sources you saw; a new assistant or a changed hostname will not match until the pattern is updated. Google also notes that custom channel groups cannot currently be used in the Key events paths report.
Step 3: report outcomes, not only sessions
Sessions show arrival. The useful questions are what those visitors did and where they landed.
- Landing pages. Add Landing page as a secondary dimension to see which pages AI assistants send people to. A high concentration on a few pages tells you which content is being linked.
- Engagement. Compare engaged sessions and engagement rate with organic search for the same landing pages. GA4 counts a session as engaged if it lasts longer than 10 seconds, has a key event, or has two or more page or screen views (GA4 engagement rate).
- Key events. Report key events per session for the AI channel against other channels, using the same landing pages where possible, so the comparison is not distorted by page mix.
An illustrative segmentation framework for a monthly view:
| Segment | Definition | Questions it answers |
|---|---|---|
| AI Assistant (default) | Channel = AI Assistant | Volume and trend from recognized assistants |
| Unlisted AI referrals | Referral sources matching your AI regex | Assistants GA4 does not yet recognize |
| Google AI features | Not separable in GA4 | Covered by Search Console reports instead |
| AI landing pages | Landing page for the two segments above | Which content is linked |
| AI outcomes | Key events from the two segments above | Whether the visits convert |
What GA4 cannot see
Four gaps limit every AI traffic report.
Google’s AI features are inside Organic Search. GA4 does not separate a click from an AI Overview from a click on a classic result. For Google’s AI features, Search Console’s Generative AI performance report shows how often links to your pages were shown, and the standard Performance report includes AI feature clicks in its web data without separating them. Neither tool gives a clean “AI Overview sessions” number, for the same reasons that Search Console clicks and GA4 sessions differ.
Visibility without clicks is invisible. An assistant can mention or summarize a site in an answer that the user never clicks. No analytics tool records that view.
Missing referrers. A link opened from a desktop app, a privacy-focused browser or a copied URL can arrive without a referrer and land in Direct.
User-triggered fetches are not visits. When an assistant fetches a page to answer a question (for example, OpenAI documents a ChatGPT-User agent for this in OpenAI’s crawler documentation), the request appears in server logs, not in GA4, because no browser runs your analytics tag.
So the question “Does identifiable AI referral traffic equal all AI search visibility?” has a clear answer: no. Referral sessions are the attributable slice of a larger, partly unmeasurable exposure.
A quarter of AI referral data, read honestly
Think of a hypothetical B2B software site reviewing a quarter.
- The default AI Assistant channel shows 1,800 sessions, mostly from ChatGPT.
- The custom regex finds another 240 sessions from an assistant that GA4 lists under Referral.
- Landing pages show that 70 percent of AI sessions land on three comparison pages.
- Key events per session from AI traffic are similar to organic search for those same three pages.
- Search Console’s Generative AI report shows the same comparison pages earning impressions in AI Overviews, but GA4 attributes those clicks to Organic Search.
What the site can say: about 2,040 sessions came from identifiable AI assistant links, concentrated on comparison pages, and they convert at a rate similar to organic visitors on those pages. What it cannot say: how many people saw the brand in AI answers, or how many organic sessions began in an AI Overview.
Keeping the setup honest
- Recheck the source inventory each quarter; assistants change domains and names.
- Keep Google AI features out of the AI Assistant row in reports, and explain why, so stakeholders do not double count.
- Label referral counts as “attributable AI referrals”, not “AI traffic”.
- When a stakeholder asks for AI visibility, combine GA4 referrals, Search Console’s generative AI impressions and server-log evidence of AI crawler activity, each in its own row with its own definition.
GA4 measures arrivals it can attribute. Used with that limit stated, the AI Assistant channel and a maintained custom group give a reliable trend line for one part of AI search exposure.