Measurement September 22, 2026 · 15 min read

How to Track ChatGPT, Claude & Perplexity Traffic in GA4

GA4 got a native AI Assistant channel in May 2026. On our own site it caught 409 of roughly 670 AI visits. Here is where the other 260 are hiding, how to build a channel group that finds them, and how to keep bots from making the whole report meaningless.

409 AI Sessions GA4 Labeled, 12 Months
~670 AI Sessions Actually Found
39% Of Our Users Were Bots From One Country
+15% AI Channel Growth, Last 30 Days
Quick Answer

Since May 13, 2026, GA4 automatically tags sessions from recognized AI assistants with the medium ai-assistant and groups them under an AI Assistant channel. It undercounts for four reasons: the channel is forward-only, so nothing before May is reclassified; Google has not published the full recognized list and several sources report Claude and Perplexity still landing in Referral; links that arrive with a utm_source but no utm_medium fall into Unassigned; and any AI app that strips the referrer shows up as Direct. To see the real number, build a custom channel group that matches on source hostname (chatgpt.com, claude.ai, perplexity.ai, gemini.google.com, copilot.microsoft.com and the rest) and ignores medium, then run an Explore on session source filtered to those hostnames. Before you report anything, exclude bot traffic: on our property, one country accounted for 39% of users at one second per visit.

Google gave AI traffic its own row in GA4 and most brands stopped there. The row is real. It is also about 60% of the answer.

This is a first-party guide. Every number in it comes from the GA4 property for this site, pulled on September 15, 2026, covering the twelve months from September 15, 2025. We publish the AI search content that earns those visits, so we have an obvious interest in AI traffic looking good. The way we handle that is to show the raw numbers, the bot problem that inflates everything, and the lead data we could not measure, alongside the parts that worked.

Disclosure

Evolve Media Agency sells AI search optimization work, and the traffic in this post came to a site built to earn it. The GA4 method below works on any site. The engagement numbers describe ours and should be read as one property's data rather than a benchmark. Our lead tracking was broken for most of this period, so this post makes no claim that AI visitors convert better.

If you want the strategy side, the AI search visibility playbook covers how to earn these visits. This post is only about counting them correctly.

01/12 Section

What GA4's AI Assistant Channel Does

On May 13, 2026, Google added an AI Assistant channel to GA4's Default Channel Group. When a session's referrer matches an AI assistant Google recognizes, GA4 sets three dimensions automatically and no configuration is required.

DimensionValue GA4 AssignsWhere You See It
Session mediumai-assistantTraffic acquisition, source/medium
Session default channel groupAI AssistantTraffic acquisition, default channel group
Session campaign(ai-assistant)Campaign reports, Explore
Session sourceThe referrer hostname (chatgpt.com, gemini.google.com)Source dimension, unchanged

To check whether your property has it: Reports, Acquisition, Traffic acquisition, set the primary dimension to Session default channel group, and look for the AI Assistant row. Most properties had it by early June 2026. Ours shows the channel starting in June, which matters for the arithmetic in section 3.

The classification happens on Google's side at processing time, so it applies to every property at once and cannot be edited. That is the good part. It also means you cannot add an assistant Google has not recognized, and you cannot make it look backward.

02/12 Section

The Four Ways It Undercounts

1. It is forward-only

Nothing before the rollout is reclassified. If your property has AI visits from 2025, they are still filed under Referral or Direct and the native channel will never show them. Any year-over-year comparison of the AI Assistant row is comparing a partial year to nothing.

2. The recognized list is short and not public

Google's announcement named ChatGPT, Gemini and Claude as examples. The Default Channel Group definitions page, per several analysts who have read it since, lists ChatGPT, Gemini, DeepSeek, Copilot and Grok. Multiple properties report Claude and Perplexity traffic still landing in Referral. We cannot tell you which list is authoritative because Google has not published one, and the sources disagree. What we can tell you is what our own data shows, in the next section: the gap between the labeled number and the real number is roughly the size of our Claude and Perplexity traffic.

3. UTM-tagged links fall into Unassigned

Some AI assistants append utm_source=chatgpt (or similar) to outbound links without a utm_medium. GA4 ignores referrer-based classification the moment any UTM parameter is present, so a source-only tag produces medium (not set) and channel Unassigned. Those sessions are AI visits that appear in neither the AI Assistant row nor Referral.

