
This article will guide you on how to set up Custom Tracking Parameters for your website to automatically collect more user data while running Digital Advertisements. With more data at your disposal, you can analyze and optimize costs and performance. For example, you can accurately identify which users come from which Paid Keywords are more likely to make purchases.
In the previous article, Nemo Marketing introduced this concept. I highly recommend reading that article to understand the context. Because, the upcoming article will focus purely on technical configuration.

Article Structure
Part 1: Configure Tracking Parameters
In this section, we will define a list of essential tracking parameters for data collection. You will then be guided on how to brief your developer and, finally, test the results.
Part 2: Create Dynamic Tracking Links for Automatic Attribution Data Collection from Ad Networks
You will be introduced to what dynamic tracking links are and how they operate. Following that, Nemo Marketing will compile dynamic tracking links from major Ad Networks, allowing you to easily copy and paste them.
Configure Tracking Parameters
List of Tracking Parameters
Just a quick reminder that tracking parameters are similar to:
https://yourdomain.com?utm_source=…..…&utm_medium=…..…&utm_campaign=…..…&utm_content=…..…&utm_term=…..…

Here, we will collectively establish a list of such parameters and understand the purpose of collecting data for each parameter.
The parameters suggested by Nemo Marketing below are based on practical work experience. From Nemo’s perspective, these parameters are sufficient for gathering insights for the marketing analysis team, as well as for building an automated reporting system.
Parameter | Data Type |
utm_source | Distinguish the advertising channel and the type of campaign you are running, for example, “Google_Search.” |
utm_medium | Distinguish the advertising channel and the type of campaign you are running, for example, “Google_Search.” |
utm_content | Name of the content |
utm_term | Terms or keywords (but we have ga_keyword as another parameter below) |
utm_campaign | Name of the ad campaign |
ga_campaign_id | Unique ID of the ad campaign |
ga_adgroup_name | Name of the ad group |
ga_adgroup_id | Unique ID of the ad group / ad set |
ga_ad_name | Name of the ad (or creative) |
ga_ad_id | ID the Ad (or Creative) |
ga_extension_id | ID of the extension in Google Ads (Search Ads) |
ga_keyword | Paid Keyword of the extension in Google Ads (Search Ads) (this is the exact keywords which customers found you) |
ga_match_type | Match type of the keyword (broad, phrase, exact) in Google Ads (Search Ads) |
ga_position | The position that the ads appeared in the SERPs, in Google Ads (Search Ads) |
ga_device | Device of the users |
ga_device_model | Detailed device model of the users |
ga_placement | The placement where the ads displayed |
ga_network | The network where the ads distributed |
ga_site | The site where the ads placed |
If you include all the parameters mentioned above in the URL, you will have the following result:
https://yourdomain.com/?utm_source=……..&utm_medium=……..&utm_content=……..&utm_term=……..&utm_campaign=……..&ga_campaign_id=……..&ga_adgroup_name=……..&ga_adgroup_id=……..&ga_ad_name=……..&ga_ad_id=……..&ga_extension_id=……..&ga_keyword=……..&ga_match_type=……..&ga_position=……..&ga_device=……..&ga_device_model=……..&ga_placement=……..&ga_network=……..&ga_site=……..
FAQ before we proceed

Question 1: Why do we name the parameters as shown in the table? Can we name them differently?
In essence, the parameters listed above are predefined by me, and you are entirely free to name them differently. For example, instead of “ga_campaign_id,” you can name it as “c_id” or “campaign_id” or “utm_campaign_id,” and so on. As long as the parameter’s name accurately reflects the type of data it collects, it’s acceptable.
Question 2: Can I set up more parameters than the ones listed above?
Absolutely, you can set up additional parameters based on your data usage needs. For instance, if you are running campaigns on Taboola, they allow you to collect data down to the level of {thumbnail} or {title} for each creative (which means you can identify which thumbnail or title generates the most conversions).
In this case, if you want to collect this additional data, I recommend adding two new parameters to the list, such as &ga_image={thumbnail}&ga_headline={title}.
Just make sure to keep in mind these two points:
- Name the parameters appropriately to reflect the type of data they are collecting, making them universally applicable to multiple ad networks.
- Do not mix parameters. For example, using ga_keyword to collect {title} or {thumbnail} data could lead to messy data later on.
Send Request to Developer

If you are a marketer, you’ll likely need the assistance of a developer in your company.
Simply reach out to your Web Owner, Web Product Manager, or Web Developer to send them a request.
It’s quite straightforward. You just need to send them the list of parameters mentioned above and explain to them that:
- You need the developer to configure these parameters in the URL to collect the values entered.
- These values need to be stored in the company’s database, attributed to customer_id, purchase_id, and with timestamps (Note: customer_id and purchase_id will vary between companies).
Below is a raw data table of what we accomplish with this task. Each customer_id or purchase_id is attributed to specific tracking values.

