Overview
TUNE supports passing UTM (Urchin Tracking Module) parameters through postback URLs, allowing you to carry attribution data from your TUNE tracking links into Google Analytics or any other analytics platform. When a conversion fires, TUNE replaces its macros with live values and includes them in the postback call—giving your analytics layer the full context of which campaign, source, and ad drove that conversion.
How It Works
TUNE uses a macro substitution system. You embed placeholder tokens—called macros—in your postback URL when setting it up. When the postback fires, TUNE replaces each macro with the real value from that specific conversion. The pattern looks like this:
https://analytics.example.com/collect
?utm_source={offer_id}
&utm_medium={affiliate_id}
&utm_campaign={offer_name}
&utm_term={aff_unique1}
&utm_content={aff_unique2}When the postback fires, TUNE substitutes each {macro} with its real value for that conversion, so the analytics platform receives a fully populated URL.
UTM Parameter to TUNE Macro Mapping
The table below shows the most common mappings between standard UTM parameters and TUNE macros. The right combination depends on what data you want to pass and how your tracking links are structured.
| UTM Parameter | TUNE Macro | What It Captures |
|---|---|---|
| utm_source | {offer_id} |
The numeric TUNE offer ID — useful when source = the offer |
| utm_source | {affiliate_name} |
The name of the affiliate/partner who drove the conversion |
| utm_source | {affiliate_id} |
The numeric TUNE affiliate (publisher) ID |
| utm_medium | {affiliate_id} |
Publisher ID, when treating medium as the traffic source type |
| utm_medium | {payout} |
Payout Amount |
| utm_campaign | {offer_name} |
The offer name — useful if campaigns map 1:1 to offers |
| utm_term | {aff_unique1} |
Custom sub ID 1 — usually populated by the affiliate at click time |
| utm_content | {aff_unique2} |
Custom sub ID 2 — second custom sub from the affiliate |
| utm_content | {creative_id} |
The creative/banner ID if creative-level tracking is active |
Available TUNE Macros
Beyond the common UTM mappings above, TUNE supports a wide range of macros you can include in postback URLs. Here are the ones most relevant for analytics attribution:
Offer
-
{offer_id}— Numeric offer ID -
{offer_name}— Offer name (URL-encoded automatically)
Affiliate / Publisher
-
{affiliate_id}— Affiliate's numeric TUNE ID -
{affiliate_name}— Affiliate's display name
Conversion Details
-
{conversion_id}— Unique TUNE conversion ID -
{datetime}— Timestamp of the conversion -
{payout}— Payout amount for this conversion
Custom Sub IDs (Passed by Affiliate at Click Time)
-
{aff_unique1}— Custom sub ID 1 -
{aff_unique2}— Custom sub ID 2 -
{aff_unique3}— Custom sub ID 3 -
{aff_unique4}— Custom sub ID 4 -
{aff_unique5}— Custom sub ID 5
Click & Traffic Data
-
{transaction_id}— The TUNE click transaction ID (ties click to conversion) -
{ip}— IP address of the converting user -
{user_agent}— Browser/device user agent string -
{creative_id}— Creative/banner ID if applicable
Step-by-Step Setup
Option A: Offer-Level Postback (Fires for All Affiliates on an Offer)
- Log in to the TUNE platform and navigate to Offers.
- Select the offer you want to configure and click Edit.
- Go to the Tracking tab.
- Find the Postback URL field and enter your URL with TUNE macros:
https://www.googleanalytics.com/collect
?v=1
&t=event
&tid=UA-XXXXXXX-X
&cid={transaction_id}
&utm_source={affiliate_name}
&utm_medium=affiliate
&utm_campaign={offer_name}
&utm_term={aff_unique1}
&utm_content={aff_unique2}- Click Save.
Option B: Affiliate-Level Postback (Fires Only for a Specific Affiliate)
- Navigate to Affiliates and select the affiliate.
- Click the Postback tab.
- Click Add Postback and configure the URL with your desired macros.
- Set the Status filter as needed (Approved, Pending, or All).
- Click Save.
Example: Sending UTM Data to Google Analytics 4
If you're using GA4 and the Measurement Protocol, your postback URL might look like this:
https://www.google-analytics.com/mp/collect
?measurement_id=G-XXXXXXXX
&api_secret=YOUR_API_SECRET
&client_id={transaction_id}
&events[0][name]=conversion
&events[0][params][campaign_id]={offer_id}
&events[0][params][source]={affiliate_name}
&events[0][params][medium]=affiliate
&events[0][params][campaign]={offer_name}
&events[0][params][term]={aff_unique1}
&events[0][params][content]={aff_unique2}client_id collected from the user's browser via a sub ID (e.g., {aff_unique5}) rather than using the TUNE transaction ID as a proxy.Pass the Affiliate Name as utm_source
Best when you want Google Analytics to show affiliate/partner names as the traffic source:
utm_source={affiliate_name}&utm_medium=affiliate&utm_campaign={offer_name}Pass Offer ID as utm_campaign for Offer-Based Reporting
Useful when you want to segment by offer ID in GA and join back to TUNE reporting:
utm_source=tune&utm_medium=affiliate&utm_campaign={offer_id}&utm_content={affiliate_id}Pass Sub IDs for Affiliate-Supplied Data
Affiliates often pass their own placement or sub-publisher IDs via sub parameters at click time. You can relay these through to your analytics layer:
utm_source={affiliate_id}&utm_medium=affiliate&utm_term={aff_unique1}&utm_content={aff_unique2}Tips and Common Gotchas
{aff_unique1} will substitute as an empty string. Your analytics tool will receive utm_term= with no value—this is expected behavior, not an error.Need Help?
If your postback URL isn't firing correctly or macros aren't being substituted as expected, contact the TUNE Support team. When reaching out, include:
- The full postback URL (with macros, before substitution)
- The offer ID and/or affiliate ID you're testing with
- A screenshot or log of the postback firing (or not firing)
- The conversion ID for a test conversion you triggered