4. Apps and privacy settings strip the referrer

Clicks from the ChatGPT desktop and mobile apps, from assistants embedded in other apps, and from some browsers' privacy modes arrive with no referrer at all. GA4 files those as Direct. There is no GA4 configuration that recovers them. The only partial fix is on the content side: give AI assistants pages worth citing by URL so that a copied link carries a recognizable path you can see in landing-page reports.

Definition

Labeled AI traffic vs found AI traffic. Labeled traffic is what GA4's native channel classifies automatically. Found traffic is labeled traffic plus every session whose source hostname is an AI assistant, regardless of medium or channel. The difference is your undercount. On this site it was about 260 sessions in twelve months, or roughly 39% of the total.

03/12 Section

Our Numbers: 409 Labeled, ~670 Real

Twelve months ending September 14, 2026. The AI Assistant channel shows 409 sessions, 36.7% engaged, 32 seconds average engagement. Searching source hostnames across all channels, including Referral and (not set), finds about 670.

# Session source contains any AI assistant hostname, all channels. Rounded. chatgpt.com + com.openai.chat ~316 claude.ai ~173 gemini.google.com ~103 perplexity.ai ~51 doubao.com, yuanbao.tencent.com remainder TOTAL FOUND ~670 LABELED (AI Assistant channel) 409 GAP ~260 (39%)

Two explanations, and both are probably true at once. First, the channel only started classifying our traffic in June, so every AI visit from September 2025 through May 2026 sits in Referral. Second, Claude and Perplexity together account for about 224 sessions, which is close to the size of the gap, and both are the assistants most often reported as unrecognized. We cannot separate the two effects cleanly without the full recognized list. The practical conclusion is the same either way: the native row is a floor.

The last 30 days (August 16 to September 14) tell the trend. The AI Assistant channel had 126 sessions, up 15% from 110 in the prior 30 days, while organic search fell 21% and total sessions fell 11%. AI was the only sizable channel that grew. That is what makes the undercount worth fixing: if you are steering by the labeled number, you are steering by 60% of the fastest-growing channel you have. The 12-month citation compounding guide covers why this channel grows the way it does.

04/12 Section

Build A Channel Group That Matches On Source

You cannot edit the default channel group. You can build a custom one, and the key decision is to match on session source and ignore medium entirely. Matching on medium is what the native channel does, and medium is exactly what breaks when a link carries a UTM or arrives from an unrecognized assistant.

# Admin > Data display > Channel groups > Create new channel group name Channels + AI (source match) new channel AI Assistants condition Source matches regex (see below) position Drag it ABOVE Referral and ABOVE Unassigned # regex, one line, no spaces (chatgpt|openai|claude|anthropic|perplexity|gemini\.google|bard\.google|copilot\.microsoft|bing\.com\/chat|deepseek|grok|x\.ai|meta\.ai|you\.com|mistral|doubao|yuanbao|kimi|poe\.com|character\.ai) # GA4 allows 2 custom channel groups per property and 25 channels each.

Three details that decide whether this works.

  • Order matters. GA4 evaluates channels top to bottom and stops at the first match. If Referral sits above your AI channel, chatgpt.com/referral matches Referral first and you are back where you started.
  • Custom channel groups are also forward-only for reporting in most views, but they apply retroactively in Explore, which is why section 6 uses Explore for the historical count.
  • Keep the regex loose and review it quarterly. The ChatGPT app referrer is com.openai.chat, which matches "openai" and would miss a chatgpt-only pattern. New assistants appear every few months; you will not remember to add them unless the review is on a calendar.

If you already use a custom channel group for something else, this replaces one of your two slots. On most ecommerce properties that trade is worth it.

05/12 Section

The AI Assistant Hostname List

These are the source hostnames we have seen on this property and on client properties in 2026. Referrers change; treat this as a starting list and verify against your own Referral rows.

