How to track ChatGPT traffic in Google Analytics 4
ChatGPT already appears in your GA4 property if you know where to look. Here is how to find it, how to give it a channel of its own, and why the number you get is a floor rather than a total.
Find it first, before you configure anything
Before creating anything, check whether you have traffic at all. In GA4, open Reports, then Acquisition, then Traffic acquisition. Change the primary dimension from Session default channel group to Session source, and use the search box above the table to filter for chatgpt.
You are looking for two entries. The first is chatgpt.com, which is the referral host. The second is the string chatgpt.com appearing as a source when the link carried a campaign tag, because OpenAI appends utm_source=chatgpt.com to outbound links in some contexts. Both are real ChatGPT traffic and they arrive by different mechanisms.
If the table is empty, you have no attributable ChatGPT traffic in the period you are looking at. That is a finding, not a configuration error, and it is worth sitting with before you spend an afternoon building reports for a channel that has not sent anyone yet.
Give AI assistants a channel group of their own
By default GA4 files chatgpt.com under Referral, alongside every blog and directory that links to you. That makes the channel invisible in the report most teams actually read, which is Session default channel group.
To fix it, open Admin, then Data display, then Channel groups. Create a new channel group — do not edit the default one, because the default is used by other reports and by Google Ads and you will regret changing it. Name the new group something plain like Channels with AI.
Inside the new group, add a channel called AI assistant and give it a condition on Source matching a regular expression. A workable expression is chatgpt\.com|perplexity\.ai|claude\.ai|gemini\.google\.com|copilot\.microsoft\.com. Drag the new channel above Referral in the ordering, because GA4 evaluates channels top down and the first match wins. If AI assistant sits below Referral, it will never match anything.
Channel groups apply going forward and also to historical data in most reports, which is unusual and useful — you are not starting a time series from today.
Add a comparison rather than rebuilding every report
Once the channel exists, the fastest way to use it is a comparison rather than a custom report. At the top of any standard report, click the Add comparison control, set the dimension to your new channel group and the value to AI assistant, and apply it. Every standard report then shows AI traffic beside the total.
This matters more than it sounds. A custom report is something you have to remember to open; a comparison shows up in the reports your team already reads on Monday morning.
Why your number is a floor, not a total
Here is the part most guides skip. A growing share of AI assistants send outbound links with the referring page removed, using rel="noreferrer" or an equivalent redirect. When that happens the visit arrives in GA4 with no source at all and is filed as Direct.
So the figure your new channel produces is the portion of AI traffic that carried a referrer or a campaign tag. The rest is sitting in Direct, mixed with people who typed your domain and people who clicked a link in an email client. There is no configuration that separates them after the fact, because the information was never sent.
You can bound the problem without solving it. Look at whether Direct traffic rose in the same period AI referrals rose, and whether Direct landing pages shifted towards the pages AI assistants tend to cite — deep pages rather than your homepage. Neither is proof. Both are better than pretending the gap is not there.
What to do with the number once you have it
Compare landing pages first. AI assistants cite specific pages rather than homepages, so the landing page distribution for AI traffic usually looks nothing like your overall distribution. That tells you which content is doing the work.
Then look at engagement rate and key events for the segment. AI-referred visitors arrive with a question already half-answered, and in many properties they behave differently from search visitors — sometimes better, sometimes considerably worse. Either finding is useful and neither is predictable from outside.
Finally, resist the urge to report a single AI traffic number to management without the caveat attached. The caveat is not a hedge; it is the difference between a figure that survives a follow-up question and one that does not.
Common mistakes that produce a wrong number
The first is comparing periods either side of the day you created the channel and reading the difference as growth. Channel groups apply retroactively in most reports, so the series is continuous, but if you built the channel and simultaneously changed the source dimension you are comparing two different measurements.
The second is including bing.com in the AI channel without deciding why. Copilot answers served inside Bing refer as bing.com, and so does every ordinary Bing search result. Whichever you choose, the same choice has to hold across every period you compare.
The third is reading engagement rate for a channel with forty sessions. A rate computed on a small denominator swings for reasons that have nothing to do with the channel, and treating that swing as a finding produces confident decisions built on noise.
The fourth, and the most expensive, is presenting the figure without its limitation. The number covers visits that carried a referrer or a tag. Stated that way it is solid. Stated as total AI traffic it is wrong, and the correction usually arrives in front of an audience.
Where this fits in the wider picture
GA4 answers one question: who arrived and what they did. It cannot tell you whether an assistant named you at all, because a mention that produced no click leaves no trace in any analytics property.
For that half you need the answers themselves — asking the questions your buyers ask and recording which companies get named. That is a separate exercise with separate tooling, and the two halves are most useful joined rather than read apart.
The join is what makes either half actionable. Appearing frequently and receiving nobody is a click-through problem. Receiving traffic that converts badly is a landing page problem. Neither diagnosis is available from one side alone.
Questions
- Why does chatgpt.com show as Referral instead of its own channel?
- Because GA4's default channel grouping has no AI category and files any unrecognised referring host under Referral. Creating a custom channel group is the only way to separate it, and you should create a new group rather than editing the default one.
- Should I edit the default channel group instead?
- No. The default grouping feeds other reports and integrations, and changing it has effects well beyond the report you are looking at. Create a second group and use it through a comparison.
- Will this show me historical ChatGPT traffic?
- In most reports yes, because GA4 applies custom channel groups retroactively to the data it already holds. That is unusual among analytics tools and it means you are not starting your time series from the day you configured it.
- Is the number I get complete?
- No. It covers visits that arrived carrying a referrer or a campaign tag. Visits where the assistant stripped the referring page land in Direct and cannot be separated after the fact, so treat the figure as a floor.