Test the Tracking Parameters
After the developer has completed their work, it’s important to test whether the system is collecting the correct and sufficient data.
Here’s how:
- Create a test link and insert the test values for all parameters. For example: https://yourtargeturl.com/?utm_source=test_utm_source&utm_medium=test_utm_medium&ga_campaign_id=test_ga_campaign_id&ga_keyword=test_ga_keyword……
- Clear your cache, manually click on the link, and perform a conversion action (submit a form, register a lead, make a purchase).
- Check your CRM or database to see if the data is returned correctly based on what you set up in the test link.
If there are any issues, simply request the developer to make the necessary fixes. If it’s successful, then congratulations!
Create a Dynamic Tracking Link to Automatically Collect Attribution Data from the Ad Network
As previously mentioned, this will be a URL where you fill in all the parameters listed above:
https://yourdomain.com/?utm_source=……..&utm_medium=……..&utm_content=……..&utm_term=……..&utm_campaign=……..&ga_campaign_id=……..&ga_adgroup_name=……..&ga_adgroup_id=……..&ga_ad_name=……..&ga_ad_id=……..&ga_extension_id=……..&ga_keyword=……..&ga_match_type=……..&ga_position=……..&ga_device=……..&ga_device_model=……..&ga_placement=……..&ga_network=……..&ga_site=……..
So, as a marketer running paid media, what do you need to fill in the ‘……..’ placeholders to track the source of use?
The answer is that you hardly need to fill in much manually because right below, I will introduce you to a method called Dynamic Tracking or Macros.
What is Dynamic Tracking (Macro) and How Does It Work?

A Macro is a variable that you insert into your URL alongside the relevant Tracking Parameter. The ad network can then automatically insert the appropriate value to replace that Macro. Because this process is entirely automated and flexible, we refer to it as Dynamic Tracking.
Let’s review the example in the image:

EXPLANATION: Here is your tracking link (with just a few parameters for your understanding):
https://yourdomain.com/?utm_source=Google_Search&ga_keyword={keyword}&ga_device_model={devicemodel}
We have incorporated 2 macros into the tracking link:
- {keyword} is associated with the parameter ‘ga_keyword.’
- {devicemodel} is linked to the parameter ‘ga_device_model.’
Now, when a customer using an iPhone performs a search for “Conversers Shoes” in the SERPs and subsequently clicks on your paid ads in the SERPs, Google Ads will automatically substitute:
- {keyword} with “Converse All Stars Sales”
- {devicemodel} with “Apple-iPhone”
As a result, you can dynamically and accurately capture this information, which can be extremely valuable for later analytics.
Lists of Macros in Popular Ad Networks

Please note that Macros are defined differently across various Ad Networks. For instance, {keyword} and {devicemodel} can only be used in Google Ads.
In this section of the article, Nemo Marketing is furnishing you with a list of Macros in the most widely used Ad Networks (based on my work experience). All you have to do is apply them to your tracking link to gather data:
Parameter | Google Ads | Facebook Ads | Adroll | Taboola | MGID |
URL | {lpurl}? *required by Google Ads | real url | real url | real url | real url |
utm_source | *manually fill | *manually fill | *manually fill | *manually fill | *manually fill |
utm_medium | *manually fill | *manually fill | *manually fill | *manually fill | *manually fill |
utm_content | */ | */ | */ | */ | */ |
utm_term | */ | */ | */ | */ | */ |
utm_campaign | *optional | {{campaign.name}} | [ADROLL:CAMPAIGN_NAME] | {campaign_name} | *optional |
ga_campaign_id | {campaignid} | {{campaign.id}} | [ADROLL:CAMPAIGN_EID] | {campaign_id} | {campaign_id} |
ga_adgroup_name | */ | {{adset.name}} | */ | */ | */ |
ga_adgroup_id | {adgroupid} | {{adset.id}} | [ADROLL:AD_GROUP_EID] | */ | */ |
ga_ad_name | */ | {{ad.name}} | */ | */ | */ |
ga_ad_id | {creative} | {{ad.id}} | [ADROLL:AD_EID] | {campaign_item_id} | *empty |
ga_extension_id | {extensionid} | */ | */ | */ | */ |
ga_keyword | {keyword} | */ | */ | */ | */ |
ga_match_type | {matchtype} | */ | */ | */ | */ |
ga_position | {adposition} | */ | */ | */ | */ |
ga_device | {device} | */ | [ADROLL:DEVICE_TYPE] | {platform} | */ |
ga_device_model | {devicemodel} | */ | */ | */ | */ |
ga_placement | {placement} | {{placement}} | [PLACEMENT] | {site_domain} | {category_id} |
ga_network | {network} | */ | [ADROLL:NETWORK] | */ | */ |
ga_site | {target} | {{site_source_name}} | */ | {site} | */ |
Combine the parameters and macros, and you’ll have dynamic tracking link strings:
Eg. Google Ads
{lpurl}?utm_source=manually_fill&utm_medium=manually_fill&utm_campaign=optional&ga_campaign_id={campaignid}&ga_adgroup_id={adgroupid}&ga_ad_id={creative}&ga_extension_id={extensionid}&ga_keyword={keyword}&ga_match_type={matchtype}&ga_position={adposition}&ga_device={device}&ga_device_model={devicemodel}&ga_placement={placement}&ga_network={network}&ga_site={target}
Table Explanation:
- *required by Google Ads:
{lpurl} is used to replace your actual landing page URL. Therefore, you don’t need to insert the root Landing Page URL into the tracking field. Instead, just insert it like {lpurl}?utm_source=…….&utm_medium=………
- *manually fill:
The utm_source & utm_medium should be manually filled in a consistent way. For example, in my company, we consistently use “Google_Search”, “Google_Display”, “Facebook_Conversion” …. to fill both parameters. The formula is “NetworkName_CampaignType”.
- */:
Let’s leave them empty. You are not encouraged to fill these parameters as they are not necessary.
- *optional:
You can fill these parameters manually, but it’s just optional. For example, you can fill the campaign_name of Google Ads because they don’t offer a Macro to collect campaign name automatically.
- *Other note:
The names of Macros don’t always refer to the actual meaning. Such as in Taboola, {platform} means the device type (not the ad platform type). Thus, I put {platform} of Taboola under the ga_device parameter.