AssistantSource Hostnames SeenNative Channel Recognizes It?
ChatGPTchatgpt.com, chat.openai.com, com.openai.chat (app)Yes (named by Google)
Geminigemini.google.comYes (named by Google)
Claudeclaude.aiDisputed; check your Referral rows
Perplexityperplexity.ai, www.perplexity.aiDisputed; often still Referral
Copilotcopilot.microsoft.com, bing.com (chat paths)Reported yes
DeepSeekchat.deepseek.comReported yes
Grokgrok.com, x.aiReported yes
Doubao, Yuanbao, Kimidoubao.com, yuanbao.tencent.com, kimi.moonshot.cnNo evidence either way
Meta AI, You.com, Mistralmeta.ai, you.com, chat.mistral.aiNo evidence either way

The Chinese assistants are worth including even for a US brand. Doubao and Yuanbao sent us real, engaged sessions this year, and they never appear in any Western list of AI referrers. If your product is sold cross-border, they may be a larger share than Perplexity.

One hostname to exclude: any AI crawler. Crawlers do not execute JavaScript and do not show up in GA4 at all, so if you see GPTBot or ClaudeBot in your analytics something else is going on. The AI crawler list covers the bots; this post is about the humans they send.

06/12 Section

Find AI Visits Hiding In Referral And (not set)

This is the query that produced the 670. It runs in Explore, works on historical data, and takes five minutes.

# Build once, save it, re-run monthly date range last 12 months (or all available) rows Session source columns Session default channel group values Sessions, Engaged sessions, Average engagement time per session, Key events filter Session source matches regex (chatgpt|openai|claude|perplexity|gemini\.google|copilot|deepseek|grok|doubao|yuanbao) # Read across the columns for each source row: # AI Assistant = labeled correctly # Referral = unrecognized assistant, or pre-rollout # Unassigned = utm_source with no utm_medium # Direct = will show nothing here; referrer was stripped

Then add a second tab with rows set to Landing page + query string and the same filter. That table tells you which pages AI assistants cite, which is the only output of this whole exercise that changes what you do next. On our property the top AI entry page was the local business AI search guide, which earned 22 AI-assistant entries in the period, ahead of every product-related post on the site.

A (not set) landing page row with AI sources usually means the session started on a page that fired before the page_view event loaded, which is common with consent banners and slow themes. It is real traffic with a missing landing page, and it belongs in the count.

07/12 Section

What You Still Cannot See

After the channel group and the Explore, there are three blind spots left, and no GA4 setting fixes them.

Three Permanent Blind Spots GA4 Cannot Fix These
Blind Spot 01
AI Overviews And AI Mode

Clicks from Google's AI Overviews and AI Mode arrive as google / organic. They are indistinguishable from classic search clicks in GA4. Search Console does not separate them either. Some share of your "organic" is AI and you cannot size it.

Blind Spot 02
Referrer-Stripped Sessions

Native apps, in-app browsers and privacy modes send no referrer. Those AI visits are Direct. The only signal is a Direct session landing deep on a long-tail guide URL nobody types by hand.

Blind Spot 03
Citations Without Clicks

Most AI answers that mention you do not produce a click. The brand exposure is real and GA4 never sees it. Tracking it needs a visibility tool that queries the assistants directly.

Blind Spot 04
Which Answer Sent Them

Even a perfectly labeled session tells you which assistant sent the visitor and nothing about the question they asked. Landing page is the closest proxy: the page cited is usually the page that answered a specific query.

For blind spot three, the AI visibility tracking tools roundup covers the options. For the Direct problem, the honest answer is that a deep-URL Direct session on a guide page is probably AI, and you should say "probably" when you report it.

08/12 Section

Half Your Users Might Be Bots

None of the AI counting matters if the denominator is garbage, and on our property it was. Twelve months: 32,686 sessions, 24.5% engaged, 8 seconds average engagement. Singapore was 39% of users at about one second per visit. In the last 30 days Singapore was 50% of users. Those are crawlers that execute JavaScript, which is why GA4's built-in bot filtering does not catch them.

Noise SourceTell-Tale SignWhat We Did
Singapore (39% of users)~1s engagement, hits every guide, 95% "desktop"Excluded from every comparison; challenge rule at the CDN
US data-center citiesAshburn, The Dalles, Moses Lake, Des Moines, Boardman at 0-2s; some show 60%+ "engaged" at 0sTreated as crawler traffic; excluded
Email click-tracking redirects~6,000 sessions from the email platform's tracking domains, filed as Referral, many 1-4s link scannersUTM-tagged every newsletter link; listed the domains as unwanted referrals
(not set) country1% engagedExcluded
SEO-tool and spam referrers0s sessions from tool domainsUnwanted referrals list

