Once during a quarterly review with a client, they asked me: how much traffic has AI search actually brought us? I froze for a second — because in GA4, this traffic either shows up as direct access, or the source is empty, you simply can’t tell. Later I spent an afternoon configuring the channel rules, and only then did I get a clear picture of the real volume of AI traffic — about 6% of total organic visits, and the trend is rising.
Why it doesn’t show up by default
For AI tools like SearchGPT and Perplexity, when a user clicks your link in the conversation, the referrer might be empty (direct access), show as the AI tool’s domain, or carry special parameters. GA4 by default records empty referrers as direct — you completely can’t tell this traffic came from AI search.
Without identifying it, you don’t know how many visits AI brings you, and you can’t evaluate the return on AI optimization (llms.txt, structured data).
Three types of identification signals
The identification signals I use fall into three categories. The most reliable is Referrer domain — clicks from within AI tools usually carry a referrer. Add domains like chatgpt.com, perplexity.ai, gemini.google.com to GA4 channel rules, separately归类 as the “AI Search” channel. The second type is User-Agent — characteristic strings like GPTBot, PerplexityBot, used to identify crawler behavior from server logs. The third type is citation parameters — if AI tools carry parameters like utm_source=chatgpt, those can also be used for identification, but this depends on the tool’s specific implementation, reliability is average.
Among the three signal types, Referrer domain is what I rely on most.
GA4 configuration steps
Configuration actually isn’t complicated, I went through four steps. Step one, confirm auto-detection is enabled in the data stream. Step two, create an event or just use the default page_view. Step three, create an “AI Search” channel rule — source/medium matching combinations like chatgpt.com / referral, perplexity.ai / referral. Step four, place the rule after paid channels and before organic search, to avoid being mistakenly absorbed by organic.
These four steps take about fifteen minutes. After that, AI traffic appears as its own row in reports, viewable anytime.
Alternative when you don’t have GA4 access
If you can’t get GA4 backend access, you can also do it with server logs. Filter requests where User-Agent contains GPTBot, PerplexityBot, Anthropic, Google-Extended,统计 their crawl frequency and page distribution. This tells you “what AI crawlers are looking at on your site” — complementary to GA4’s “user clicks” — one looks at interest, one looks at conversion.
Don’t mix two things together
Finally, a reminder about an easy mistake: AI citation exposure (users asked but didn’t click in) and AI clicks (did click in) are two different things. The former is brand value, the latter actually enters the conversion funnel. In my current reports I have three columns: AI channel visits, AI crawler frequency, AI citation appearance count — look at each separately, don’t mix them together.
Configuring channel rules once takes fifteen minutes, and what you get in return is long-term observability of AI traffic. Those fifteen minutes are worth it.


