How to Track ChatGPT and AI Traffic in GA4 (2027)
How to track AI traffic in GA4: where ChatGPT, Perplexity, Gemini, Copilot and Claude visits land, a ready-to-copy regex, a custom channel group, and why some arrive as Direct.
Quick answer
GA4 now has a default AI Assistant channel for sources such as ChatGPT, Gemini and Copilot. To control the list yourself, filter Session source with a regex like chatgpt.com|perplexity.ai|claude.ai, or build a custom channel group with an AI assistants channel above Referral. Visits from apps or copied links still land in Direct.
Key takeaways
- GA4 already sorts some of it: the default channel group has an AI Assistant channel for ChatGPT, Gemini, Copilot and similar sources.
- ChatGPT tags its links: OpenAI says ChatGPT adds
utm_source=chatgpt.comto referral URLs, so those visits show chatgpt.com as the source. - Control the list yourself: a source regex or a custom channel group above Referral also catches Claude and Perplexity, which Google does not name.
- Some AI visits look like Direct: copied links, apps and links without a referrer arrive with no source at all.
- AI Overviews are not AI traffic in GA4: Google counts AI Overviews and AI Mode as Organic Search. Search Console reports them under Web.
To track AI traffic in GA4, start with the AI Assistant row in Reports > Acquisition > Traffic acquisition. Then add your own regex filter or channel group, because Google does not publish the full list of assistants behind that row.
This guide covers where each assistant's visits land, a regex to paste and the channel group setup. It also covers the share you cannot see by source. It ends with what server logs add and what they do not.
What is AI referral traffic, or LLM traffic?#
AI referral traffic is a visit that starts when someone clicks a link inside an AI assistant's answer. People also call it LLM traffic, after the large language models behind ChatGPT, Claude or Gemini. In GA4 it is an ordinary session with the assistant's domain as its source.
Two other things are often counted under the same name, and they belong somewhere else:
- Clicks from Google's AI Overviews and AI Mode. GA4 puts them in Organic Search, together with normal Google results.
- Requests from AI crawlers and fetchers such as GPTBot or ChatGPT-User. These are software reading your page, not people visiting it, and they show up in server logs rather than in GA4.
Keeping the three apart matters. A rise in crawler hits says nothing about visitors, and AI Overview clicks are already inside your search numbers.
Where do ChatGPT, Perplexity, Gemini and Claude visits show up in GA4?#
They show up under the assistant's hostname as Session source, provided the browser passes a referrer or the link carries a UTM tag. The table lists the hostnames as they resolved on November 11, 2026, and what the vendors themselves document.
| Assistant | Hostname to expect | What the vendor documents |
|---|---|---|
| ChatGPT | chatgpt.com (chat.openai.com now redirects there) | Adds utm_source=chatgpt.com to referral URLs |
| Perplexity | perplexity.ai, www.perplexity.ai | No statement on referral tagging found |
| Gemini | gemini.google.com | Named by Google as an AI Assistant source in GA4 |
| Microsoft Copilot | copilot.microsoft.com, copilot.com | Named by Google as an AI Assistant source in GA4 |
| Claude | claude.ai | No statement on referral tagging found |
| Deepseek, Grok | chat.deepseek.com, grok.com | Named by Google as AI Assistant sources in GA4 |
Two details explain the table. First, copilot.microsoft.com redirected to copilot.com on November 11, 2026, so a regex needs both. Second, the chatgpt.com server sends the strict-origin-when-cross-origin referrer policy. MDN's Referrer-Policy reference says that policy passes only the origin to other HTTPS sites. You see chatgpt.com, never the conversation.
Does ChatGPT add utm_source=chatgpt.com to links?
Yes, according to OpenAI. Its Publishers and Developers FAQ says ChatGPT automatically includes utm_source=chatgpt.com in referral URLs. It ties this to sites that allow OAI-SearchBot and names Google Analytics as a way to track the traffic.
The tag is not a guarantee on every click. On October 14, 2026, Search Engine Roundtable reported that ChatGPT links had briefly lost the tag and the referrer. Those visits landed as Direct. The observers quoted there called it a bug a day later. That report is third-party; OpenAI made no statement in it.
Why does ChatGPT traffic show as Direct in GA4?#
Because the visit arrives without a referrer and without a UTM tag, and GA4 then has nothing to attribute. Google's page on (direct) / (none) traffic lists the general causes. They include missing UTM parameters, redirects or shorteners that strip them, typed URLs, offline documents and ad blockers.
AI assistants add their own versions of those causes:
- Copy and paste. A reader copies a URL from an answer into the address bar. To GA4 that is a typed visit.
- Apps. Desktop and mobile apps can open links in a way that passes no referrer. No vendor in the table documents its app behaviour, so treat this as a likely cause, not a measured one.
- Links without a tag. If a link has no UTM and the referrer is withheld, the visit is Direct, as in the October 2026 incident above.
- Consent and blocking. If the visitor declines tracking or blocks the tag, there may be no session at all.
There is no way to recover these visits by source. What you can do is watch landing pages. A rise in Direct sessions on deep pages nobody types by hand, at the same time as AI referrals grow, is a reasonable hint. It is not proof.
How do I see AI traffic in GA4 in two minutes?#
Use the AI Assistant row first, then a regex filter for the rest. Both work in the standard Traffic acquisition report, with no admin rights needed.
- In the left menu, select Reports, then Acquisition > Traffic acquisition.
- Read the AI Assistant row; the report opens grouped by default channel. Google's default channel group page says GA4 sets the medium to
ai-assistantwhen the referrer matches its list of AI assistants. - Change the primary dimension to Session source / medium. Type
ai-assistantinto the search box above the table to list those sources. - For assistants outside Google's list, click Add filter, choose Session source, set the match type to matches regex, and paste the regex below.
Google's report filter documentation lists four regex match types and says report regex is case sensitive and limited to 250 characters. Its regex page adds that GA4 uses full match by default, which is why the pattern starts and ends with .*.
Ready-to-copy regex for AI assistants
.*(chatgpt\.com|openai\.com|perplexity\.ai|gemini\.google\.com|copilot\.microsoft\.com|copilot\.com|claude\.ai|deepseek\.com|grok\.com).*
The pattern is 137 characters, well under the 250 limit, and uses only plain alternation. It names whole hostnames, so a source like gmail.com or an unrelated .ai domain stays out. Add a hostname when a new assistant starts sending visits, and check the result against the Session source list.
Google's own example regex in its custom channel group help is broader. Its first branch, ^.*ai, matches every source ending in "ai", and .*gpt.* matches any source containing "gpt". Test any pattern against your real source list before you trust the totals.
How do I build an "AI assistants" channel group in GA4?#
Copy the default channel group, add an AI assistants channel with the regex, and move it above Referral. Google documents the exact steps on its custom channel groups page, including an AI assistants example.
- In Admin, under Data display, click Channel groups. You need the Editor role or above on the property.
- Click Create new channel group. GA4 starts with a copy of the default group. Name it, for example "Channels with AI".
- Click Add new channel and name it "AI assistants".
- Click Add condition group, choose Source, select matches regex and paste the regex above. Click Save channel.
- Click Reorder and drag AI assistants above Referral. Click Apply, then Save group.
The order matters. Google says traffic goes into "the first channel whose definition it matches." Placed below Referral, the new channel would stay empty for every assistant that arrives as a referral. Google also suggests placing it above Organic Search if needed.
Limits and behaviour to know
| Item | Standard property | Analytics 360 |
|---|---|---|
| Custom groups per property | 2, plus the default group | 5, plus the default group |
| Channels per group | 50 | 50 |
| Applies to past data | Yes, in reports and explorations | Yes, in reports and explorations |
| Case sensitive | No, channel definitions are not | No, channel definitions are not |
Afterwards, open Traffic acquisition and pick your new group as the primary dimension. You can also make it the property's primary channel group from the Channel groups page. Google says that switch only fills data from that point forward.
How do I compare engagement and conversions of AI visits?#
Put AI visits next to your other channels in Traffic acquisition and compare rates, not totals. The report already holds the metrics you need, as Google's Traffic acquisition reference lists them.
| Metric | What it tells you about AI visits |
|---|---|
| Engagement rate | Share of sessions over 10 seconds, with a key event, or with 2 or more page views |
| Average engagement time per session | How long the page was in focus, on average |
| Key events | How often visitors completed the actions you marked as important |
| Session key event rate | Share of sessions with at least one key event |
A key event only counts once you mark it. Google's key events page allows up to 30 on a standard property. Mark sign-ups, purchases or contact form sends before you compare.
For a deeper look, open Explore and start a Free form exploration. Add Session source as a row, the four metrics as values, and a filter on Session source with the regex. Add Landing page as a second row to see which pages assistants send people to. Keep the date range long, because small AI samples swing a lot from week to week.
Are Google AI Overviews and AI Mode clicks counted as AI traffic?#
No. In GA4, Google's default channel page says the AI Assistant channel "excludes Google's AI Overviews and AI Mode," and Organic Search includes them. In Search Console they sit inside the normal search data.
Google's page on AI features and your website says this traffic counts as overall search traffic. It appears in the Performance report under the Web search type. Its Performance report counting rules add the detail:
- A click on an external link in an AI Overview or in AI Mode counts as a click.
- An AI Overview takes a single position, and every link inside it gets that position.
- A follow-up question in AI Mode counts as a new query.
Google gives no filter that separates these clicks from classic results. Gemini at gemini.google.com is different: it is a separate assistant, and GA4 lists it under AI Assistant.
What do server logs show about AI bots?#
Logs show AI crawlers and fetchers requesting your pages, which GA4 never shows. Those requests are not visits. Each vendor documents its user agents and what they do:
| User agent | Vendor | Documented purpose |
|---|---|---|
| GPTBot | OpenAI | Content that may be used to train foundation models |
| OAI-SearchBot | OpenAI | Surfacing websites in ChatGPT search |
| ChatGPT-User | OpenAI | Visits a page when a user's request needs it; not automatic crawling |
| PerplexityBot | Perplexity | Surfacing and linking websites in Perplexity results |
| Perplexity-User | Perplexity | Fetches a page during a user's question |
| ClaudeBot | Anthropic | Collecting content that may be used for training |
| Claude-User, Claude-SearchBot | Anthropic | Fetching for user questions; improving search results |
Sources: OpenAI's crawler overview, Perplexity's crawler guide and Anthropic's ClaudeBot article. OpenAI and Perplexity also publish IP lists, so you can check that a request claiming to be their bot really comes from them.
To count these requests on a standard access log, search for the user agent names:
grep -E "GPTBot|OAI-SearchBot|ChatGPT-User|PerplexityBot|Perplexity-User|ClaudeBot|Claude-User|Claude-SearchBot" access.log | wc -l
A rising ChatGPT-User count can mean your page is being read during conversations. It does not mean anyone clicked through. GA4 also excludes known bots automatically, as our article on what GA4 bot filtering excludes explains. For the wider picture of crawlers and bad bots, see our bot traffic explainer.
How can I test that my AI channel works?#
Send a few visits you know about and check where they land. The quickest test is your own click: ask an assistant about your page, click its link, and watch Reports > Realtime for the source.
For a repeatable test, create links with your own UTM values and open them, following our guide to UTM tracking in GA4. Your manual UTM source and medium decide the channel, so set them to match the rule you want to test. Traffic Creator campaigns can also send visits with an AI assistant as referrer source, as our overview of website traffic sources lists. That is useful when you want to see a new channel group fill with a known count.
If test visits do not appear at all, work through why traffic may not appear in GA4. For the basic reports this guide builds on, start with how to check website traffic.
Frequently asked questions#
What is LLM traffic?
LLM traffic means visits from links in AI assistant answers, such as ChatGPT, Claude, Gemini or Perplexity. In GA4 these are normal sessions with the assistant's domain as the source. Crawler requests from the same companies are not LLM traffic.
Does GA4 have an AI channel by default?
Yes. The default channel group has an AI Assistant channel. Google names ChatGPT, Gemini, Deepseek, Copilot and Grok as examples but does not publish its full list. A custom regex still helps for Claude and Perplexity.
How do I track Perplexity traffic in GA4?
Filter Session source with a regex that includes perplexity\.ai, or add it to an AI assistants channel above Referral. We found no Perplexity documentation on UTM tags, so expect its visits to rely on the referrer.
Why is my ChatGPT traffic so low in GA4?
Part of it lands in Direct, through copied links, apps or links without a tag. Visitors who decline tracking may not appear at all. Your Direct landing pages are the best place to look for the rest.
Should I block GPTBot to protect my traffic?
Blocking GPTBot does not affect visitors. OpenAI says GPTBot relates to model training, while OAI-SearchBot decides whether your pages can appear in ChatGPT search. The settings are independent, so check which one you mean before you change robots.txt.
Questions about this article?
Spotted an error or an offer that has changed? Send us the source and we will check it and correct the article.