The reason this belongs in an AI tracking post: AI assistant sessions are a few hundred a year on a site like ours. Bot sessions are tens of thousands. Any sitewide average, engagement rate, or "AI vs everything else" comparison is dominated by the bots unless you remove them first, and a report that says "AI visitors engage 5x more than average" is mostly saying "humans engage more than crawlers."

09/12 Section

Build A Humans-Only Comparison

GA4 comparisons are the fastest way to do this without touching data collection. Build one, save it, and apply it to every report before you read a number.

# Comparison: "Humans (est.)" - exclude the noise, keep everything else condition 1 Country is not Singapore, China, (not set) [edit to YOUR bot countries] condition 2 City does not match regex (Ashburn|The Dalles|Moses Lake|Des Moines|Boardman|Dublin|Amsterdam|Lanzhou) condition 3 Session source does not match regex (sendibm|brevo|sendibt|linkfox|feishu) -- add your own email and tool domains to this list # Then, in Admin > Data streams > Configure tag settings: internal traffic define your office and team IPs, move the filter from Testing to Active unwanted referrals add the email tracking + tool domains so they stop starting sessions

Two cautions. Do not exclude countries where you actually sell; if you ship to Singapore, use the city and engagement conditions instead. And do not apply a country filter at the data-collection level unless you are certain, because filtered data is gone forever, while a comparison is reversible.

The internal traffic filter is the one most brands leave in Testing mode for months. Ours was. Until it is Active, every page you and your team load while working on the site is a session, and on a small-brand property that can be a fifth of "traffic."

10/12 Section

Read Engagement Before Anyone Reads Leads

With the comparison applied, here is what the last 30 days looked like on our property. The point of showing it is the method, and the caveat at the end.

Channel (Aug 16 - Sep 14, 2026)SessionsEngagement RateAvg Engagement
AI Assistant (labeled)12647.6%48s
Organic search38343.6%48s
Sitewide, raw (bots included)7,14420.6%7s

AI and organic engage almost identically. That is the finding. The raw sitewide row is there to show what a report looks like when you skip section 8: AI appears to engage at more than double the site average and seven times the duration, which is true and meaningless, because the average is mostly crawlers.

The engaged sessions have a shape worth knowing. AI visitors land on a specific guide, read for a minute, and either leave or go to one other guide. They rarely hit the homepage. That matches what an assistant does: it cites one page for one question. So the pages that earn AI entries need to close the loop on that page, with the next step and the offer right there, because there is no browsing session to catch them later.

Free Resource

The Ecom Profit Box

Our library of ecommerce growth guides, including the AI search and measurement frameworks behind this post.

Get It Free
30 Minutes

See What Your GA4 Is Hiding

Give us read access to your property. We will run the source-match Explore, size the bot share, and tell you what AI is actually sending you, including when the honest answer is "not much yet."

Book A Call
11/12 Section

Wire Key Events So AI Leads Count

Here is the part we got wrong, in full. Our GA4 key events were inherited from an older version of the site. Eleven of them tracked buttons that no longer existed. Over the twelve months, key events fell from about 48 a month to 6 in the last 30 days, and only one of the eleven fired at all in the final four weeks. Calendly clicks, the action that actually produces a client, were never a key event. So when someone asks whether our AI visitors book more calls than organic visitors, the answer is that we do not know yet, and neither does anyone else whose events are in this state.

The fix is a short list of events that map to real actions, set up in Google Tag Manager and marked as key events in GA4.

# Event name Trigger (GTM) Mark as key event book_call_click Click URL contains calendly.com yes calendly_booked Custom Event from Calendly event_scheduled postMessage yes contact_submit Form submission on /contact/ yes email_click Click URL starts with mailto: yes phone_click Click URL starts with tel: yes lead_magnet_signup Form submission on the lead magnet form yes newsletter_signup Form submission, newsletter yes # Add data-track="event_name" to each button/form so GTM targets the attribute instead of a CSS class that changes with the theme. # Then: Admin > Key events > toggle each on. Delete the legacy events so they stop polluting reports.

