| utm_source | copilot |
| utm_medium | ai-assistant |
| utm_campaign | (set per campaign) |
| utm_id | (set per campaign) |
| utm_term | (set per campaign) |
| utm_content | (set per campaign) |
Microsoft Copilot is the assistant layer Microsoft has stitched across its consumer surfaces — the standalone app at copilot.microsoft.com, the Copilot button in Edge, and the conversational answers inside Bing. Ask it a question and it answers in prose, often citing sources with outbound links. Those outbound links are the only place tracking enters the picture, because Copilot is a place people read answers, not a console where you configure campaigns.
That distinction matters. Every other “sender” in this catalog — Meta Ads, Google Ads, the rest — gives you a field to drop a UTM template into and a click ID it appends automatically. Copilot gives you neither. There’s no URL-parameters field, no gclid/fbclid equivalent, no macro substitution. So the honest framing is this: you can’t tag traffic inside Copilot. You tag the links you control — your own pages, the canonical URLs you publish — that Copilot may surface in an answer. Everything below follows from that.
How Copilot traffic appears in analytics
When Copilot links out and the browser preserves the referrer, the click usually arrives as copilot.microsoft.com. But Copilot’s tight coupling to Bing and Edge muddies this: depending on the surface and the session, the same kind of click can show up under a Bing referrer or a generic browser referral instead. And like every AI assistant, a large share of Copilot clicks carry no usable referrer at all — they land as (direct)/(none) in GA4.
This is the dark-traffic problem in miniature. Client-side analytics reads the referrer to assign a source; when the referrer is stripped, the source vanishes, and the click silently merges into your direct or unassigned bucket. GA4 now auto-detects Copilot (along with ChatGPT, Gemini, Grok, and Deepseek) by referrer and routes those sessions into its native AI Assistants channel — but that only works when a referrer actually arrives. The referrer-less clicks still slip through. You can’t fix Copilot’s referrer behavior. What you can do is make the link itself carry the source, so attribution doesn’t depend on a header that may not arrive.
The UTM convention to apply
Tag the links you publish that Copilot is likely to cite — documentation, comparison pages, anything you’ve written to be AI-readable — with a deliberate, consistent pair:
| Parameter | Value | Why |
|---|---|---|
utm_source | copilot | Names the assistant. Keep it separate from bing (search) and microsoft (Microsoft Advertising) so AI traffic stays legible. |
utm_medium | ai-assistant | The shared medium across every assistant in this catalog. GA4 recognizes it natively as the AI Assistants channel, so Copilot, ChatGPT, Perplexity, Gemini, and Claude group into one view automatically. |
utm_campaign | (your call) | Optional. Use it for the content theme or initiative the link belongs to. |
Values are lowercase and hyphen-separated, always. Copilot, copilot, and COPILOT create three separate rows in GA4 and split your reporting for no reason.
Limitations and gotchas
- No click ID, no per-citation token. Copilot exposes nothing like
gclid. You can confirm that a click came from Copilot, never which prompt or answer produced it. - You can only tag links you control. If Copilot writes a bare citation to your homepage, that link carries whatever you put on your canonical URL — and nothing if you put nothing. You can’t reach into the model’s output and append a UTM.
- Don’t UTM-tag internal links. A UTM on a link between your own pages overwrites the original source on the next pageview. Tag external-facing canonical URLs only.
- The Bing/Edge blur. Because Copilot rides on Bing and Edge, don’t expect a single clean referrer. Treat
utm_source=copiloton your own links as the source of truth, not the inbound referrer.
Verification
- Visit your tagged URL in a normal browser and confirm the UTMs land in the address bar and register in GA4 real-time as
copilot/ai-assistant. - Ask Copilot a question it should answer with your page, click the citation, and inspect the landing URL and the referrer your analytics records — that tells you how Copilot’s referrer behaves for your domain specifically.
- Check the AI Assistants channel. Confirm GA4’s native AI Assistants channel is catching the
utm_medium=ai-assistanttraffic instead of leaving it in Unassigned. For the receiver-side mechanics, see Google Analytics .
For the bigger picture — building a convention across all five assistants and getting the most out of GA4’s native AI Assistants channel — see the related guides below.
