Short answer

To track ChatGPT traffic in Google Analytics 4, open Reports, Acquisition, Traffic acquisition and find the AI Assistant channel, which Google added on May 13, 2026. For one row per assistant, or a list of assistants you control, filter Session source with a regular expression. Convertica's free builder writes that expression for GA4, Data Studio and BigQuery.

  • Since May 13, 2026, GA4 gives visits from assistants it recognizes the medium ai-assistant, the campaign (ai-assistant) and the AI Assistant channel.
  • Google's pages do not publish the list of assistants that channel matches. A source filter of your own is how you check it and add to it.
  • GA4 regex is a full match and case sensitive by default, and follows RE2 syntax. An expression anchored at both ends works in every field.
  • A visit that arrives with no referrer is counted as direct, and clicks from Google's AI Overviews and AI Mode are counted as Organic Search. A source filter cannot separate either.
  • A referral is a visit, not a citation. Compare the segment's conversion rate with your other channels before you act on it.

AI traffic filter builder

Free to use, no sign-up. It is a builder, not a tracker: it does not connect to your analytics, does not ask any assistant anything and stores nothing. The expression is written in your browser and updates as you tick.

AI assistants to include

Under each name is the source value the expression matches. Every one was confirmed at the assistant's own address or its maker's page on 13 October 2026.

A hostname from your own referral report, or a utm_source value you use, separated by commas.

Paste it into a custom channel group condition on Source, or an exploration filter on Session source.

Expression for 10 sources

  • Matches Each value on its own, any subdomain of it and the same value followed by a path. Nothing else.
  • Length 217 characters. Google's help pages do not state a maximum length for a regex condition. If a field refuses the expression, untick the assistants that send you nothing.
  • Coverage Meta AI, Mistral Vibe and Duck.ai are not named on Google's pages, so this expression can count visits that GA4's own AI Assistant channel does not.

The same list for the other places it goes

GA4's fields do not all read an expression the same way, and one of them takes no regex at all. Each box below is written for the place named above it.

For a channel group with a row for each assistant: the channel name, a tab, then the expression for its condition on Source.

For a report comparison, which Google documents with exact and contains match types only. Add each line as a value.

A dimension that names the assistant. Data Studio is the product Google called Looker Studio.

A CASE expression on the GA4 export's session source field, for a SELECT list.

AI referrer checker

Paste referrers, or source / medium rows copied from a report or a CSV export, and see which rows are AI assistants and which assistant. Nothing you paste leaves your browser.

One row per line, up to 2,000. A row can be a referrer URL, a source, or source / medium, with numbers after it. The first number in each row is added up. The rows shown are made up to show the format; they are not a benchmark.

5 AI assistant rows

5 of 10 rows are AI assistants, from 5 assistants. Their first number column adds up to 561 of 7,413, or 7.6% of what you pasted.

  • 1 row carries the medium ai-assistant with a source that is not on this tool's list: assistant.example. That medium is the one GA4 gives to assistants it recognizes.
  • 1 header or comment line was skipped.
Your rows by assistant. Sum is the first number in each row, added up.
AssistantRowsSum
ChatGPT1312
Perplexity196
Gemini174
Microsoft Copilot141
Claude138
Everything else56,852
All rows107,413

What is AI traffic tracking?

AI traffic tracking is measuring the visits that reach your site from links inside AI assistants such as ChatGPT, Perplexity, Gemini, Microsoft Copilot and Claude. In Google Analytics 4 that means finding the sessions whose source is an assistant's address, then reading what those visitors do, the same way you would for any other channel.

You will also see it called AI referral traffic, LLM traffic or AI search traffic. The names describe the same visits: a person read an answer, clicked a link in it and arrived on your page. That click is the only part analytics can see.

This page gives you three things. The builder writes the filter. The checker labels rows you already exported. The rest of the page is where each expression goes in GA4, the rules that decide whether a pasted expression works, and what no filter can show you. Every rule is taken from Google's own help pages, read on 13 October 2026.

Does Google Analytics track AI traffic on its own?

