The hardest part of proving GEO works is attribution. A click from Google search is neatly labeled in your analytics; a visit driven by ChatGPT often arrives as "Direct" or a generic "Referral," so the revenue it produces gets credited to the wrong channel — or to nothing at all. Marketers call this "dark AI traffic," and it's why GEO ROI looks invisible even when AI answers are quietly sending you buyers.
The good news: as AI search matures, it leaves more distinct footprints. This guide shows how to surface that data and attribute conversions to your GEO work — configuring GA4 to catch AI referrers, tagging the links you control, modeling the zero-click influence you can't tag, and closing the loop with off-site visibility so you can report real ROI instead of a shrug.
Key takeaways
- AI touches your funnel two ways: referral clicks (a citation link in Perplexity or Gemini) and zero-click influence (a shopper reads a good ChatGPT answer, then types your domain directly, landing in GA4 as "Direct"). - Referral clicks are recoverable with a GA4 AI channel; zero-click influence is inferred, not measured — model it, don't fake a clean number. - Add UTM parameters to every link you control, including entries in `llms.txt`, because some AI clients strip referrer data and dump the visit into Direct. - Attribute on behavior and conversions, not just sessions. AI-referred visitors are pre-qualified, so compare their conversion rate and revenue against organic search, not their raw volume. - GEOly connects the off-site half — where you appear and get cited in AI answers — to on-site sessions via its GA4 integration, so citations and conversions sit in one view.
Step 1: Configure GA4 to catch AI referrers
GA4 captures referral data, but AI sources are scattered and easy to miss, so build a dedicated segment or channel. The domains that actually send clicks in 2026 include `chatgpt.com` and `openai.com`, `perplexity.ai`, `gemini.google.com` (and legacy `bard.google.com`), `claude.ai` and `anthropic.com`, and `copilot.microsoft.com`. Microsoft is the messy one: Copilot and Bing Chat traffic often shows as `bing.com` mixed with regular search, or falls into Direct.
The fast route is a custom channel group. In GA4 Admin, create one, add an "AI Search" channel above Referral and Organic (order matters — GA4 assigns each session to the first matching channel), and match session source with a regex covering those domains. For the full channel-group build, see [how to track AI traffic in GA4](/blog/track-ai-traffic-ga4).
Gotcha: this captures referral clicks only. It misses the zero-click influence entirely, so treat the number as a floor, not the whole picture.
Step 2: Tag the links you control with UTMs
You can't tag the links ChatGPT renders, but you can tag every link you place in AI-friendly locations — and that's your defense against stripped referrers. Anywhere you can append parameters, add a consistent `utm_source` and `utm_medium` (for example `utm_source=chatgpt&utm_medium=ai`) so those sessions land deterministically in your AI reporting instead of relying on referrer detection.