Once those fire for 60 to 90 days with the humans comparison applied, the AI-versus-organic lead question becomes answerable. We will publish our own answer when the data exists. Until then, anyone quoting an AI lead conversion rate without describing their event setup is quoting a number they cannot support.

Two more things to connect while you are in Admin: link Search Console, so AI Overview and AI Mode impressions at least show up as impressions, and set the data retention to 14 months so the Explore in section 6 keeps a full year.

12/12 Section

The Monthly AI Traffic Report

Everything above reduces to one page a month. This is the version we run now, and the Looker Studio dashboard guide has a template that builds most of it automatically.

# All rows use the "Humans (est.)" comparison. Compare to prior 30 days AND same 30 days last year. 1. found AI sessions source-match Explore total, by assistant 2. labeled AI sessions native channel row, the floor 3. undercount % 1 - (labeled / found) -> flags list changes 4. AI share of human traffic found AI / human sessions 5. engagement, AI vs organic rate + avg time, side by side 6. top 10 AI landing pages the only actionable table 7. key events from AI once section 11 is live; blank until then 8. bot share 1 - (human sessions / raw sessions) -> should fall as CDN rules bite

Row six is where the report earns its keep. Every page on that list is a page an assistant already trusts. Update it, add the next step, put the offer on it, and link it to the two guides you most want cited next. The Perplexity citation guide and the Claude shopping guide cover what each assistant tends to cite, which is useful when the landing-page list skews toward one of them.

And the counterweight, since we sell this: on most ecommerce sites in 2026, found AI sessions are a low single-digit share of human traffic. Ours is higher because the site is built around AI search content. If your report shows 40 AI sessions a month, that is normal, it is still the fastest-growing row, and it is not yet a reason to move budget. Track it, publish the pages that earn it, and revisit in two quarters.

Key Takeaways

What To Remember

  • GA4's native AI Assistant channel (May 13, 2026) sets medium ai-assistant automatically, but it is forward-only and Google has not published the full recognized list.
  • On our property it labeled 409 of about 670 AI sessions; the 39% gap matches pre-rollout history plus Claude and Perplexity traffic sitting in Referral.
  • Build a custom channel group that matches on source hostname and ignores medium, placed above Referral and Unassigned, and review the regex quarterly.
  • Run a source-match Explore against all channels to find the real count, and add a landing-page tab, which is the only table that changes what you do.
  • AI Overview and AI Mode clicks arrive as google / organic and cannot be separated in GA4; app and privacy-mode clicks arrive as Direct.
  • Exclude bots before comparing anything: one country was 39% of our users at one second per visit, and it made every sitewide average meaningless.
  • AI and organic visitors engaged almost identically on our site (47.6% vs 43.6%, 48s each); we make no claim about leads because our key events were broken for the period.
Sources

Where This Came From

  1. Google Analytics Help, Default channel group definitions, and the May 13, 2026 What's New entry announcing the AI Assistant channel. Google names ChatGPT, Gemini and Claude as examples in the announcement; the definitions page has been reported to list a different set. We treat the recognized list as unpublished.
  2. Google Analytics Help, Custom channel groups, including the two-group and 25-channel limits and rule ordering.
  3. Search Engine Journal, coverage of the AI Assistant channel launch, and a follow-up on why it undercounts, which independently arrives at the source-match approach used here.
  4. Evolve Media Agency, GA4 property for evolveamz.com, 12 months ending September 14, 2026, exported September 15, 2026. First-party. Session counts by source are rounded; engagement figures are as reported by GA4 with no modeling applied.
  5. Inference note: the two explanations for the 409 vs 670 gap in section 3 are our reading of our own data. We could not isolate the pre-rollout effect from the unrecognized-assistant effect without Google's recognized list.

Questions

Twelve things brands ask when their AI traffic numbers do not add up.
How do I see ChatGPT traffic in GA4?

Two ways. Reports, Acquisition, Traffic acquisition, primary dimension Session default channel group, look for the AI Assistant row; that is what GA4 labels automatically since May 2026. For the full picture, open Explore, set rows to Session source, and filter source to match chatgpt or openai. The Explore count is usually higher because it includes sessions GA4 filed under Referral, Unassigned or pre-rollout history.

Why is my AI Assistant channel smaller than my actual AI traffic?

