4 Steps to Better Campaign Data in Google Analytics
A Cure for Campaign Tag Soup
It’s so easy to tag your campaigns for Google Analytics that you can quickly fill your reports with a mishmash of labels and end up with campaign tag soup! But what’s the best way to get organized? Even if you know what medium and source mean, it’s not always obvious how you should fit campaign info into those slots. And what about the extra slots we get for campaign tags like campaign and content and term?
Take these 4 steps to develop a coherent campaign tagging plan and start improving your data today:
1. Build On the Default Labels
Google Analytics already fills your Traffic Reports with values (labels) for medium and source. Any new labels you create for your campaign data will fill the same reports, so think about what you want to see together in the list of mediums or sources. Making old and new labels look like part of the same family is a good way to get organized.
Medium has four default labels: referral, organic, cpc for paid search, and (none) for direct traffic. Think of these as the big buckets of traffic, the highest level marketing channels. Create new channels at the same high level and don’t get too specific. For example:
social
banner (or display)
direct-mail
Source has three types of labels by default: website names for referrals, search engines, and (direct). Think of these as your target audiences – the users of specific websites or search engines, or people who already knew you and came directly. Describe who’s viewing your campaign content with source labels like:
newsletter-subscribers
partner.com = the website where you put your banner ad
industry-today = the name of a publication where you advertise
postcard-list = the name of the mailing list
Remember the default labels also make lots of tagging unnecessary. Turn auto-tagging on in AdWords and you automatically get medium=cpc and source=google along with all the other AdWords dimensions including your campaign names. You have to tag other paid search campaigns, but you don’t have to tag things like links from affiliate sites. They’re already in the Referrals report with medium=referral and source=your-affiliate-site-name.
2. Make Labels Answer Questions
Creating labels for campaign and content and term is easier if you think of them as answers to questions, following the same lines as medium and source.
- Medium = What broad marketing channels are you using?
- Source = Who is viewing your content or delivering the viewers?
- Campaign = Why are you targeting these sources and (optional) when?
- Content = Which marketing effort performs better?
- Term = Which keywords perform better?
Campaign labels pull all the other labels together, identifying all the different mediums and sources you used for a particular purpose. Think about why you are targeting these audiences. It could be a product launch, a fundraising event, or an ongoing promotion. You might want to indicate the date or time of year here as well, since campaigns usually occur over some limited period of time.
product-launch-2011-july
community-event-2011-09-08
summer-rewards-program
Content labels help you compare how well different links perform within the same source, medium, or campaign. Which type of link persuades more people to click? Top or bottom of email? Different target text, maybe using different offers to see which is more attractive (free shipping or 20 percent off)? Text link or photo link? Or even a QR code!
Term looks like an extra slot for email or banner info, but should be used only for your paid search keywords. Whatever you tag with utm_term will end up in your Keywords reports! So let AdWords auto-tagging automatically capture your keywords, and work with any other paid search vendors to fill in utm_term with actual keywords as well.
3. Don’t Mix and Match
Consistency is everything. If you’re going to use email as a medium, don’t also use it as a source. Don’t put dates or seasonal info in any slot that seems convenient, pick one (like the campaign slot) and stick to it. When you need more granularity, consider adding it in the same slot like this example for sources:
newsletter-subscribers
newsletter-prospects
This still describes my target audience, so I think it makes sense to include it in the source label rather than bump it into the content label simply because that slot happens to be available. And being consistent has other benefits.
Using the same label across tags in the same slot also allows you to roll up data more easily. In the above example, I can search All Traffic sources for newsletter and see how the newsletter did overall as well as compare data for the two groups who received it. You can also compare performance across campaigns that had the same purpose but ran at different times, if you can search your Campaigns report for the label they have in common.
4. Document and Share
For best results, record everything in a campaign worksheet. Not only will it help you remember how you tagged prior campaigns to keep descriptions consistent, it’s absolutely essential as a guide for spelling and punctuation when more than one person is creating tags. Keep the worksheet in a shared space like Google Docs.
Another good thing about using a spreadsheet is that a formula can pull all your labels together into a campaign-tagged URL. Just make sure that utm_source comes first.
What’s your approach to campaign tagging? Have you developed a system that works for you? Please share in the comments.
About Dorcas Alexander
Dorcas Alexander is a Digital Analyst working with Google Analytics. Her path to LunaMetrics included stints in ad agency creative, math, computer science, language technology research, and corporate training. She loves to learn and teach what she’s learned. One of the top-rated tournament Scrabble players in Pennsylvania, Dorcas has an insatiable drive to compete and win. “Impossible” is not in her vocabulary.








