Track AI assistant traffic in Customer Journey Analytics

Many AI assistant visits arrive without a referrer but still carry a UTM tag. Customer Journey Analytics (CJA) can only count them if your data keeps that tag. So start there, then build derived fields that read both signals. These steps reflect our tests as of October 2026; the scorecard shows the current state.

Using Adobe Analytics? See Track AI assistant traffic in Adobe Analytics.

1. Capture the UTM tag

The referrer field only ever holds the referrer. When an assistant's app sends a tag and no referrer, the visit's only trace is utm_source in the landing page URL. If your data drops the query string, the visit lands in Direct, and no derived field can bring it back.

Check that one of these is true:

To test it, open any page on your site with ?utm_source=attribution-test appended, then look for that value in a freeform table on the page URL.

ChatGPT, Perplexity's apps and part of Copilot rely on the tag. Without it, those visits count as Direct. See Estimate your hidden AI traffic for how much each assistant sends this way.

2. Build the derived fields

Adobe documents a full setup in Report on LLM and AI-generated traffic: derived fields for the referrer, the query parameter and the user agent, plus a segment and a Workspace project. Start from it, and extend its value lists with the ones below. Its query parameter examples cover ChatGPT and Perplexity only.

  1. Create a derived field AI assistant (tag): URL Parse on the page URL to get the query parameter utm_source, then Lowercase, then Classify into assistant names. The UTM Parameters template does the parsing for you.
  2. Create a derived field AI assistant (referrer): URL Parse on the referrer URL to get the host, then Classify.
  3. Combine them with Case When. First, keep ChatGPT ad clicks out: a page URL with oppref or olref in its query string is a paid click, whatever UTM tags it carries. Then the referrer, then the tag. Apply the Google exception here: a visit tagged utm_source=chatgpt.com with a Google referrer came from search.
  4. Use the combined field as the AI assistants channel in your marketing channel derived field, below your paid channels and above search and referral. To report everything ChatGPT sends you, show ad clicks as their own line next to it, not inside it.

Derived fields apply to all reporting, including past data, so you can compare the result with last month straight away.

3. The values to match

Referrer hosts. Match the host or the host ending, so www. variants count:

ChatGPT
chatgpt.com, and com.openai.chatgpt from the Android app, which sends android-app://com.openai.chatgpt/
Gemini
gemini.google.com
Claude
claude.ai
Copilot
copilot.com, copilot.microsoft.com, copilot.cloud.microsoft, m365copilotapp.svc.cloud.microsoft
Perplexity
perplexity.ai

utm_source values:

ChatGPT
chatgpt.com
Documented by OpenAI. Exclude visits with a Google referrer.
Gemini
gemini, geminiforbusiness
Seen only from Sep 18 to 28, 2026. Keep them, in case the tag comes back.
Copilot
copilot.com
Match values that start with copilot.com: some arrive as copilot.com?form=MG0AUO.
Perplexity
perplexity
Sent by the apps, which send no referrer.
Claude
none
Claude adds no tag yet. Its referrer is the only signal.

Compared with Adobe's guide, add the three newer Copilot hosts, the ChatGPT Android app, the Gemini and Copilot tags, and the Google exception. Adobe also lists m365.cloud.microsoft and meta.ai. Keep them.

4. Check it works

  1. Ask an assistant to link to a page on your site, open the link, and find the visit in your AI assistants channel.
  2. Repeat from a phone app, where the tag is often the only signal.
  3. Recheck now and then. Assistants change their links without notice, and our changelog records each change we see.