Hey everyone,
I’m trying to get a better understanding of how Tracking Code variables (utm_medium, utm_campaign, etc.) and Marketing Channels should work together in Adobe Analytics. I’m running into an issue where we can see medium parameters under non-paid channels, even though the user originally arrived via a paid channel.
Here’s my setup:
I have several Marketing Channel Processing Rules in place.
The Tracking Code (s.campaign) is set only when UTM parameters are present in the URL.
The tracking code variable persists for 30 days (default expiration).
If a visit has no UTM parameters, s.campaign remains undefined.
The issue:
1. A user lands on the site via a paid campaign (utm_medium=cpc, utm_campaign=Summer_Sale). Tracking Code is set correctly.
2. Let say, a few days later, the same user returns via Google. According to our Marketing Channel rules, this visit is identified as Organic Search, since there are no UTM parameters, the tracking code variable is undefined.
3. As a result, we see the medium variable under Organic Search populated with the valid value from the paid campaign
My Questions:
Since the tracking code persists for 30 days, how can we prevent the medium from being populated for non-paid channels, like Organic Search, when the user returns without new UTM parameters?
Should the tracking code be reset under certain conditions to avoid this kind of overlap?
Is it correct to mix tracking code variables together with Marketing Channels, or should they be handled separately to avoid these issues?
Would love to hear how others are handling this! Any insights or best practices would be really helpful.
Thanks!
answering to your first question you can clear s.campaign manually when no UTM parameters are present and the user is coming from a non-campaign source (like direct or organic traffic).
for example :
if (!location.href.includes("utm_")) {
s.campaign = "";
}
Let me know if this works
Views
Replies
Total Likes
Dear @purnimajena
From what I’ve observed, when a user first lands via a paid channel (like paid search), all subsequent hits in that same session get associated with the paid channel — which makes sense. But if I manually unset s.campaign when there are no UTM parameters, I end up only seeing the tracking code for the initial hit, and the rest show as unset (unspicified).
So I'm wondering, what is the best practice to only set s.campaign on the landing page and allow it to persist throughout the session (and even beyond, if needed)? Or should it be reset/cleared at some point during a user's return visits (like via organic or direct), especially if there are no UTM parameters?
I’d love to know how others handle this — whether tracking code should only reflect the latest campaign, or persist as long as it’s valid, regardless of the return channel.
Views
Replies
Total Likes