For dynamic tracking, macros provided by the media platform are used to manage obfuscation. These dynamic macros, often referred to as dynamic URL parameters, act as placeholders that are replaced with actual values when a link is clicked. The Data Standards Cloud helps preserve the safety of obfuscated tracking codes for static implementations while ensuring rich data downstream. This approach allows for secure and scalable tracking while connecting your metadata seamlessly to downstream systems.
Why Implement Dynamic Macros?
Using macros for your campaign tracking enables more granular reporting. You can often report down to the ad or the creative level, allowing for deeper insights. There is a variety of macros for varied reporting.
The increased granularity enables you to assess campaign performance in your analytics platform, which leads to better optimization opportunities, which in return help inform future strategies and budget allocation.
Dynamic macros are more scalable. You can set up uniform tracking across the board.
If you're ready to implement dynamic macros, skip ahead to Step 1. Or perhaps you want some background information first, such as what dynamic macros really are in the first place. Dynamic macros are one way (the best way, we think) to implement tracking codes. Read on to understand tracking codes, the different ways to implement them, their pros and cons, and why we propose dynamic macros as the best solution.
-
Understand Tracking Codes
A tracking code, often referred to as a URL tracking parameter, is information appended to a URL to help you track the performance of online campaigns and understand user behavior. These parameters are placed at the end of a URL and consist of key-value pairs that relay information about how a visitor interacts with your site. The typical structure of a URL with a tracking code looks like this:
Example: Adobe Analytics Tracking Code
Adobe Analytics primarily uses query string parameters for tracking campaigns and user interactions as shown below, and you can define your own parameters based on your campaign needs.
Example: Google Analytics Tracking Codes
Google Analytics primarily uses UTM parameters for tracking traffic sources and campaign performance, including utm_source, utm_medium, utm_campaign, utm_term, utm_content, and utm_id, as shown below:
Tracking Code Structures: Long, Obfuscated, or Dynamic
There are different approaches to structuring tracking codes, and each has its advantages and drawbacks. The three structures we explore in this section are: long tracking codes, obfuscated tracking codes, and our proposed solution--and topic of this article--dynamic tracking codes.
Long Tracking Codes: Descriptive but Public
Long tracking codes are tempting because they're easily readable and descriptive. They look like this:
Pros of long tracking codes:
- Readable: Long tracking codes are human-readable and allow you to clearly understand the context.
- Targeting: You can include the audience type or product name in a long tracking code so that you can query those parameters out of the UkL and use them tor targeting purposes like personalization.
Cons of long tracking codes:
-
Privacy Risk: Long tracking codes are readable by audiences and competitors, which can expose sensitive information.
-
Aesthetics: They can appear cluttered, affecting user experience and click-through rates if users perceive them as spammy or untrustworthy.
-
Error-Prone: The longer the code, the greater the chance of typos or misconfigurations, leading to broken tracking or inaccurate data.
-
Platform Limitations: Some ad platforms or social sites truncate long URLs, causing tracking parameters to be lost.
Obfuscated (or Encoded) Tracking Codes: Safe and Short, but Cryptic
Obfuscated, or encoded, tracking codes lead to safer, shorter URLs, as shown. Their main advantage is brand safety.
Your obfuscated tracking code is generated in Claravine, along with all of your metadata. We then associate that metadata with your tracking code. The tracking URL is implemented in the media platform. When the customer clicks on the asset with the URL, click information is captured on-site. On the back end, Claravine sends all the metadata with its associated tracking code to your BI platform, enabling you to use that tracking code as a key and connect it with your metadata.
Pros:
- Cleaner URLs: Obfuscated codes can lead to cleaner, shorter URLs, making them more user-friendly and aesthetically pleasing.
- Brand Safety: By obscuring tracking information, brands can safeguard proprietary strategies and maintain a more professional appearance in communications. Additionally, competitors won't be able to see what metadata is associated with that tracking code.
Cons:
- Lack of Readability: The obfuscated nature makes it difficult to immediately understand what the parameters represent.
-
Debugging Challenges: Harder to troubleshoot if problems arise.
Dynamic Tracking Codes: Leveraging Platform Macros for Consistent Obfuscation, Scalable Implementation, and Granular Reporting
For dynamic tracking, macros provided by the media platform are used to manage obfuscation.
URL macros, often referred to as dynamic URL parameters, are placeholder values that are replaced with the actual value when the URL is clicked. Most of the popular ad marketplaces support a variety of URL macros to simplify the ad creation process for their customers. Two examples of dynamic tracking codes are shown below:
In the examples above, TikTok Ads Manager and Meta Ads Manager each has its unique macros, but are using the same ID: campaign ID, ad set ID, and ad ID. These placeholders will be replaced with the actual IDs when that link is clicked. These examples track down to the ad level to illustrate the increased granularity of this approach.
Pros of dynamic tracking codes:
- More Granular Reporting: By including campaign, ad set, and ad IDs, you can accurately track the performance of specific efforts. This helps assess which campaigns drive traffic or conversions.
- Optimization Opportunities: Easily identify which campaigns or ads need optimization. This data can inform future marketing strategies and budget.
- Scalability: There is no longer a need to generate static codes for each ad. Some platforms allow tracking at the campaign or account level. Explore using tracking templates!
Cons of dynamic tracking codes:
- Lack of Readability: Using IDs makes it difficult to immediately understand what the parameters represent.
- Tracking Limitations: This limitation is only applicable when the platform or service generating the URLs does not support certain macros.
-
Step 1. Generate Name Conventions for Your Campaigns
Begin by generating the name conventions for your campaigns. There are various ways to approach this, so take time to decide on your optimal workflow. Largely, the question lies in where you generate the name conventions for your campaigns. Here we present two examples of workflows.
Sample Workflow 1 (Recommended): Generate Name Conventions in the Claravine Platform
In our recommended workflow, you generate all of the name conventions that will be implemented in the media platforms along with your dynamic tracking code right in The Data Standards Cloud.
For example, you may begin by generating campaign names, followed by ad set names, and then ad names.
Notice that the template reminds you of unique dynamic tracking that must be implemented for each platform.
In the Ad Name Creation page shown above, the media platforms are in the right column. The dynamic tracking for each platform is in the left column. You may notice that Meta Ads Manager and Snapchat Ads Manager use the same macros, while Google Campaign Manager 360, TikTok Ads Manager, and Pinterest Ads Manager have their own unique sets of macros. A big advantage of dynamic tracking is that you use the same code across all of your campaigns, which expedites implementation and removes the risk of implementing the wrong tracking for an ad.
Sample Workflow 2: Generate Name Conventions Outside the Claravine Platform
This workflow begins outside of The Data Standards Cloud. While we do not recommend this workflow, we do support it. With this option, you can generate your name conventions in Google Sheets or Excel, for example, and then implement them in the media platform with your dynamic tracking.
-
Step 2. Set Up Dynamic Tracking Codes in the Media Platform
Regardless of where you generate name conventions, your second step is to set up tracking codes in the media platform. We use Google Campaign Manager 360, TikTok Ads Manager, Meta Ads Manager, and Pinterest Ads Manager as examples.
Example: Tracking Code Setup in Google Campaign Manager 360
Google platforms allow you to set your tracking at different levels. In the image below tracking is set at the campaign level. All ads under this campaign can automatically inherit this same tracking.
You can also set tracking at the account level. Just as with campaigns, account-level tracking can be inherited by every ad under every campaign under that account.
However, you still have the option to set tracking directly at the ad level. You can enter the URL suffix for each ad, or toggle for the ad to inherit to inherit the suffix from the account or the campaign level. This is a welcome time saver.
Example: Tracking Code Setup in TikTok Ads Manager
In TikTok Ads Manager, you simply add your URL and campaign parameters in the Destination section for each ad.
Example: Tracking Code Setup in Meta Ads Manager
Meta Ads Manager also has a Tracking section for each ad. Enter the URL parameters directly.
Example: Tracking Code Setup in Pinterest Ads Manager
In Pinterest Ads Manager, enter the full URL (website address and full query string) in the Destination URL field for each ad.
-
Step 3. Classify Dynamic Tracking Codes for Downstream Use
Once the campaign is live and an ad is clicked, the macros are populated in the URL with their IDs by the media platform, and tracking is captured by analytics. At this step, classify your tracking code to get your metadata downstream to platforms like Adobe Analytics, Snowflake, and more. This is easy with our out-of-the-box connectors.
All your inbound data is in the Pending section of The Data Standards Cloud.
Once you are in your pending submissions, you can do a few things.
- Validate and correct your naming conventions.
In this example, campaign names are inbound directly from GCM360 and some errors are flagged, corrected, and a corrected campaign name is output and automatically updated in Google Campaign Manager 360.
- Enrich with additional metadata.
-
Classify your tracking code and send your data downstream.
Example: Classifying Tracking Codes for Google Campaign Manager 360
In this example, the GCM360 tracking code is classified using Campaign ID, Placement ID, Ad ID, and Creative ID. All the data shown below is automatically ingested from our inbound connector with GCM360. The Data Standards Cloud ingests all of your naming conventions, IDs, and any additional metadata. The tracking codes shown on the left match exactly what is captured on-site when a user clicks your ad. When we send that data downstream, you can expand all of your metadata.
Example: Classifying Tracking Codes for TikTok Ads Manager
TikTok Ads Manager is similar to GCM360. Again, data is automatically ingested and tracking codes are classified for more granularity in your reporting.
Example: Classifying Tracking Codes for Meta Ads Manager
Meta Ads Manager is very similar to GCM360. Data is automatically ingested from Meta Ads Manager, including all of your IDs, naming conventions, etc. Data is validated, and the IDs are used to classify the tracking code.
Example: Classifying Tracking Codes for Pinterest Ads Manager
The Pinterest Ads Manager workflow is similar to all the above. Data is automatically ingested. It is validated. The IDs are used to classify the tracking codes.
Example: No Native Integration
In the case where Claravine doesn't offer a native integration to a media platform in which you run campaigns, we can still replicate the same workflow.
For example, if you run campaigns on a platform like Reddit, you can import the data by setting up a recurring export for the platform to send to an S3 bucket for SFTP, from where it is automatically ingested.
You can also manually import a file from the media platform to classify your tracking code and send the data downstream. You can import a file containing up to 50,000 rows. This method still replicates the essence of our integrations: all the IDs and naming conventions are inbound, where you can validate them.
- Validate and correct your naming conventions.
-
Final Recommendations for Implementation
- Contact your Claravine CSM if you are interested in implementing dynamic macros. We can help with outlining your workflow, solution design, implementation, and/or training.
- Remember Claravine Academy as a source. We can develop customized trainings for your team.
- Make your data team aware of any impending changes to your tracking. Verify any changes that must be updated downstream to ensure that data will be ingested correctly.
- Talk to your users to ensure that the new workflow will work for them and everyone is aligned. This new workflow with dynamic parameters should speed up their process.
- Consider a phased implementation, whereby you test with one platform, one campaign, and then expand.
Comments
0 comments
Article is closed for comments.