Four reasons. The channel is forward-only and reclassifies nothing before May 2026. Google has not published the full recognized list, and several sources report Claude and Perplexity still landing in Referral. Links with a utm_source but no utm_medium fall into Unassigned. And clicks from AI apps or privacy modes arrive with no referrer, so they are Direct. On our site the labeled number was about 61% of the real one.

Does GA4 recognize Claude and Perplexity as AI assistants?

Sources disagree, and Google has not published the list. The launch announcement named Claude as an example; the Default Channel Group definitions page has been reported to list ChatGPT, Gemini, DeepSeek, Copilot and Grok. Several properties report claude.ai and perplexity.ai still classified as Referral. Check your own Traffic acquisition report with source as the primary dimension and see which channel those two hostnames land in.

How do I build a custom channel group for AI traffic?

Admin, Data display, Channel groups, create a new group, add a channel with the condition Source matches regex against a list of AI hostnames (chatgpt, openai, claude, perplexity, gemini.google, copilot, deepseek, grok and so on), and drag it above Referral and Unassigned. Match on source, never on medium. GA4 allows two custom groups per property with 25 channels each.

What is the ChatGPT app referrer in GA4?

The ChatGPT desktop and mobile apps send com.openai.chat as the referrer when they send one at all. A regex that matches only chatgpt will miss it, which is why the pattern in this post includes openai. Many app clicks send no referrer and appear as Direct; those cannot be recovered in GA4.

Do AI Overview and AI Mode clicks show up as AI traffic?

No. Clicks from Google's AI Overviews and AI Mode arrive as google / organic and are indistinguishable from classic search clicks in GA4. Search Console does not separate them either. Some unknown share of your organic traffic is AI-driven and no GA4 setting can size it.

How do I filter bot traffic out of GA4 reports?

Build a saved comparison that excludes your bot countries, data-center cities (Ashburn, The Dalles, Moses Lake, Des Moines, Boardman are common), and email or tool referrer domains, and apply it before reading any report. Activate the internal traffic filter and add unwanted referrals in Admin. Avoid collection-level country filters unless certain, because filtered data cannot be recovered.

Why does my AI traffic look so much more engaged than my site average?

Usually because the site average includes bots. On our property AI sessions engaged at 47.6% versus 20.6% sitewide, but sitewide included one country at 39% of users and one second per visit. Against organic search, a human channel, AI engaged at 47.6% versus 43.6% with identical 48-second durations. Compare AI to organic, never to the raw sitewide number.

Can I see which AI answer sent a visitor?

No. A labeled session tells you the assistant, never the question. The closest proxy is the landing page, because an assistant cites one page for one query. Run the source-match Explore with Landing page as the row dimension and treat the top pages as the questions you are currently answering well.

How do I track leads from AI visitors?

Create key events for real actions (booking link clicks, booked meetings, form submissions, email and phone clicks) in Google Tag Manager, mark them as key events in GA4, and delete legacy events that track buttons that no longer exist. Then wait 60 to 90 days and compare key event rate for AI versus organic with the bot comparison applied. Ours were broken for this period, so we make no lead claim yet.

Does AI traffic show up in GA4 from Chinese assistants like Doubao?

Yes, as referrals from doubao.com and yuanbao.tencent.com, and they are never on Western lists of AI referrers. They sent us real, engaged sessions this year. If you sell cross-border, include them in your channel group regex; they may outnumber Perplexity.

What is a normal amount of AI assistant traffic for an ecommerce site?

Low single digits as a share of human traffic on most ecommerce sites in 2026. Ours is higher because the site is built around AI search content. A few dozen AI sessions a month is normal and is still typically the fastest-growing row in the report. It is not yet a reason to move budget; it is a reason to keep publishing the pages that earn it.

Ian Smith, founder of Evolve Media Agency
Ian Smith
Founder, Evolve Media Agency

Ian founded Evolve Media Agency in 2017 and has spent a decade building Amazon, TikTok Shop and Shopify brands, including his own. The agency produces product photography, video, listing content, email and AI-search visibility work for ecommerce brands in the $1M to $10M range.

Read Ian's Story

What Is Your GA4 Not Counting?

Give us read access. In 30 minutes we will run the source-match Explore, size your bot share, and tell you what AI is really sending, including if the honest number is small.

39
Percent Undercounted