UTM parameters in Adobe Analytics: map them to tracking codes, not just links
GA4 reads UTM parameters by itself; Adobe Analytics fills Tracking Code from a variable you set. The documented ways to bring UTMs into Adobe.
On this page
- GA4 and Adobe read campaign links differently
- How Adobe captures a campaign tracking code
- Bringing utm_ parameters into Adobe: the two documented options
- Classify tracking codes into source, medium and campaign
- Marketing channel rules that use query parameters
- Build the links with one naming scheme
- Sources
Google Analytics 4 (GA4) reads UTM parameters from a link by itself: when a user clicks a tagged link (opens in a new tab), the URL parameters are sent to Analytics. Adobe Analytics works differently. Its campaign variable (opens in a new tab) populates the Tracking Code dimension and typically gets its value from a query string, but your organization determines exactly how it is set. So before relying on UTM links in Adobe, check how your implementation sets that variable.
GA4 and Adobe read campaign links differently
In GA4, the parameter values are visible in the Traffic acquisition report (opens in a new tab) once a visitor arrives through the link.
In Adobe Analytics, the campaign variable (opens in a new tab) is dedicated to collecting tracking codes, and it fills the Tracking Code dimension. Which URL parameter feeds it is an implementation decision. Adobe's campaign tracking guide (opens in a new tab) notes that a company also using Google Analytics might already have a UTM tracking code model established.
Customer Journey Analytics is explicit about it: GA4's utm_* parameters are not collected automatically (opens in a new tab) there, and each must be mapped to an XDM field during implementation.
Build a campaign link
Create a UTM link with the free builder. No account needed.
How Adobe captures a campaign tracking code
Adobe's campaign tracking guide (opens in a new tab) leaves the query string parameter to your organization's tracking requirements and names cid (short for campaign ID) as a common one. How you read it depends on how Adobe is implemented on the site:
- Adobe Analytics extension (tags): you can set campaign (opens in a new tab) while configuring the Analytics extension (global variables) or under rules, to a value or to a query string parameter.
- Web SDK: for campaign using the Web SDK, the XDM field is
trackingCodein themarketingobject. - Tags Core extension: a page info data element (opens in a new tab) can use the Query string parameter attribute: specify a single URL parameter in its URL Parameter field.
- The getQueryParam plug-in: provided by Adobe Consulting, the getQueryParam plug-in (opens in a new tab) extracts the value of any query string parameter in a URL and is useful for campaign codes on landing pages. For simple needs, Adobe recommends the URL parameter features of the Web SDK or the Analytics extension, or the getQueryParam method of AppMeasurement's Util object.
Bringing utm_ parameters into Adobe: the two documented options
For organizations that also use Google Analytics and already have parameters like utm_source and utm_medium, Adobe's campaign tracking guide (opens in a new tab) documents two options:
| Option | How it works | Trade-off Adobe states |
|---|---|---|
| One Tracking Code | Send all the UTM query strings into the Tracking Code dimension as concatenated values, then use classification rules to create a dimension for each UTM parameter | A more complex learning curve, but no extra eVars |
| One eVar per parameter | Send each UTM query string into a separate eVar | Simpler to implement, but uses extra eVars |
Agree the separator or the eVar slots with whoever maintains your Adobe implementation before the links go out.
Classify tracking codes into source, medium and campaign
Consistently structured tracking codes let you create classification rules (opens in a new tab) for insight into performance by category. That is what makes the concatenated option work.
In classification sets (opens in a new tab), open Components in the top menu bar, then Classification sets. Rules support automatic classification when the key dimension keeps changing, and a split rule divides the value on a token into one or more classifications.
If you still use the older Classification Rule Builder (opens in a new tab), Adobe will deprecate it on February 28, 2027, and it does not classify a tracking code that is URL encoded.
Marketing channel rules that use query parameters
Marketing Channel processing rules (opens in a new tab) set the Marketing Channel and Marketing Channel Detail dimensions. They live under Analytics > Admin > Report Suites > Edit Settings > Marketing Channels > Marketing Channel Processing Rules. A condition can test an individual query string parameter in the page URL, one parameter per condition, so a rule can look at utm_medium directly.
Points to plan for:
- Rules higher up the list can stop hits from reaching your Tracking Codes channel, per the Tracking Code dimension page (opens in a new tab). Marketing channels have a rolling 30-day visitor engagement expiration; tracking codes expire based on when the variable was set.
- Changing processing rules does not affect data retroactively (opens in a new tab). Set them up before the campaign starts.
- Rules on query string parameters do not work correctly when the characters are encoded in the page URL; Adobe's knowledge base (opens in a new tab) says to check that the implementation decodes parameters before sending them.
Build the links with one naming scheme
Whatever mapping you choose, the links still need consistent values. For GA4, Google recommends always using utm_source, utm_medium and utm_campaign (opens in a new tab), and values are case sensitive: utm_source=google differs from utm_source=Google. Agree the spellings in a naming worksheet, and see the UTM parameters reference for each field.
The free UTM builder builds a campaign URL with UTM parameters for GA4 and can replace spaces with hyphens. Paste a finished link into the UTM link checker to see what to fix and which GA4 channel it lands in. Both tools are built around GA4.
Sources
- Google Analytics: campaign URL parameters (opens in a new tab)
- Adobe: campaign variable (opens in a new tab)
- Adobe: campaign tracking use case (opens in a new tab)
- Adobe: GA4 to Customer Journey Analytics reports (opens in a new tab)
- Adobe: tags Core extension (opens in a new tab)
- Adobe: getQueryParam plug-in (opens in a new tab)
- Adobe: classification set rules (opens in a new tab)
- Adobe: Classification Rule Builder (opens in a new tab)
- Adobe: Marketing Channel processing rules (opens in a new tab)
- Adobe: Tracking Code dimension (opens in a new tab)
- Adobe: marketing channels FAQ (opens in a new tab)
- Adobe knowledge base: encoded query parameters in processing rules (opens in a new tab)
Tools for this
-
Free UTM builder
Build a link with your campaign parameters.
-
UTM link checker
Check a tagged link and see which GA4 channel it lands in.
Frequently asked questions
Does Adobe Analytics read UTM parameters automatically?
Check your implementation. The campaign variable populates the Tracking Code dimension, and your organization determines how that variable is set, typically from a query string parameter.
Should I use cid or UTM parameters for Adobe?
Either can work. Adobe calls cid a common choice. If your links already carry utm_source, utm_medium and others for GA4, Adobe documents concatenating them into Tracking Code or sending each to its own eVar.
Why does a marketing channel rule miss my query parameter?
Adobe notes that processing rules on query string parameters do not work correctly when the characters are encoded in the page URL. Rules higher up the list can also prevent hits from attributing to the Tracking Codes channel.
Build a campaign link
Create a UTM link with the free builder. No account needed.