Yes. Since May 13, 2026, Google Analytics 4 labels visits from the AI assistants it recognizes without any setup. Google's release note says that when a visit's referrer matches a recognized assistant, three traffic source dimensions are set for you, and the visit is reported in a new channel of the default channel group.

What GA4 sets when the referrer matches an AI assistant it recognizes
DimensionValue GA4 setsWhere you see it
Session default channel groupAI AssistantThe first column of the Traffic acquisition report
Session mediumai-assistantSession medium, and the second half of Session source / medium
Session campaign(ai-assistant)Session campaign

One consequence is easy to miss. A visit known only by its referrer carries the medium referral, so that is how assistant visits were reported before the change. A saved report or filter that looks for an assistant's source together with the medium referral will not find the visits GA4 now labels ai-assistant. A filter on the source alone, which is what the builder writes, finds them under either medium.

What Google does not publish

Google's default channel group page defines the channel by a referrer that matches a list of AI assistants, without giving the list. It names ChatGPT, Gemini, Deepseek, Copilot and Grok as examples, and the release note names ChatGPT, Gemini and Claude. The spreadsheet of sources and categories that Google offers for download on the same page covers search, social, shopping and video sites only. So you cannot look up whether GA4 recognizes a given assistant. You can only check your own data.

That leaves four reasons to keep a source filter of your own:

  • One row per assistant. The channel is a single row. A channel per assistant shows ChatGPT, Perplexity and the rest side by side.
  • A check on the channel. Compare the visits your expression finds with the AI Assistant row. On dates after the change, a source your expression finds under the medium referral is one GA4 did not recognize.
  • Assistants you add. You can include a source on the day it first shows up in your referral report.
  • Reports outside GA4. Google says custom channel groups are not available in the BigQuery export, so in BigQuery and in a Data Studio formula the list has to be written out.

How to track ChatGPT traffic in GA4, step by step

To track ChatGPT traffic in GA4, first read what the AI Assistant channel already reports, then add a source filter where you need more detail. There are three places a filter can go: a custom channel group, an exploration and a report comparison. They do not accept the same input, so the builder writes a version for each.

See what GA4 already labels

  1. Sign in to Google Analytics and select Reports in the left menu.
  2. Select Acquisition, then Traffic acquisition. The table opens on Session default channel group. Look for the row named AI Assistant.
  3. Change the table's dimension to Session source / medium.
  4. In the search bar above the table, type ai-assistant and press Enter. Each row left is a source GA4 gave that medium.

Google's help page on reports and explorations says this search field uses a contains match and is not case sensitive. It takes one phrase, not a regular expression. To see ChatGPT alone, search for chatgpt.com instead.

Create an AI assistants channel in a custom channel group

  1. In Admin, under Data display, click Channel groups. You need the Editor role or above.
  2. Click Create new channel group. It starts as a copy of the default group. Give it a name.
  3. Click Add new channel and name it, for example AI assistants.
  4. Add a condition, choose Source, select matches regex and paste the expression from the builder.
  5. Click Save channel.
  6. Click Reorder and drag the new channel above Referral, then click Apply. If the group has another channel that would match the same visits, put yours above that one too.
  7. Click Save group, then choose the group as the dimension in the Traffic acquisition report.

These are the steps on Google's custom channel groups page. The order matters because Google puts a visit in the first channel whose definition it matches. Google also says custom channel groups can be applied to your reports retroactively, so the new channel shows past visits as well as new ones. A standard property can hold 2 custom groups and a 360 property 5, with up to 50 channels in each.

For a row per assistant, add one channel for each line of the "One channel per assistant" box, all of them above Referral.

Filter an exploration to AI assistants

  1. In Explore, under Start a new exploration, select the Free form template.
  2. In the Variables panel, click the plus sign beside Dimensions, select Session source and click Import. Import the metrics you want in the same way, such as Sessions and Key events.
  3. Double-click Session source to add it to the rows, and add the metrics to the table.
  4. At the bottom of the Settings panel, in Filters, select Session source.
  5. Select the regex match type, paste the expression and click Apply.

Google's explorations page says you can add up to 10 filters and that all of them must be met. Filters are joined with AND, so ten assistants cannot go in ten filters. They have to be one expression, which is why the builder joins them with the OR sign.

