Google Analytics Campaign Tagging Tool


Want to know the ROI of your email marketing? What about the performance of your print ads? Are your posts to Facebook leading to conversions on your site?

Tagging your marketing campaigns is essential to get these actionable insights from Google Analytics. But you might have more than one person responsible for all of your marketing initiatives (imagine that!). You might have teams of marketers and content writers who all dip their hands in the the campaign cookie jar from time to time. That’s great! If you’ve gotten to the point where your non-web analyst peers are tagging their URLs with campaign parameters, you’ve already overcome the biggest hurdle. Now, if only you could get them all to use the same naming conventions…

Download the Multi-User Campaign Tracking Worksheet


When you’re dealing with campaign tagging, consistency is crucial. And I’m not just talking about using similar, close enough (as in horseshoes and hand grenades) campaign parameters. I mean exact, letter for letter, case-by-case consistency. For example, Jane, John, and Pat each involved with email marketing, and here’s how they tag the links in their emails:




Three different sources. Three different mediums. Three different campaigns. When I see this, it makes me want to jump off a bridge (and we have plenty of those in Pittsburgh!).

The above inconsistent naming conventions make it very tedious to get an overall view of how your email marketing is working. If you go to your Traffic Sources > Sources > Campaigns report, and choose the Primary Dimension of Medium, you’d see something like below:

Campaign report in Google Analytics showing Medium

Email, E-mail and email are all completely separate mediums in the eyes of Google Analytics. Now if you’re trying to just get a quick view of visits from email marketing, or trying to compare email vs. paid search, for example, you’re job just got harder.

Although it’s possible to clean up these bad habits by using custom advanced filters on your profiles, it’s better to have not to have the bad habits in the first place. To help you with that, I’d like to share something with you:

Multi-User Campaign Tracking Worksheet

(This is a Google Drive Spreadsheet. Once it’s open go to File > Make a copy so you can edit the spreadsheet. You may need to sign in to your Google account  – even if you were already signed in.)

Since this is a Google Drive spreadsheet, it can be shared by every member of your team who will be involved in campaign tagging. This way, the naming conventions are transparent. Of course, you’ll still have to come up with and agree on the best naming conventions for your organization, but that’s a different matter.

There are a few different fields in this spreadsheet that will make tagging your campaigns (and keeping track of them over time) much easier.

campaign tracker 1

First, you enter information about the campaign. Start date, end date, what the opportunity is, the landing page, and whether or not you’re using a vanity URL or domain.

campaign tracker 2

Next up, you specify the source, medium and campaign name (all required) followed by the optional campaign term and content. The next column concatenates everything together for you nicely, so you can just copy and paste the full URL with campaign parameters. The last column is a bonus – it automatically shortens the crazy-long campaign-tagged URL using the Bitly API. To get that extra bit of automated love, you just have to go to the second sheet (Bitly Info) and type in your Bitly username and API key, which you can find here.

Your Turn

What other problems do you have with campaign tagging? Let us know in the comments!

