Campaign Tagging for Content Distribution

By Brax Team Tips & Tricks

Last updated Oct 1st, 2020.

TL;DR Everything you need to know about Campaign Tagging with UTM parameters for usable data across content discovery networks.


New call-to-action

Print Tracking Cheat Sheet

Do you want to answer important questions for content distribution campaigns running on Outbrain, Taboola, Revcontent, and including:

  • Where is my content showing up?
  • Where is my content performing best?
  • Is my content showing up on inappropriate sites?
  • Am I overpaying for distribution that I could get at a lower price?
  • What headline & image combos are performing well? Not performing?
  • Do different headline/image combos work better on different sites?

Proper data collection is essential for your efforts!

This becomes more important as the number of distribution channels leveraged and the amount of content syndicated across the different channels.

When we mention “sites,” “websites” or “apps” these are all synonymous with publishers, sometimes called publisher source depending on who you talk to. They are all referring to the same thing - where your content creative showed up.

This article is intended to help you understand the tracking options currently available, how to properly set them up and where to analyze the data.


UTM Tracking Primer

There are really 5 UTM tags you always want to use. UTM tags are codes that are placed at the end of your tracking URL. This allows your tracking link to pass click information to your tracker.

The key to success is using them for the same items across distribution platforms. These five tags are:


1. utm_campaign

Use to identify the campaign ID or name and required for Google Analytics. If you named your campaign 'url_tagging', you would make your campaign UTM equal to the name. However, Brax has a variable to automatically pass in the campaign name if you use as the campaign UTM.

BRAX Example: utm_campaign=

Another option, which is highly recommended but not as user-friendly in analytics, is using the Campaign ID. The benefit is when the campaign name changes the Campaign ID does not which helps keep tracking clean.


2. utm_source

Use to identify the traffic source and required for Google Analytics.
Example: utm_source=outbrain
BRAX Example: utm_source=outbrain


3. utm_medium

Use to identify publisher website or app where the ad is shown and required for Google Analytics.

Example: utm_medium=cnn
BRAX Example: utm_medium={site}   for Taboola, utm_medium={WIDGET_ID} for revcontent, etc. Use this to have analytics data matched automatically.


4. utm_content

Use to identify ad creative. Some people pass in the image name & headline text. I recommend passing in a unique Ad ID. If making creatives within the network itself, the network will automatically assign ad IDs to each creative; if making creatives within Brax, we assign our own unique ad ID.

Example: utm_content=rainmaker.png_make_it_rain  (for using the image name)
BRAX Example: utm_content={{AD_ID}} which will give you utm_content=3391df as a unique identifier that is matched for ad level analytics.


5. utm_term

Generally this is used in Paid Search, but for Native, it can be used as a 5th tag to collect and use an extra set of data within Brax. For example, bidding by target in Revcontent can be enhanced by using their {ADV_TARGETS} tag for utm_term to see which targets are performing better

Example: utm_term=Lifestyle & Beauty
BRAX Example:utm_term={ADV_TARGETS}

The “required for Google Analytics” note above is based on the Google URL builder instructions.

Looking for how to Set-up Analytics in Brax? Here is the article for you.


Dynamic Tracking Parameters Primer

Most of the data you want can have multiple values including campaign name, publisher site, ad creative clicked, ad copy, ad image, etc.

This data is available through special variables with many names that all mean the same thing such as dynamic tag, dynamic parameter, macros, merge tags, etc.

The basic premise is that you put in a placeholder variable and on ad impression / click the actual value is added in real time / just in time, so you get the data. Google and Yahoo paid search paved the way for this starting with keyword data.

See each network below for their supported dynamic parameters.


Outbrain Campaign Tracking

Outbrain tracking at it’s most basic form is done at the campaign level.

Outbrain Tracking Parameters Brax


This is specific to Brax and will pass in your campaign name automatically when looking at your data either in Google Analytics or within our system via our Google Analytics integration.


This will insert the campaign ID from Outbrain into your tracking. The benefit here is if you change your campaign name, the tracking doesn't change or break.

