Want to boost your ROAS?

Take our on-demand video course on native advertising brought to you by top experts. Enroll now with our limited 30% discount.

Add Native Advertising To Your Marketing Mix After Taking This Course>> Preview
Setting up url tracking parameters for Taboola on laptop

Guide to Taboola's URL Tracking - Dynamic Parameters, Macros & Tracking Templates

How do dynamic parameters work for Taboola and which ones are there? How should you set up URL tracking for your campaigns?

There are many ingredients needed to make Native Advertising campaigns reach your specific goals. A topic we have previously covered in detail in setting up and tracking Native Ads KPIs. One of the few things that can assure unsatisfactory results is poor and inaccurate tracking.

If you are not able to understand which portions of your traffic are performing well, and which creatives work better than others, you will not be able to optimize your campaigns any further than towards click-through rates. And more often than not, a high CTR is as much a result of the environment that the ad is being served in, as it is due to it capturing the attention of its audience.

We’ve therefore put together a guide of how to approach tracking inside Taboola. More specifically, how your URL Parameters should look to be able to generate actionable insights.

Looking specifically for the Taboola Macros or the recommended tracking templates? Then you can jump directly to the relevant section below:

Wait a second, what are URL parameters?

If you have worked with these concepts previously, it might make sense to already skip ahead to the next section. However, it doesn’t hurt to repeat the basics.

Google defines a URL parameter the following way:

A way to pass information about a click through its URL

These are added to the link/URL behind a ? and generally do not affect what is being shown on the page. But is rather considered a tracking parameter, used to help analyse traffic sources and website behavior. The URL parameters that do affect what is on the page are referred to as Content-modifying parameters.

The most common URL tracking parameters you definitely should have seen are the UTM parameters. These were originally introduced by Urchin, a predecessor to Google Analytics. Fittingly, Google Analytics support these and use the values in them to categorize the traffic that arrive at a website.

Following is a short example of a URL with an UTM parameter. The utm_source (what comes before the =) is the key of a URL parameter and the taboola (what’s after the =) the value. If you have several parameters, these are seperated by a &.


The UTMs are handy as Google Analytics already knows how to interpret them, and advertisers are trying to use them somewhat similarly. But you can also define your own parameters. For instance https://joinative.com/?tracking=taboola is completely fine. But important to note, you would then need to tell a tool like Google Analytics how to make sense of it using Custom Dimensions. Don’t need it for Analytics but tracking where specific conversions came from? Then you can leave it like that, but could make sense to use both UTMs and ‘Custom URL Parameters’ to still track properly in GA.

The UTM Parameters are pre-defined, recognizable by starting with utm_.... They are:

  • utm_source
  • utm_medium
  • utm_campaign
  • utm_term
  • utm_content

We will use all of them in our Taboola URL tracking template later on in this article.

What about Dynamic Parameters?

Let’s start have a look at a URL with full UTM Parameters


If we set our ads, inside Taboola or anywhere else, with these Tracking Parameters we would have a pretty good idea where the traffic is coming from. Campaign 1 in Taboola, where the visitor clicked the ad while browsing msn.com.

However, adding this link to an ad in Taboola would be very impractical. Why is that?

It comes down to a few different reasons, the two most important described in more detail below.

Firstly, we would need to manually adapt it for every ad, and place it on each ad. Not only is this tedious, but also prone to mistakes that throw off tracking and insights. Imagine just copying the full URL from one creative to another, then you couldn’t separate which of the two actually made someone convert.

Secondly, you don’t necessarily know which site your ads which be shown on, often making it impossible to add that part.

So, the solution to these issues, and what will make your life a lot easier, is what are called Dynamic Parameters, sometimes also called Macros or Passback Macros.

The Dynamic Parameter will replace a temporary filler Value with what is relevant for every specific instance of your ads being shown.

With the same URL you can then get two visitors with the following values on your site:


In these cases, the ad and site were filled dynamically based on which creative was shown and where.