There are principles I used for my google analytics campaign url builder at webstrategy360.com/GACUB
Great hints. I have a lot of campaigns and any suggestions to help streamline them is appreciated
Why do you say that source has to come first in the tagged URL? I’ve not seen that specified before, and examples on the web have it in various positions.
Good question, Richard. You don’t have to, but you should put source first because GA won’t recognize the rest of the utm campaign parameters if source is not included. There’s always the possibility that a really long shared link will be partially cut off, for example, if it ends up on two or more lines of text instead of one. See my colleague Jonathan’s post about required campaign tags from a couple years ago, which talks about how campaign tracking fails when utm_source is not included. I re-tested this last week and it’s still true.
Makes sense. Thanks.
Is there a character limit for each of these utm parameters? I can’t find that info anywhere in Google Analytics Help…
Hi Halee, You’re limited only by the overall length of the tracking data sent to GA (the utm.gif request, which contains a variety of data along with campaign parameters). And you’d have to work pretty hard to reach this limit (8192 bytes, roughly equivalent to 8192 English characters) since a typical utm.gif request is between 600-800 characters long. However, it’s a good idea to create shorter campaign tags for a couple reasons. Not only will they be easier to read in your GA reports, but they’ll also create shorter URLs, which are easier to copy/paste. This reduces the chance of errors due to part of the URL being inadvertently cut off. Hope that helps!
Good stuff here. I have been tracking my links with all 5 of these tags. I could use some insight, however, into the best way to extract that info from G. Analytics. Within Traffic Sources>Sources>Campaigns I get 3 out of my 5 tags. Where will analytics show me utm_source and utm_term? Thanks.
Hi Jordan,
Change the Primary Dimension or add a Secondary dimension:
utm_content = “Ad Content”
utm_term = “Keyword”
You can simply start typing Content or Keyword in the dropdown menu under Other for Primary Dimension or under Secondary dimension, and then choose Ad Content or Keyword from either heading, Traffic Sources or AdWords (they are the same dimensions no matter which heading they appear under).
Definitely great tips here! One thing I’ve never been able to figure out with tags: Do campaign tags get overridden by web mail platforms’ own referrals? For instance, we tag all the links to our site in our campaign emails, but I have noticed several “mail.yahoo.com” referrals to the pages we link to in the emails. Thanks for any insight you can provide!
Hi Jerry, Using campaign tags on all your email links should reduce (and nearly eliminate) referrals from web mail servers such as mail.yahoo.com. The primary reason some of those might continue to appear even after you’ve tagged every link is due to GA’s handling of direct traffic. For example, if a visitor comes to your site via an email link, and then in a subsequent visit comes back directly, the subsequent visit counts as a visit from the the email link (assuming the visitor did not delete their cookies in the meantime). GA “remembers” (via cookies) the previous visit and gives that source the “credit” for the current visit, rather than erasing that source and calling it “direct traffic”. For this reason, visitors who originally came from mail.yahoo.com before you started tagging all your links, and who have always come back directly to your site, will continue to appear as visitors from mail.yahoo.com until they come back some other way. After they return to your site via an organic search, or a tagged email link, or other referral (any way that’s not “direct traffic”), then GA will remember the new source and mail.yahoo.com will never appear again as a source for that visitor.
Excellent article and answers! Thank you, this clarifies several things very well.
In regards to “term”, using the URL builder, what happens if you leave it blank? What happens if you input {keyword}? Will it still show all of the keywords in GA?
Hi Charles, If you leave “term” blank, then there won’t be a keyword associated with that visit. But that’s okay, because you don’t want to insert a keyword unless the visit results from your visitor actually searching for some term. Campaign tags used for email, display ads, social media links, etc. should not have a term inserted in the URL. For campaign URLs that result from searches, you should not use the URL builder but instead work with your paid search provider. They will programmatically insert the actual search term into the utm_term parameter. This may involve them using {keyword} or some other markup their search engine can interpret and turn into utm_term=realkeyword in the URL. You do not have to do this for AdWords keywords when you use auto-tagging, because the utm parameters are all encoded in the gclid parameter.
When running a display/banner campaign outside of Google, using a 3rd party platform, how would you tag the medium so that it shows up under “DISPLAY” in the GA multi channel report. Would you tag it “display” or “banner” ?? Thanks!
To see how the current display channel is defined in the multi channel reports, go to the Top Conversion Paths report and look for the dropdown menu under “Channel Groupings”. Choose “Copy Basic Channel Groupings template…” and click Edit next to the display channel which should be the first one listed. You’ll see that it’s looking for Ad Distribution Network = Content and Medium = display or cpm. Click the “X” at the far right of the first condition (Ad Distribution Network) to remove it. Scroll down and click the second “Remove” tab to get rid of the next set of conditions (related to Ad Format = Text). Click “Save and Apply”. Now you can tag your non-Google display campaigns with medium=display and it will show up in the display channel, every time you select this copy of the basic template from the dropdown menu. (You can rename the copy.) If you prefer to leave the display channel as it is currently, you could edit a copy of the basic template and just add a new display channel named “other display” that is defined as Medium = display and excludes Ad Distribution = Content. Hope that helps!
Hi Dorcas. I did notice an autotag excel template few months ago somewhere on your site but did not reference it. Could direct me to it please?
Thanks.
Hi Prabhat, My colleague Jim Gianoglio wrote two blog posts about using Google spreadsheets for social media tracking with GA campaign tags: Tracking Social Media with Google Spreadsheets – Part 1 and Tracking Social Media with Google Spreadsheets – Part 2. Coming later this week from Jim is a blog post with another Google spreadsheet for any type of campaign tracking.
Thanks for a very useful post! One thing I can’t find in GA is the campaign referral URLs. If someone clicks on a banner ad or Facebook link with campaign parameters, I’d like to know what site/page they came from. Does GA not store that? I can get that from SiteCatalyst with some configuration.
We currently do not have a campaign worksheet but would like to create one. How can we export this data into excel from Google Analytics? Ideally, I’d love a list but also know which ones have generated any visitors in the last 12 months.
GA stores this data but doesn’t surface it in the standard reports. You can access it with a custom advanced filter that reads the “Referral” field and writes that value into a field like User Defined. Note that “Referral” is the field you want, which captures the HTTP Referrer for a visit from any medium. Do not use “Campaign Referral Path” because that field is only present when the medium=referral. After the filter starts rewriting this data, you can view the referrer data under Audience > Custom > User Defined. If you don’t want to overwrite User Defined, consider overwriting another field you may never look at, such as Screen Colors (under Technology > Browser & OS > Screen Colors). You can also create custom reports if the User Defined report doesn’t combine all the elements you need.
The export menu is at the top of every report. You can export to TSV for Excel or directly into Excel, among other options.