Jim Gianoglio is a Manager for the Analytics & Insight department. He works with implementation, analysis and training of Google Analytics and Google Tag Manager. Before focusing on analytics, he led the SEO campaigns of Fortune 500 companies in the insurance, retail and CPG industries. Things you didn’t know about Jim: he’s biked from Pittsburgh to Washington DC in 41 hours, roasts coffee beans and has done voiceovers for TV commercials.

  • Thatch

    Great article.

    I found one problem with the bonus (not a deal breaker the rest works brilliantly)

    Is there a reason that the xml in hidden row M is dropping the concatenation after the first & in the L column?

    The Final Landing page URL is

    the code being sent to is


    Do the & need to be escaped? And if so how

    As I said not a deal breaker, I can use just delet the section

    and thanks for the info

  • Thanks for the share! I do agree that consistency is crucial for success. In my daily job as a consultant I encounter two other challenges:

    1) A mid to large size organization is running lots of campaigns through different parties/networks. Challenge: how to make sure that all the different campaigns get the right tags in place? It can easily happen that one campaign doesn’t get tags at all.

    2) Who is responsible for what? Who determines the tagging for a specific campaign? Who is responsible for testing the tags? Etc.

    How do you deal with these situations?

  • @Paul – I see two ways that businesses handle the issues you point out. In larger organizations, where you have many people or teams working autonomously, a written policy or guidelines, possibly along with training, is helpful.

    The other option, one that is better for small to mid size businesses, is to have a measurement team (or person) be the gatekeeper and ensure that everything is tagged properly.

    Each option has its merits and drawbacks. In the end, it really boils down to a people issue, not a technology issue. The people involved need to know what to do and how to do it. They also need to know why it’s important, or else this “extra work” they have to do won’t get done.

    The technology part is only helpful if it makes the tagging quicker and easier for those people.

  • @Thatch – thank you VERY much for pointing out that error! The ampersands in the long URL that you send to the Bitly API need to be URL encoded (they need to be %26 instead of &) and I forgot to do that.

    The spreadsheet has been updated to fix that problem.


  • Right here is the perfect site for anybody who really wants to understand this topic.
    You know a whole lot its almost hard to argue
    with you (not that I really will need to…HaHa).
    You definitely put a new spin on a subject that has been discussed
    for years. Excellent stuff, just great!

  • I’ll immediately grab your rss feed as I can not in finding your email subscription link or newsletter service. Do you’ve any? Kindly allow me know so that I may subscribe. Thanks.

  • This is a pretty good convention.

    However, the problem is actually worse than this. I have seen many people not even using utm tags. They create their own arbitrary tags, e.g. “_kk”, “_sk”, etc. These probably cater to some custom analytics solution. In another instance, the person was trying to use utm tags, but was using “campaign”, “source”, “medium”, etc. without the “utm_” part. Many people do not know how and why utm tags are used. It’s a big awareness problem.

    Having a company wide convention is a good start.

  • This worksheet is nice for a single channel campaign, but what about where there’s multiple? So for example we’re having a sale on one of our products. We want tracking on: Our homepage rotator banner, our email, facebook, and a third-party emailer. All have different utm-Source and utm-Medium, but the same utm-campaign. Would you put each of those in the worksheet?

  • @Walter,

    The nature of a spreadsheet requires that you duplicate all the columns (tags in this case). So you will need a separate row for each combination of campaign, medium and source. That would mean duplicating utm_campaign tag even if it is common for several media and sources.

    I don’t mean to self promote, but that’s exactly what we are building at – a super easy way to keep track of all the campaign tags (without having to duplicate them), auto generate short links and also give some basic stats for these links.

    However, for basic needs, the spreadsheet mentioned here is a great solution. It’s familiar to most people and is very simple.

    Puru Choudhary

  • @Walter – Puru is right. You’ll have to have an additional row for each source/medium, even though the campaign is the same.

    Also, it would be a very bad idea to tag your own internal link (the homepage rotating banner) with utm parameters. That would overwrite any existing source information. For example, if someone came from an email, then clicked on the homepage banner and converted, that conversion would be attributed to the homepage banner (not the email).

    A better way to track whether people who click on the homepage banner convert is to set up event tracking on that banner. Then you can create an advanced segment to include just visits with that event, and measure the conversions for that segment.

  • Brian

    Thanks for this Jim, mega helpful!

  • Tomara

    Hi There

    I’m running into an issue with using GA url parameters when running ads on DFP. For some reason the urls once entered into the DFP systems breaks the GA Urls.

    For example, this URL:

    Turns into This:

    Any help would be greatly appreciated

  • I am not sure where you are getting your info, but great topic.
    I needs to spend some time learning much more or understanding more.
    Thanks for fantastic information I was looking for this info for my mission.

  • Heya just wanted to give you a brief heads
    up and let you know a few of the images aren’t loading properly.
    I’m not sure why but I think its a linking
    issue. I’ve tried it in two different internet browsers and both
    show the same results.

  • It’s great that you are getting thoughts from this
    article as well as from our argument made at this time.

  • I delight in, cause I found just what I was looking for.
    You’ve ended my 4 day long hunt! God Bless you man.
    Have a nice day. Bye

  • Excellent webb site yoou have got here.. It’s difficult to find high-quality writing like yours these
    days. I seriously appreciate people like you! Take care!!

  • Greetings from Idaho! I’m bored at work so I decided to check out your blog on
    my iphone during lunch break. I love the knowledge you
    present here and can’t wait to take a look when
    I get home. I’m shocked at how fast your blog loaded on my phone
    .. I’m not even using WIFI, just 3G .. Anyways,
    superb site!

  • Amanda Vanderboegh

    Jim – love your campaign tagging doc but can’t seem to get the bitly API to work. Can you help?

Contact Us.

Follow Us



We'll get back to you
in ONE business day.
Our Locations
THE FOUNDRY [map] LunaMetrics

24 S. 18th Street
Suite 100

Pittsburgh, PA 15203


4115 N. Ravenswood
Suite 101
Chicago, IL 60613


2100 Manchester Rd.
Building C, Suite 1750
Wheaton, IL 60187