Compare AI visitors with everyone else in a report

  1. Open a report and click the comparison control at the top right, then Create new.
  2. Choose the dimension Session source and the match type contains.
  3. Add each line of the "Values for a contains condition" box as a value. Google says several values in one condition are joined with OR.
  4. Click Apply.

Google's comparisons page lists two kinds of match type, exact and contains, and no regular expression. It also says only dimensions that have values appear in the list. A contains match is looser than the expression: the value meta.ai also matches a longer source that merely has those characters in it. If Session medium is offered, a single condition of Session medium exactly matches ai-assistant is the shortest comparison there is.

Where each output from the builder goes, and the rule Google documents for that place
PlaceWhere it isWhat to chooseThe documented ruleWhat to paste
Custom channel groupAdmin, Data display, Channel groupsSource, matches regexFull match by default. Not case sensitive.The expression
Exploration filterExplore, Settings panel, FiltersSession source, the regex match typeFull match by default. Case sensitive.The expression
Report comparisonThe comparison control at the top right of a reportSession source, containsNo regex: exact or contains only. Case sensitive.The list of values
Search field above a report tableReports, Acquisition, Traffic acquisitionContains, one phraseNot case sensitive.ai-assistant
Data Studio calculated fieldA Google Analytics data sourceREGEXP_MATCHMatches the entire value. RE2 syntax.The CASE formula
BigQueryThe GA4 export tablesREGEXP_CONTAINSPartial match.The condition

GA4 regex rules that make or break a copied expression

Four rules decide whether an expression pasted into GA4 does what its author meant: the syntax GA4 accepts, whether a match has to cover the whole value, whether capitals matter, and how long it may be. Google documents the first three. An expression written with one of them in mind can match something quite different under another.

  • Syntax: RE2. Google's regex help page for Analytics points to the RE2 syntax, and Google's help page for REGEXMATCH in Sheets says Google products use RE2 for regular expressions. RE2 lists lookaheads, lookbehinds and backreferences as not supported. The builder uses none of them: only groups, the OR sign, one negated character class and the two anchors.
  • Full match by default. The same page says: "By default, Google Analytics Regex is full regex and case sensitive." Its example is that a regex of San Francisco returns only San Francisco, and that .*San Francisco.* is needed to return South San Francisco as well.
  • Case. Exploration filter expressions are case sensitive. Channel group definitions are not. The builder writes every value in lowercase, the form a hostname takes in a referrer. A utm_source typed with capitals would need its own entry in an exploration.
  • Length. None of the Google pages read for this tool states a maximum length for a regex condition. The builder shows the character count of each expression. The default one, with all 10 assistants, is 217 characters.

The builder's expression has one shape whatever you tick:

^([^/]*\.)?(value|value|value)(/.*)?$

^            the start of the source value
([^/]*\.)?   an optional subdomain, such as www.
(a|b|c)      one of the values you ticked, dots escaped
(/.*)?       an optional path after the hostname
$            the end of the source value

Because it is anchored at both ends, it gives the same answer where a field does a full match and where it does a partial one. That matters in BigQuery, where REGEXP_CONTAINS is a partial match.

Google's example expression and the builder's, on the same ten values

Google's custom channel groups page gives an example expression for AI assistants and adds that you should update it as the list of assistants changes. It is a starting point, and it is worth seeing what it matches before you paste it. This is the example as published:

^.*ai|.*\.openai.*|.*chatgpt.*|.*gemini.*|.*gpt.*|.*copilot.*|.*perplexity.*|.*google.*bard.*|.*bard.*google.*|.*bard.*|.*.*gemini.*google.*$
Which source values each expression matches. The last three values are made up.
Source valueWhat it isGoogle's example, full matchGoogle's example, partial matchThe builder's expression
chatgpt.comChatGPTYesYesYes
gemini.google.comGeminiYesYesYes
copilot.microsoft.comMicrosoft CopilotYesYesYes
claude.aiClaudeYesYesYes
perplexity.aiPerplexityYesYesYes
chat.deepseek.comDeepSeekNoNoYes
grok.comGrokNoNoYes
newsletter-dubaiA made-up campaign source that ends in aiYesYesNo
sendgpt.exampleA made-up site with gpt in its nameYesYesNo
mail.example.comA made-up webmail referrerNoYesNo