How to set the Dynamic Parameters up works similarly across platforms. Although there are differences in which parameters are available and how they are defined. Let’s have a closer look at the Dynamic Parameters for Taboola.

Native Ad Course

What are the available Taboola Dynamic Parameters?

The Postback Macros or Dynamic Parameters for Taboola are surrounded by curly brackets, like this {example}. When the ad is served, Taboola will recognize, find and replace the text and its surrounding brackets.

The available ‘Taboola Macros’ and what they will be replaced with are:

{campaign_id} The Taboola ID for the Campaign
{campaign_name} The Campaign name defined inside Taboola
{title} Headline of the creative being served
{thumbnail} URL of the image being served
{campaign_item_id} The Taboola ID for the creative (campaign item)
{site} The site that the creative was served
{site_id} The Taboola ID for the site where the creative was served
{site_domain} Name or URL of the website
{platform} Whether the creative was served to a `Mobile`, `Desktop` or `Tablet` user
{timestamp} The time of when the ad was served

To check if any have changed or new ones have been added, you can find these also on Taboola’s site

Taboola offers to enter Tracking Code in the settings of a campaign. This is where we would recommend placing the tracking template. This would then allow you to only set the actual landing page for creatives and not having to worry about whether the tracking is correct or not. You can see where to place the tracking template in the following image.

Where to add the tracking code in Taboola

The following template can also be kept consistent across campaigns, meaning that you could just use it for all campaigns without making any changes to it. The Taboola Macros will replace the placeholder values and ensure that you will be able to see which campaigns, ads and sites are bringing traffic and conversions.

Brief explanation, on top of all the previous explanation. We have chosen to provide four different tracking templates. This is so you could simply copy the most relevant one to you and paste it directly into the campaign settings in Taboola. In order to help navigate to most relevant one for you, try answering the following questions:

  1. Will you or someone from your BI department try to match the data on which ad/site/campaign a conversion came from with the Taboola traffic data (impressions, clicks and costs)?
  2. Are you, or will you be using Server to Server Tracking (s2s)?

If you reply yes to the first question, you should definitely make sure to use the tracking templates using IDs. This will make matching much easier and more accurate. However, coming at the expense of you just being able to see an ID when looking into Google Analytics or in your CRM system, which is less readable than seeing the actual campaign name or site. In case you replied no, then go for the tracking templates using Names.

For the second question, if you are using or intend to use Server to Server Tracking in the future, make sure to include the Taboola Click ID. Exactly how Server to Server Tracking works and why it’s preferable to using the Taboola Pixel is something we will follow up on in a future post. For now, it’s enough knowing that the {click_id} needs to be passed in a URL Parameter for it to work. If interested, here’s the official documentation on s2s tracking for Taboola.

Taboola URL Tracking Template using IDs

Excluding Taboola Click ID utm_source=taboola&utm_medium=display&utm_campaign={campaign_id}&utm_content={campaign_item_id}&utm_term={site_id}
Including Taboola Click ID utm_source=taboola&utm_medium=display&utm_campaign={campaign_id}&utm_content={campaign_item_id}&utm_term={site_id}&tbclid={click_id}

Taboola URL Tracking Template using Names

Excluding Taboola Click ID utm_source=taboola&utm_medium=display&utm_campaign={campaign_name}&utm_content={title}&utm_term={site}
Including Taboola Click ID utm_source=taboola&utm_medium=display&utm_campaign={campaign_name}&utm_content={title}&utm_term={site}&tbclid={click_id}

There is still more to getting the tracking done right inside of Taboola, and we’ll make sure to cover the topic in more detail. But what is covered in this article is a solid foundation that will allow you to optimize your campaigns to performance. For updates on when we release new content, sign up for our Newsletter at the bottom of this page or follow us on Linkedin and Twitter.

If you want to know how you can get better results and optimize your workflow for Taboola and other native advertising platforms, have a look our Native advertising optimization tools or get in touch with us directly.