To help you understand better and feel confident when using Macros, I’ve attached Macro documentation for the mentioned Ad Networks. Please refer to them:
If you are working with any other ad networks, please research if they support Macros. If they do, take advantage of the parameters mentioned above for tracking.
Guide: How to Insert Tracking Links in Ad Networks

In this final section, I will guide you on how to properly apply tracking links to advertising campaigns on three major ad platforms: Google Ads, Facebook Ads, and Adroll.
✅ Google Ads:
When setting up your ad, follow these steps:
Step 1: Final URL Provide only the URL of the landing page. Example: https://yourdomain.com/landing1/
Step 2: Tracking Template Provide only the URL parameters. Remember to include “{lpurl}?” at the beginning as it is the default requirement for Google.
Example:
{lpurl}?utm_source=manually_fill&utm_medium=manually_fill&utm_campaign=optional&ga_campaign_id={campaignid}&ga_adgroup_id={adgroupid}&ga_ad_id={creative}&ga_extension_id={extensionid}&ga_keyword={keyword}&ga_match_type={matchtype}&ga_position={adposition}&ga_device={device}&ga_device_model={devicemodel}&ga_placement={placement}&ga_network={network}&ga_site={target}
Click “Save ad” to complete the process. The data will be automatically attributed from this point onwards.

✅ Facebook Ads:
When setting up your ad, follow these steps:
Step 1: Website URL Provide only the URL of the landing page. Example: https://yourdomain.com/landing1/
Step 2: URL Parameters Provide only the URL parameters. Note that you don’t need to start with a ‘?’ character; you can begin directly with the parameter.
Example:
utm_source=manually_fill&utm_medium=manually_fill&utm_campaign={{campaign.name}}&ga_campaign_id={{campaign.id}}&ga_adgroup_name={{adset.name}}&ga_adgroup_id={{adset.id}}&ga_ad_name={{ad.name}}&ga_ad_id={{ad.id}}&ga_placement={{placement}}&ga_site={{site_source_name}}

✅ Adroll Ads:
When setting up your Ad in Adroll:
Unlike Facebook Ads and Google Ads, in Adroll Ads, you need to combine both the URL and URL parameters into the same field, as shown in the provided example.
Formula = URL + ‘?’ + [URL Parameter]
Example
https://yourdomain.com/landing1/?utm_source=manually_fill&utm_medium=manually_fill&utm_campaign=[ADROLL:CAMPAIGN_NAME]&ga_campaign_id=[ADROLL:CAMPAIGN_EID]&ga_adgroup_id=[ADROLL:AD_GROUP_EID]&ga_ad_id=[ADROLL:AD_EID]&ga_device=[ADROLL:DEVICE_TYPE]&ga_placement=[PLACEMENT]&ga_network=[ADROLL:NETWORK]

Closing:
After implementing the steps outlined in this article, you’ll have access to a wealth of user data for in-depth analysis and optimization of your paid advertising campaigns.
Is your company also focusing on SEO activities?
If so, I encourage you to continue reading our next article. It will guide you on accurately attributing customers coming from SEO and DIRECT sources. It’s a valuable resource, and I believe it’s a rare document that instructs you on measuring customers from SEO and DIRECT sources!

You were visited with simply magnificent idea
Fine way of describing, and pleasant paragraph to obtain facts about my presentation subject matter, which i am going to present in school.
Hey would you mind stating which blog platform you’re working
with? I’m looking to start my own blog in the near future but
I’m having a difficult time making a decision between BlogEngine/Wordpress/B2evolution and Drupal.
The reason I ask is because your design seems different then most blogs and I’m looking for something completely unique.
P.S Sorry for getting off-topic but I had to ask!
Hi, sorry for the late response. I am currently using WordPress since my domain hosting provider also provides this service, it’s convenient for me to utilize
I was recommended this web site by my cousin. I am not sure whether this post is written by him as no
one else know such detailed about my problem.
You’re amazing! Thanks!
Hi, yes this post is truly pleasant and I have learned lot of things from it concerning blogging.
thanks.
Very great post. I simply stumbled upon your blog
and wished to mention that I have really enjoyed surfing around your blog posts.
After all I will be subscribing in your feed and I hope you
write once more very soon!