Generative engine optimization, answer engine optimization — pick your acronym. People are finding you through AI assistants, not just blue links, and the natural next question is what UTM convention to adopt for that traffic.
The honest answer is the one nobody wants to publish: you don’t need one, and adopting one will make your reports worse.
This isn’t a philosophical position. It follows from two facts you can verify in ten minutes: your analytics already classifies AI traffic from the referrer, and the link an assistant cites is one you never authored.
Why the usual convention is wrong
The standard recommendation goes: set utm_medium=ai-assistant, pick a lowercase utm_source per assistant, apply it to “the links you control that an assistant might cite.”
That last clause is where it breaks. Which link, exactly?
When ChatGPT cites your guide, it emits your canonical URL — the address it read from your page. There is no advertiser console, no destination-URL field, no macro. You cannot add a parameter to a string generated inside someone else’s product.
So the only way to execute the advice is to publish your canonical URL with the parameters already baked in — https://yoursite.com/guide?utm_source=chatgpt&utm_medium=ai-assistant as the address you expose to the world. Follow that through:
- Every visitor gets labeled as AI traffic. Organic search, your newsletter, a link from a partner site, a bookmark — they all land on the tagged URL and all report as
chatgpt. Your AI channel is now your whole audience wearing a costume. - You overwrite correct data. UTM parameters take precedence over referrer detection in GA4. The AI sessions that were already classified correctly now carry your hand-typed label instead.
- You’re forging the classifier’s own output. GA4 writes
medium=ai-assistantitself when it recognizes an assistant referrer — Google’s documented rule is that “the medium is set toai-assistant… if the referrer matches a list of AI Assistants.” Typing that value yourself is asserting a match GA4 didn’t make. - You fragment your canonical URLs. A parameterized address in circulation is a second version of the page — cited, linked, and indexed as though it were the real one.
Four costs, in exchange for a classification you already had for free.
What your reports show without any of it
This is the table worth internalizing. It’s not a convention you apply — it’s what already appears in your analytics, produced from the referrer.
| Assistant | Referrer | Where it lands in GA4 |
|---|---|---|
| ChatGPT | chatgpt.com | AI Assistants |
| Google Gemini | gemini.google.com | AI Assistants |
| Microsoft Copilot | copilot.microsoft.com | AI Assistants |
| Grok | its own host, recognized by GA4 | AI Assistants |
| DeepSeek | its own host, recognized by GA4 | AI Assistants |
| Perplexity | perplexity.ai | Referral |
| Claude | claude.ai | Referral |
| Google AI Overviews / AI Mode | none (inside google.com) | Organic Search |
Google names the first five as recognized sources and doesn’t publish the list exhaustively. Perplexity and Claude aren’t among them, so they arrive as ordinary referrals under their hostnames — still visible, still correctly sourced. AI Overviews and AI Mode are excluded by design, because a click from inside a search results page is organic search.
AnyTrack does the same job on its side: every session gets a channel from the referrer and URL parameters, so AI assistants appear as their own channel in the Campaign Report with the conversions attached.
If you want Perplexity and Claude counted in the same row as the rest, build a custom channel group in GA4 that matches those hostnames by source. That’s an admin setting reading referrer data GA4 already collected — not a tag you put on your own pages. The GA4 channel guide walks through the rule.
Where a convention genuinely belongs
Dropping the AI taxonomy doesn’t mean dropping UTM discipline. It means applying it to links you actually author — which is what UTMs were always for.
Links you place somewhere. A newsletter link, an Instagram bio link, a syndicated guest post, a partner page, a QR code. You wrote those URLs and you chose where they’d live, so tag them for what they actually are:
https://example.com/guide?utm_source=newsletter&utm_medium=email&utm_campaign=2026-product-launch
https://example.com/pricing?utm_source=instagram&utm_medium=social&utm_campaign=instagram&utm_term=bio
If an assistant later cites one of those pages, the referrer handles the AI classification. You don’t pre-label a link with the channel you hope will find it — you label it with the channel you put it in.
Ad placements on assistants. This is the case that changes, and it’s arriving now. OpenAI opened self-serve advertising in ChatGPT during 2026, and others will follow. An ad is a link you author: you set the destination URL, you control the query string, and the platform publishes its own tracking template and click-ID parameter.
At that point you tag it exactly like Google or Meta — the platform’s documented template, its dynamic tokens for campaign and ad IDs, and a utm_source naming the platform as the ad channel it is. Read that platform’s own advertiser docs when you set it up; tokens and template syntax are platform-specific and they change. Don’t carry over a shape from a blog post, this one included.
Keep paid and organic separate. An ad placement inside ChatGPT and a citation in a ChatGPT answer are different channels that share a brand name.
The rules that still hold
The general UTM hygiene from UTM parameters best practices applies to every link you do tag, and none of it changed:
- Lowercase everything.
utm_source=Instagramandutm_source=instagramare two rows in every analytics tool on the market. - Hyphens between words, never spaces or underscores.
- Build links from one place instead of hand-typing them, so casing can’t drift.
- Never carry entry UTMs onto internal links. UTMs are for arriving, not for moving around.
The one rule the AI era adds is a subtraction: don’t invent a source for traffic you didn’t send.
A one-paragraph version to paste into your team doc
We do not tag links for AI assistants. GA4 and AnyTrack classify AI traffic automatically from the referrer, and the links assistants cite are our canonical URLs, which we never author. Never publish a canonical URL carrying
utm_source=chatgpt,utm_medium=ai-assistant, orutm_medium=ai— it mislabels every visitor who lands on that link, whatever their real source. Read AI traffic in the GA4 AI Assistants channel, plus theperplexity.aiandclaude.aireferral rows. Tag only links we place ourselves — newsletters, bio links, syndicated posts, partner pages — for the channel we placed them in. When we buy ad placements on an AI platform, tag those per that platform’s own advertiser template, kept separate from organic AI traffic.
Adopt that and your AI channel stays an honest measurement of a real thing, instead of a number you manufactured.
More in this series
- How to track ChatGPT, Perplexity, and Gemini traffic
- Why your AI traffic shows up as Direct / None
- Use AI to generate and govern your UTM taxonomy
- Agentic traffic: what AI shopping agents do to your attribution
- Tracking AI-generated ad campaigns without breaking your UTMs
- GA4 now has a native AI Assistants channel
- llms.txt and UTMs: why you shouldn’t tag the links AI assistants read