The digital marketing space has evolved dramatically.
Marketing campaigns are distributed across a multitude of online touchpoints such as websites, social media, eCommerce platforms, email platforms, paid search etc.
But there’s a problem:
This complex lair has led to marketing analytics challenges. Digital marketing success hinges on the ability to know the impact of campaigns and assess campaign performance accurately and efficiently. However, many struggle with the poor quality of marketing data and don’t trust the accuracy of their campaign insights.
This is why we need a solid campaign tracking foundation and marketing data taxonomy.
Leveraged accurately, campaign tracking paves the path to digital marketing success and has a dramatic impact on:
Campaign tracking is the process of structuring, measuring, and analyzing paid and organic campaigns by using specific campaign parameters with the purpose of assessing and optimizing their outcomes, as well as understanding how they drive traffic and conversions.
Campaign tracking parameters are bits of specific information added to the URL that pass the necessary information to an analytics platform to track the traffic and conversions that the specific campaign receives.
They are usually created before the deployment of the campaign.
When you’re advertising online, having a solid and seamless foundation for campaign tracking is key to maximizing and scaling your marketing efforts.
This is why you need a campaign taxonomy.
A campaign taxonomy is the process of organizing and grouping campaign data with the purpose of better monitoring online marketing activities and gaining meaningful insights into campaign performance.
In fact, it is the foundation for marketing data governance, enabling you to ensure consistency and data accuracy across campaigns, marketing and analytics systems, teams, and external stakeholders.
Spearheading a consistent and accurate taxonomy can help your organization ramp up marketing, achieve better campaign results, increase operational efficiency, and ultimately drive more meaningful customer experiences.
Here are some of the key areas that a campaign taxonomy can help you achieve:
And more importantly:
Because, at the end of the day, you want to be able to have accurate campaign insights at the right time that enable you to understand and scale what works and ask the right questions about what doesn't.
Deciding what type of campaign tracking taxonomy is right for your organization is a big decision.
Esentially, campaign tracking taxonomies can be governed:
Choosing the right model for your taxonomy depends entirely on your tracking goals, company and team size, as well.
To maximize the outcome of your digital campaigns and ensure that your campaign tracking strategy is aligned with overall business objectives, having a clear multi-stage process is really important.
We also call this the campaign tracking lifecycle.
Campaign tracking setups vary from organization to organization. It may be solely up to you to spearhead the campaign tracking strategy for your company, or your team may consist of numerous internal and external stakeholders like ad ops, web analysts, advertising agencies, and data scientists.
No matter the size of your team, establishing the steps of the campaign tracking lifecycle from the onset will make your daily work easier, while at the same time ensuring consistency as you scale up.
We've identified seven essential stages of any campaign tracking lifecycle, from planning to optimization:
Configuration is an important step, usually handled before the launch of your campaign.
Here is where you set all the standard conventions for your campaign tracking to ensure smooth delivery and better control of reporting, optimization, budgeting.
The types of campaign tracking conventions that you can define at this stage typically are:
Ensuring a consistent structure for your campaign links is crucial. This is usually done in the pre-launch phase.
To ensure that the campaign structure that you’ve agreed upon is adopted and employed successfully, getting everyone on your team(s) on board is equally important.
What campaign information to track is fully dictated by the goals of your digital marketing campaigns.
While some of the common information tracked from an online campaign is now common ground amongst many industries (such as traffic source, channel, or medium), other metadata tracking is pre-defined by your analytics platform.
Defining clear goals for your digital campaigns will enable you to establish the needed structural conventions to support them.
Like structural conventions, the naming conventions of your campaigns are unique to your digital marketing strategy and business. They are also dictated by the analytics platform you are feeding your campaign data into.
Scroll down ↓ to dive into the common naming standards specific to Google Analytics and Adobe Analytics.
No matter the analytics platform, it is important to keep in mind:
1. Stakeholder alignment
Consider your teammates when you are defining the naming standards for your campaign tracking. Aligning conventions that both internal and external stakeholders agree on gets everyone on board and makes processes easier.
Common naming conventions also make it easy to introduce new colleagues to campaign workflows and smoothen the transition to a new digital agency collaboration.
2. Consistency
Consistency is crucial for your campaigns’ success. Sticking to the conventions that you’ve defined across your team makes it easier to scale your digital efforts and not waste time cleaning campaign data.
You can keep track of your campaign tracking standards by either using an Excel spreadsheet or an agile platform. Both are great options. In a spreadsheet, you can define rules for structural and naming conventions, which enable you to fast-forward processes.
An online platform has the advantage of eliminating manual work, increasing data accuracy, and saving you time. This is preferred by organizations that have more than one stakeholder involved in campaign tracking, teams working across countries and business units, and a significant number of campaigns.
3. User permissions
Once you’ve defined the standard conventions for your campaigns’ structure and naming, it is crucial to enforce the standard across all involved stakeholders. Granting or restricting access to colleagues or media partners enables you to control who can or cannot adjust your conventions and know when they make important changes.
Spreadsheets are static files, so they can make this process difficult - as information risks getting lost or distorted once it is shared or edited by more than one user. A campaign tracking solution can help you govern access in real time, hence minimizing the chance of getting inaccurate data and conventions.
Keep names short and sweet
The rule of thumb here is ‘the shorter, the better’ while trying to make names as easy to understand as possible.
Ensure consistent capitalization
camelCase vs. lowercase vs. UPPERCASE. Simply choose the one you prefer and stick with it.
Use the same spacing divider
Use a spacing divider such as underscore or hyphen consistently across all your campaign URLs
Be consistent with parameter abbreviations
Use the same parameter abbreviations across all your campaigns.
Once the campaign goals and conventions have been defined and enforced, it’s time to create tracking links for your campaigns!
There are two main options for doing that:
This is an essential step before launching your campaign. The validation process ensures campaign data readiness by:
By validating your campaign tracking links, you remove all potential campaign tracking impediments that may hinder your campaigns’ success and ensure that performance insights will be readily available and actionable in your analytics. This will save you a considerable amount of time post-launch.
When your campaign tracking links are created, validated, and ready to be used in your campaigns, they are usually stored in one or multiple destinations.
Campaign tracking data can be collected in:
No matter the solution you are opting for, establishing a common framework for storing and coordinating your tracking links is paramount to the performance of your campaigns and digital marketing ROI.
When you’re starting out, spreadsheets can be a good way to organize your marketing taxonomy. Excel is easily accessible and campaign data can be quickly organized in a .csv file. However, the more team members, channels, and campaigns you add to your setup, the less reliable spreadsheets become.
Inability to know what campaign links stakeholders are creating or using
Governing user permissions like media partner access is a hassle
Bulk export of campaign metadata is not possible
Wasted time and human resources on gathering and fixing campaign data
Updating data standards of your taxonomy is messy or impossible
In the processing phase, Google Analytics and/or Adobe Analytics receive all the information about the campaign tracking values and dimensions you’ve defined.
All validated custom dimensions and variables are processed, segmented or classified, depending on the analytics platform you are using.
Once your campaigns have been running for a designated period of time, you can start evaluating the results. All the custom dimensions and metrics you have defined for your campaigns are readily available in your analytics platform and ready to serve as the base of campaign performance reports.
Reporting is an essential step of the campaign tracking lifecycle that enables you to:
Although we are listing this last, optimization is a continuous process. While reporting enables you to determine how your campaigns are performing across business goals, optimization is crucial for boosting the effectiveness of the digital campaigns that are not paying off, as well as increasing the long-term effects of your campaign tracking strategy.
This is your opportunity to improve campaign implementation and delivery such as fixing tracking errors due to misconfigurations, on site tracking problems, campaign delivery hiccups etc. With accurate campaign tracking data and actionable insights, you can adjust budgets with confidence and finetune your strategy to drive spend efficiency.
Optimization is a discipline in itself, as it upholds the strategic objectives of your overall digital marketing strategy.
For more than fifteen years, Google Analytics has remained the most popular analytics platform out there. To tap into its potential and capabilities for campaign tracking, it is crucial to understand the basics of UTM codes, UTM parameters, and UTM tracking.
UTM campaign tracking is the method used for tracking the performance of campaigns and online content in Google Analytics by adding specific information to a URL in the form of UTM parameters and variables.
A UTM code is a string of text added to a URL after the “?” sign that provides Google Analytics with specific information about that link such as when, why, how, and where visitor traffic comes from.
UTM codes do not influence the actual webpage. This means that the page will continue to load normally if the information contained in the UTM code is removed.
UTM stands for “Urchin Traffic Module”, Urchin being the company that officially coined the term. In April 2005, Urchin was acquired by Google, forming Google Analytics. Since then, UTM has been used as a standard term for query strings built for Google Analytics.
A UTM code for a campaign classified in Google Analytics could look something like this:
Where:
A UTM code consists of two different types of elements:
UTM parameters are specific types of query parameters used by Google Analytics to track the performance of your digital campaigns. They look like a snippet of code added to the end of your campaign URL (e.g., a landing page to your website) after the “?” sign.
UTM parameters are specific types of query parameters used by Google Analytics to track the performance of your digital campaigns. They look like a snippet of code added to the end of your campaign URL (e.g., a landing page to your website) after the “?” sign.
Google Analytics allows up to five different parameters for each campaign, three of them being compulsory:
The Source UTM (‘utm_source’) is a required parameter used by Google Analytics to recognize where the traffic of a specific campaign comes from.
This can either be a specific platform or a vendor. Some of the most common UTM sources are search engines (for relevant paid search campaigns), email newsletters, and specific social media channels.
Example:
Sometimes, Google Analytics will not be able to recognize the source of your campaign and will misplace it in the wrong category. This can happen if a campaign tracking code is not set up correctly. In that case, it could be attributed as ‘direct’ traffic (people who type in the website address directly in the browser) instead of the correct source.
The Medium UTM (‘utm_medium’) is another compulsory Google Analytics parameter that tells you how visitors got to your website by tracking what type of traffic they originated from.
This can be cpc (cost per click), email, social media, referral, affiliate, display, video, etc.
Example:
If the specific medium is not set up correctly in the campaign tracking code, Google Analytics will classify it as ‘Referral’, ‘(none)’ - usually used for direct traffic, or ‘(not set)’ - if the origin of the traffic cannot be identified at all.
The UTM Campaign parameter (‘utm_campaign’) is the third required parameter by Google Analytics used to identify the name of a specific campaign and make it easier to assess its performance.
Unlike ‘utm_source’ and ‘utm_medium’, it is an arbitrary variable that can be as short or as open as you want, depending on the goal of your campaign.
Example:
The Content UTM (‘utm_content’) is an optional parameter that is useful for tracking specific information about an individual campaign. It is commonly used in A/B testing to test different types of creative and copy.
For example, marketers use content parameters to determine what type of call-to-action works best for promoting a product, offer, or content.
Example:
The Term UTM (‘utm_term’) is an optional parameter mostly used for Google Adwords to target specific keywords of a paid search campaign. It can also be useful for display targeting, in campaigns where it is important to identify specific aspects of your audience.
Marketers and analysts who want to gain a granular view of their campaign performance also use custom variables and dimensions.
At their core, custom variables are additional values added to your campaign tracking code, other than those provided as default by Google Analytics.
By tapping into visitor-, session-, and page-level website data, custom variables enable you to achieve the level of tracking precision that you want, as well as gain richer insights by combining Google Analytics data with data from other sources such as your CRM platform.
In practice:
Many businesses can benefit from custom-defined variables. If you’re an eCommerce brand, for example, you can use custom variables to better track transactions, categorize content, or segment campaign audiences based on the visitor data in your Google Analytics.
Defining a large set of parameters for your campaigns leads to a lengthy URL vthat can sometimes result in errors once it’s shared or stored. This is why many analysts and marketers opt for using shorter UTM_id-s that contain all the defined campaign information in a compressed form.
All the campaign information you’ve defined upon creating the campaign tracking code associated with the utm_id is easily retrieved by Google Analytics and broken down into specific parameters like Source, Medium, etc.
Example:
The main advantage of using utm_id is the ability to make corrections and changes to your campaign tracking parameters. If you’re a Google Analytics 360 user, you can easily redefine parameters historically without affecting the existing utm_id. This can be really helpful for campaigns that are active and already driving traffic to your website. Those dreaded broken campaign links can be avoided.
Adobe Analytics helps you measure the impact of your marketing campaigns by analyzing traffic sources and user engagement on your website. Set up correctly, it provides you with sophisticated granular insights that lead to more informed marketing decisions and improved budget allocations.
For many Google Analytics users transitioning to Adobe Analytics, campaign tracking in the new platform needs to be set up differently. This is mainly because tracking conventions are structurally different and the campaign tracking infrastructure is not ‘out-of-the-box’.
Understanding how campaign tracking works from the very beginning is essential for building a solid foundation and leveraging the platform to its full potential. Let's dive in!
Once you’re set up and Adobe Analytics is ready to capture campaign data correctly (i.e., implementing the getQueryParam plugin), it’s time to start creating the tracking structure for your campaigns. This is where you’ll see how Adobe Analytics differs from Google Analytics. While UTM codes are the Google Analytics standard, Adobe Analytics uses the term ‘tracking codes’.
Each tracking code consists of a single pre-defined campaign tracking variable collected as ‘s.campaign’. The s.campaign variable is appended by a query string parameter added to the campaign URL.
Compared to Google Analytics that has predefined UTM parameters (some of them compulsory), Adobe Analytics allows a lot more flexibility.
The query string parameter is not predefined, which means that it can be configured and named however you want. Some of the popular terms used are “cid”, “cmp”, or “cmpid”, but in principle, you can use any parameter that makes sense for your business and campaign tracking strategy.
Example:
A powerful capability of Adobe Analytics is Classifications. Classifications, formerly known as SAINT Classifications, are used to add custom metadata to your analytics.
Classifications or SAINT (SiteCatalyst Attribute Import Naming Tool) Classifications are the standard method used by Adobe Analytics to classify and segment raw data populating your analytics reports.
Primarily used for campaigns, they enable you to group your analytics data into buckets by establishing a relationship between variables (eVars and props) and metadata. You can define an unlimited number (SAINT) classifications in the platform, depending on how you want to customize and segment your campaign data.
Here’s a breakdown of some of the most popular classifications used for campaign tracking:
These are just some of the most popular ways of classifying campaign data in Adobe Analytics. Companies use many custom variables, depending on their marketing strategy and the level of granularity they want to achieve in their campaign tracking.
Apart from slicing and dicing your data the way you want it, (SAINT) Classifications offer a key benefit: the ability to make changes to your classification data retroactively.
A dreaded scenario for any campaign manager or analyst is a broken reporting system fed by inaccurate data. This is often caused by values passed incorrectly into the analytics platform. Adobe Analytics can help you fix that, to some extent.
Here’s an example:
Let’s say you are running several campaigns on social media that have been assigned the source ‘LinkedIn’ upon creation, while the correct source should have been ‘Facebook’. This leads to reporting issues since it becomes impossible to accurately assess campaign performance on the specific social media channel.
As an Adobe Analytics user, you can manually correct that by updating and re-uploading your classification table (often a .csv file) and/or changing the rules in Adobe’s Classification Rule Builder.
However, it’s worthwhile keeping in mind that solely relying on the Classification Rule Builder has its limitations. The Rule Builder only classifies campaigns based on the specific rules of the full campaign tracking code, it cannot classify based on the unique campaign_IDs. In practice, this means that the changes you do to the classifications, not to the tracking code itself, will be overwritten by the rules that you’ve set in the Rule Builder.
Additionally, the Rule Builder cannot rename abbreviated values to understandable or full terms, which can be a drawback when working in teams. With a software solution that enables you to edit and reclassify tracking codes, you ensure that your data is grouped correctly at any time to meet your unique reporting requirements.
In Adobe Analytics, there are two ways of passing campaign values to the s.campaign campaign variable:
Wondering what these methods are? Let’s take them one by one:
Concatenation is the traditional method used for structuring campaign tracking in Adobe Analytics.
When you’re using concatenation, the multiple tracking values that you’ve defined upon creating your campaigns (e.g., campaign name, channel, or objective) are shown in their abbreviated form in the final campaign URL, separated by delimiters such as colon, dash, or underscore.
Here’s an example:
Let’s say that you’ve defined ’Brand Awareness’ as a campaign objective in your campaign taxonomy. This will show as “Brand” in the final tracking code.
And here’s how a full concatenated tracking code would look like:
cid=Social-Paid_Facebook_Prospecting_Brand_Black-Friday
Choosing what abbreviated forms to use is up to you. Companies use different naming conventions, depending on the complexity of their taxonomy and their campaign tracking structure.
The campaign values that you’ve defined will be parsed in Adobe Analytics into their respective categories. Additionally, if you’ve set specific rules for them with Adobe’s Classification Rule Builder using regex (regular expressions), the values will be dynamically populated and ready for reporting.
An obfuscated campaign ID is an umbrella for campaign values that are concealed in the query string parameter.
The campaign ID can be a random text like “abcdxyz” or a series of numbers like “1234567”.
Example: cid=socp-46239412
Companies choose to obfuscate their campaign URLs for many different reasons:
You should not use campaign id-s without adding marketing channel at the beginning. This is because Adobe sets the marketing channel at the point of visit to the website, and without this, Adobe can only use in built signals (e.g. referrer) to determine the channel, which is often not enough (e.g. if you want to split between Paid and Organic Social)
With the obfuscated approach, all the information about the campaign is contained in the campaign ID, even if it’s not made visible in the final URL. The information is captured elsewhere, either a static spreadsheet that’s regularly uploaded or a campaign tracking solution that can automatically generate obfuscated links and populate Adobe Analytics. Adobe Analytics classifies and decodes the metadata contained in the obfuscated campaign ID.
Diana Daia is the Head of Content Marketing at Accutics and a content strategist with a no-nonsense growth approach. She is passionate about digital marketing, CRO, digital analytics, and account-based strategy. She works closely with collaborative content & influencer outreach by creating guest articles and deep-dive interviews with leading marketing and digital analytics experts.