Use name of content recommendation network; this must be all lowercase to pass Google Analytics data to Brax.

Use Outbrain’s dynamic parameter for Publisher SECTION ID. 



Use Outbrain’s dynamic parameter for ad id and/or ad title. If you are a Brax customer; then the Brax is automatically added to tie all your data together.

For more information on how to maximize your campaigns in this ad network, have a look at this article on Outbrain Best Practices.


RevContent Campaign Tracking

Revcontent tracking is done at the campaign level.

Here is an updated list of tracking variables for Revcontent as of August 2020.

Within Brax, you can use as the campaign UTM to automatically pass your campaign name in. In Brax, it looks like this:

Revcontent Tracking Parameters Brax

When setting up your tracking directly in RevContent, it looks like this:


To build the tracking string in RevContent, click on the gear icon on the far right; to bring up this screen:


After entering your tracking tags, click “Build Tracking Code” and you should see the Tracking Code and Preview update as seen here:


Use your Revcontent Boost ID

Use the name of content recommendation network; revcontent in this case.

The best way to track publishers in RevContent is to pass the widget ID, which is the publisher widget placement.

RevContent equivalent of an Ad-ID is the content ID.


To track on the best performing targets use adv_targets to gain insight on which groups you should optimize for. Have a look at our article on Revcontent's Best Practices to make your ads perform better.


Taboola Campaign Tracking

Taboola tracking is also done at the campaign level.


Since you can’t see the entire text in the screenshot, here is the tracking code:



Pass in the campaign ID in Taboola under Campaign Management > Campaign Properties.

Note that if you change the campaign name after adding content, the campaign name does not change in the tracking code.


Use the name of content recommendation network; Taboola in this example.


Taboola defaults to passing utm_medium=referral. However, this does not provide any insight, so we recommend changing it to pass in the Publisher site / app name.

Now we can measure publisher performance for your ads so you can block Publishers that are not a good match for your content based on post-click data such as revenue, pages per session, time on site, bounce rate and CTR.


Taboola now provides an Ad Id to track individual creative performance using {campaign_item_id}. They also have options for the image name and title.

Read more about Taboola's Best Practices to get deeper insight on this ad network. Campaign Tracking tracking is done at the campaign level:


The screenshot above is from the Campaign settings in

Here is the complete tracking parameter string since some are hidden in the screenshot:


utm_campaign=url_tagging or utm_campaign=[cid]
Use campaign name or use’s dynamic parameter for campaign id. The advantage to using the campaign id is if you change the campaign name the campaign id remains the same for consistent tracking.

utm_campaign= can be used in Brax to automatically pass in the campaign name
Use the name of content recommendation network; in this example.

utm_medium=[did] let’s you track individual publisher performance using a Domain Id. We highly recommend leveraging this to get insights into what publishers are a good match for your content.

utm_content=[adid] does have an Ad Id so you can track individual ad creative performance. If you use Brax, this is replaced with the Brax Ad Id.

We also recommend you check out Content.Ad's Best Practices to get the most out of your ads there.


Simplifying Tracking

That is a lot to remember and very prone to mistakes with a simple typo that causes data loss (boo!). To make your life easier, we added default tracking settings in Brax so you can setup your tracking once and never worry about it again.

Here is what it looks like for each network:

Examples of UTM codes for tracking

Campaign Tagging Cheat Sheet Brax

*Note: Tracking publishers in each network needs to be done at the campaign level.


Tracking Cheat Sheet

As you can see each network has its own way of tracking the important data to optimize your content distribution. If you decide not to use Brax tracking then at least do it manually in your campaign settings for each network to get better insights.

Here is a handy cheat sheet to print out and make your life easier.

**Note: if you are using Brax to pull your Google Analytics data, the campaign name must exactly match and the source parameter must exactly match the network name, all lowercase** 

New call-to-action


Save your sanity and hours of time by using Brax to create your content ads in one place, push to multiple networks then bulk change campaign budgets & bids leveraging performance data.


Related content:

What is Content Marketing: The Ultimate Guide to Content That Converts