Each cell was worked out by running the expression, in the same code as the builder. Three things stand out. The example's first alternative, ^.*ai, accepts any value that ends in the letters ai under a full match, which includes every site on a .ai address whether or not it is an assistant. Its .*gpt.* alternative accepts any source with gpt anywhere in its name. And it has no entry for DeepSeek or Grok, two of the assistants Google's own channel description names. The builder's expression matches the listed addresses and nothing else, and reads the same under a full or a partial match.

AI traffic sources: the assistants on the list and how each was confirmed

The builder covers 10 AI assistants. Each address on the list was confirmed on 13 October 2026 in one of two ways: the assistant's maker links to it from its own page, or a request to the address returned the assistant itself or a redirect to it. Lists copied between blog posts were not used as a source.

The assistants the builder and the checker know, and where each address was confirmed
AssistantSource values matchedNamed on Google's pagesHow it was confirmed
ChatGPT chatgpt.com, chat.openai.com Channel description, Release note, Custom channel example chatgpt.com: OpenAI's Help Center links ChatGPT to this address. chat.openai.com: The earlier address. A request to it is redirected to chatgpt.com.
Gemini gemini.google.com, bard.google.com Channel description, Release note, Custom channel example gemini.google.com: The page at this address is titled Google Gemini. bard.google.com: The earlier address. A request to it is redirected to gemini.google.com.
Microsoft Copilot copilot.microsoft.com, copilot.com Channel description, Custom channel example copilot.microsoft.com: A request to this address is redirected to copilot.com. copilot.com: The page at this address is titled Microsoft Copilot.
Claude claude.ai Release note, Custom channel example claude.ai: Anthropic's page for Claude links to this address.
Perplexity perplexity.ai Custom channel example perplexity.ai: The page at this address is titled Perplexity.
DeepSeek chat.deepseek.com Channel description chat.deepseek.com: DeepSeek's home page links to this address for its chat.
Grok grok.com Channel description grok.com: The page at this address is titled Grok.
Meta AI meta.ai Not named meta.ai: The page at this address is titled Meta AI.
Mistral Vibe chat.mistral.ai Not named chat.mistral.ai: Mistral AI's page for Mistral Vibe, formerly Le Chat, links to this address.
Duck.ai duck.ai Not named duck.ai: The page at this address is titled Duck.ai by DuckDuckGo.

The third column says where Google names the assistant: in the description of the AI Assistant channel, in the release note for it, or in the example on the custom channel groups page. "Not named" means none of those pages mentions it, so whether GA4's own channel includes it is not something you can read anywhere. Your expression will still find its visits.

The list is short on purpose. An address that could not be confirmed at its source is left out. If your referral report shows an assistant that is missing, type its hostname into "Add your own" and it joins the expression. Addresses change, too: two of the rows above are earlier addresses that now redirect.

Get your free CRO audit

Enter your website and email and the audit starts right away. Watch it check your page live: eight checks, each scored out of 100, and three fixes you can make now.

How to track AI traffic in Data Studio, BigQuery and Google Sheets

Outside the GA4 interface the same list becomes a formula. In Data Studio, which Google called Looker Studio until it renamed it, the list is a calculated field. In BigQuery it is a condition on the export's session source. In Google Sheets it is one REGEXMATCH formula beside an exported report.

Data Studio

Add a calculated field to your Google Analytics data source and paste the formula from the "Data Studio calculated field" box. It returns the assistant's name, so one field gives you both a filter and a breakdown. Google's REGEXP_MATCH page says the function returns true only when the entire value matches, and that a pattern with backslashes may need extra escaping unless it is written as a raw string. The formula uses raw strings for that reason. It assumes the field is named Session source: change the name if your data source calls it something else.

BigQuery

The GA4 export keeps a session's last-click source in session_traffic_source_last_click.manual_campaign.source, according to Google's export schema. To keep only AI assistant sessions, use the condition in a WHERE clause:

REGEXP_CONTAINS(session_traffic_source_last_click.manual_campaign.source, r'^([^/]*\.)?(chatgpt\.com|chat\.openai\.com|gemini\.google\.com|bard\.google\.com|copilot\.microsoft\.com|copilot\.com|claude\.ai|perplexity\.ai|chat\.deepseek\.com|grok\.com|meta\.ai|chat\.mistral\.ai|duck\.ai)(/.*)?$')

Google's BigQuery documentation describes REGEXP_CONTAINS as a partial match. The anchors in the expression make it behave as a full one.

Google Sheets

Export the Traffic acquisition report, put the source in column A and add this formula in the next free column. It returns TRUE for an AI assistant:

=REGEXMATCH(LOWER(A2), "^([^/]*\.)?(chatgpt\.com|chat\.openai\.com|gemini\.google\.com|bard\.google\.com|copilot\.microsoft\.com|copilot\.com|claude\.ai|perplexity\.ai|chat\.deepseek\.com|grok\.com|meta\.ai|chat\.mistral\.ai|duck\.ai)(/.*)?$")

For a quick look without a formula, paste the same rows into the checker at the top of this page.

What AI traffic tracking in GA4 cannot see

AI traffic tracking in GA4 counts one thing: visits that arrive with an AI assistant's address as the referrer or in a utm_source. It cannot see visits that arrive without a referrer, clicks from Google's own AI results, answers that mention you without a click, or crawlers. Treat the number as the part you can see, not the whole.

  • Visits with no referrer are direct. Google's page on campaigns and traffic sources says a session is processed as direct traffic when no information about the referral source is available. If a link in an assistant is opened in a way that passes no referrer, the visit joins (direct) / (none) with every other untraceable visit, and no filter can pull it back out.
  • Google's AI Overviews and AI Mode are Organic Search. Google's channel definitions say Organic Search includes clicks from AI Overviews and AI Mode and that the AI Assistant channel excludes them. In Search Console, Google's page on AI features says they are counted in the Performance report under the Web search type. Neither page describes a way to separate them.
  • A referral is a visit, not a citation. An assistant can name your brand or cite your page without anyone clicking. Analytics sees none of that. Mentions are measured by asking the assistants and counting the answers, which is what the share of voice calculator works from.
  • Crawlers are not visitors. GA4 counts a visit when its JavaScript tag runs in a browser. A crawler that does not run JavaScript never triggers the tag, so crawler requests are a question for your server logs. The crawlability test shows what such a crawler receives from a page, and the robots.txt generator sets which AI crawlers may fetch it.
  • Paid and unpaid clicks need a tag to tell apart. OpenAI's help page on ads in ChatGPT says advertisers can add tracking parameters such as UTM parameters to landing page URLs. If you run ads there, tag them with the UTM generator, so a paid click never depends on the referrer to be recognized.
  • The list goes out of date. Assistants move address and new ones appear. Google's own note under its example says to update your regex when the URLs or the list of assistants change. Check your referral report for new sources from time to time and add them.

Do AI visitors convert? Compare the segment before you act

Once the segment exists, the useful question is not how many AI visitors you get but what they do. Compare the segment's conversion rate with your other channels, on the same key event and the same dates. A small segment swings widely from week to week, so check whether a gap is real before you change anything because of it.

The table shows why. Both halves have the same two conversion rates. Only the number of sessions differs. Every figure is made up to show the arithmetic and is not a benchmark.

The same gap in conversion rate, tested on two sample sizes (made-up numbers)
PeriodAI AssistantOrganic Searchp-valueReading
One month14 key events in 400 sessions, 3.50%225 key events in 9,000 sessions, 2.50%0.2138Could be chance at the 95% level
Four months56 key events in 1,600 sessions, 3.50%900 key events in 36,000 sessions, 2.50%0.0129Unlikely to be chance at the 95% level

In the first month the AI Assistant segment converts at 3.50% against 2.50% for Organic Search. It looks like a clear lead, but with 14 key events a two-sided test gives a p-value of 0.2138, well above the 0.05 that the usual 95% level asks for. With four times the sessions and the same two rates, the p-value is 0.0129. The rates did not change. The evidence did.

  1. Work out each rate. Key events divided by sessions, per channel. The conversion rate calculator does it, and the guide to conversion rate in GA4 shows where the numbers are.
  2. Test the gap. Put both channels into the statistical significance calculator. If the result could be chance, keep collecting before you draw a conclusion.
  3. Look at where they land. Add Landing page to the exploration. The assistant chose the page, not you, and it may be one you never designed as an entrance.
  4. Fix the pages, not the channel. You cannot edit what an assistant says. You can change what its visitors find. Run those landing pages through the free CRO audit, which scores the first screen, calls to action, forms, trust, mobile, speed and AI agent readiness.

A low rate from AI visitors is not always poor traffic. Someone who has already read a summary of your page may arrive with one narrow question, and a page that buries the answer loses them. That is a page problem, and it is one of the few parts of this channel you control.

Tracking tells you who arrived. These tools cover the steps on either side: whether assistants can read your pages, how often they mention you, and what the visitors are worth.

See all free tools and how they fit together.

AI traffic tracking FAQ

How do I track ChatGPT traffic in Google Analytics?

Open Reports, Acquisition, Traffic acquisition in Google Analytics 4 and look for the AI Assistant channel, which Google added on May 13, 2026. To see ChatGPT on its own, switch the table to Session source / medium and search for chatgpt.com, or add a channel to a custom channel group with a regular expression on Source.

Does Google Analytics track AI traffic?

Yes. Since May 13, 2026, Google Analytics 4 sets the medium to ai-assistant and the campaign to (ai-assistant) when a visit's referrer matches an assistant it recognizes, and files the visit under the AI Assistant channel. Google's pages name ChatGPT, Gemini, Deepseek, Copilot, Grok and Claude as examples and do not publish the full list.

What is AI referral traffic?

AI referral traffic is the visits that reach a website from a link inside an AI assistant, such as a source link in a ChatGPT or Perplexity answer. Analytics can identify the visit when the browser passes the assistant's address as the referrer, or when the link carries a utm_source. LLM traffic and AI search traffic are other names for the same visits.

Why does ChatGPT traffic show up as direct?

A visit is counted as direct when it arrives with no referrer and no campaign parameters. Google's documentation says a session is processed as direct traffic when no information about the referral source is available. A link opened from an assistant in a way that passes no referrer lands there, and no filter can move it back.

Are Google AI Overviews and AI Mode counted as AI traffic in GA4?

No. Google's default channel definitions put clicks from AI Overviews and AI Mode in Organic Search and say the AI Assistant channel excludes them. In Search Console they are counted in the Performance report under the Web search type, together with every other search result.

Is GA4 regex case sensitive?

By default, yes. Google's regex help page says Google Analytics regex is full regex and case sensitive, and its explorations page says filter expressions are case sensitive. Channel group definitions are the exception: Google says they are not case sensitive. The builder writes every value in lowercase, the form a hostname takes in a referrer.

Does matches regex in GA4 have to match the whole value?

Yes, by default. Google's example is that a regex of San Francisco returns only San Francisco, and that you add .* on each side to match South San Francisco too. The builder's expression is anchored at the start and the end, so it gives the same result whether a field reads it as a full or a partial match.

Do I still need a custom channel group now that GA4 has an AI Assistant channel?

Only if you want something the built-in channel does not give you: one row per assistant, an assistant that Google's channel does not recognize, or your own definition that you can read and change. Google says custom channel groups apply to reports retroactively. A standard property can hold two of them, with up to 50 channels each.

Is this AI traffic checker free, and is anything I paste stored?

It is free and needs no sign-up. The builder and the checker run in your browser: the rows you paste are read on your own device, not sent to Convertica and not stored. The tool does not connect to Google Analytics or to any AI assistant.

Does AI traffic tracking show how often AI assistants mention my brand?

No. A referral is a visit: someone clicked a link. An assistant can name or cite a site many times without anyone clicking, and analytics never sees that. Mentions are measured by asking the assistants a fixed set of questions and counting the answers, which is a different job from reading referrers.

Find out what is costing you conversions

Enter your website and email and the audit starts right away. Watch it check your page live: eight checks, each scored out of 100, and three fixes you can make now.