Overview
With Apple's App Tracking Transparency (ATT) framework introduced in iOS 14, passing user-level identifiers like click IDs, IP addresses, and device IDs in postbacks is no longer feasible for opted-out users.
Traditional conversion tracking relies on a click ID being passed from the click all the way through to the conversion postback. This allows platforms like Trackier to match a conversion back to the exact click that triggered it.
With iOS 14 and above, users who opt out of tracking via ATT prevent this click ID from being passed breaking the traditional attribution chain. Since most users choose not to be tracked, this impacts a significant portion of iOS campaign traffic.
To address this, Trackier introduced privacy postbacks a method that uses campaign IDs and publisher IDs instead of click IDs to attribute conversions probabilistically.
This allows you to continue tracking iOS conversions and attributing them to the right publisher and campaign, even without user-level data.
Trackier has introduced a new procedure to address this situation, which allows you to use privacy postbacks to achieve probabilistic attribution and trackable data.
The MMP will no longer be returning click ids, so we will need to use Trackier and their sub-publishers and sub-campaigns to send them publisher and campaign ids from Adnetwork.
What Changed and Why
Since MMPs (Mobile Measurement Partners) like AppsFlyer can no longer return click IDs for opted-out users, a new parameter is needed to carry the campaign and publisher identification data through the tracking chain.
The parameter used depends on the platform in the chain:
Platform | Parameter |
AppsFlyer |
|
Trackier |
|
Affise |
|
Swarm |
|
The configuration logic follows this structure:
&p8={p8}|{camp_id},{publisher_id}
This passes the publisher's campaign ID and publisher ID through each hop in the redirect chain, allowing each platform to attribute the conversion correctly at their level.
Why is this required?
In order to track conversion on Trackier's panel, we require a campaign ID and publisher ID because the advertiser will not send a click ID.
Additionally, we require the publisher's ID and campaign ID from the publisher end, which is why the configuration looks like this: &p8{p8}|{camp_id},{publisher_id}
Advertiser's Integration
There are two scenarios where your advertiser may be integrated.
Case 1: When your Advertiser is integrated with AppsFlyer
Step 1: Add the parameter to the Campaign URL
Append &af_adset_id={p8}|{camp_id},{publisher_id} to your campaign URL.
af_adset_id- AppsFlyer's parameter for receiving campaign and publisher data{p8}-Trackier's parameter that captures the publisher's campaign ID and sub-publisher ID{camp_id}- Your campaign ID on Trackier{publisher_id}- Your publisher ID on Trackier
Step 2 — Add the parameter to the Publisher Tracking URL
In the publisher's tracking link, append:
&p8={your_campaign_id},{your_sub_publisher_id}
This ensures the campaign and publisher IDs are passed forward to AppsFlyer when the user clicks.
At the Conversion Level
In the postback URL configured on your advertiser's AppsFlyer account, append &p8={af_adset_id} so that AppsFlyer sends the campaign and publisher data back to Trackier on conversion.
Sample AppsFlyer Postback URL:
https://demo2.trackier.co/acquisition?click_id=CLICK_ID&security_token=b50346a1c529c82dac33&p8={af_adset_id}Impression Conversions: You can also track impression-based conversions through the privacy postback by appending
&vta=1to your postback URL:https://demo2.trackier.co/acquisition?click_id=CLICK_ID&security_token=b50346a1c529c82dac33&p8={af_adset_id}&vta=1
Note:
You can record impression conversions as well through privacy postback.
Append &vta=1 in your privacy postback.
https://demo2.trackier.co/acquisition?click_id=CLICK_ID&security_token=b50346a1c529c82dac33&p8={af_adset_id}&vta=1
Case 2: Advertiser Using Tracking Software (Multi-Chain Setup)
Use this setup when the redirect chain involves multiple publishers and tracking platforms between the end advertiser and the final conversion.
In this scenario, the {p8} macro carries the campaign and publisher IDs of every hop in the chain, building up a pipe-separated string of IDs that gets passed all the way to the advertiser.
Step 1 : Receive Campaign and Publisher IDs in Your Tracking Link
Add the following structure to your tracking link:
https://abcd.gotrackier.com/click?campaign_id=1&pub_id=2&p1={click_id}&p8={p8}|{camp_id},{publisher_id}
Parameter breakdown:
Parameter | Description |
| Your Publisher ID |
| Your Campaign ID |
| Parameter for receiving campaign and publisher IDs from your publisher's sources |
| Campaign and publisher IDs passed from your publisher's sources |
| Campaign ID on your publisher's side |
| Publisher ID on your publisher's side |
Step 2: Pass the Chain Data to Your Advertiser
Pass your campaign ID, publisher ID, and all sub-source IDs accumulated in {p8} to your advertiser via the privacy postback:
https://track.trackier.co/privacy_postback?security_token=XXX&p8={p8}
Clicks flow:
Client | Tracking link Format | Example |
Client #4 | https://client3.gotrackier.com/click?pub_id=3&campaign_id=3&p8={p8}|{camp_id},{publisher_id} | https://client3.gotrackier.com/click?pub_id=3&campaign_id=3&p8=4,4 |
Client #3 | https://client2.gotrackier.com/click?pub_id=2&campaign_id=2&p8={p8}|{camp_id},{publisher_id} | https://client2.gotrackier.com/click?pub_id=2&campaign_id=2&p8=4,4|3,3 |
Client #2 | https://client1.gotrackier.com/click?pub_id=1&campaign_id=1&p8={p8}|{camp_id},{publisher_id} | https://client1.gotrackier.com/click?pub_id=1&campaign_id=1&p8=4,4|3,3|2,2 |
Client #1 | http://app.appsflyer.com/com.appsflyer?af_siteid={publisher_id}_{source}&af_c_id={campaign_id}&af_adset_id={p8}|{camp_id},{publisher_id} | http://app.appsflyer.com/com.appsflyer?af_siteid=1_abc&af_c_id=1&af_adset_id=4,4|3,3|2,2|1,1
|
Conversions flow:
Client | Trackier postback | Example data |
AppsFlyer sends | http://client1.trackier.co/privacy_postback?security_token=XX&p8={af_adset_id} | http://client1.trackier.co/privacy_postback?security_token=XX&p8=4,4|3,3|2,2|1,1 |
Client #1 | http://client1.trackier.co/privacy_postback?security_token=XX&p8={p8} | http://client1.trackier.co/privacy_postback?security_token=XX&p8=4,4|3,3|2,2|1,1 |
Client #2 | http://client2.trackier.co/privacy_postback?security_token=XX&p8={p8} | http://client2.trackier.co/privacy_postback?security_token=XX&p8=4,4|3,3|2,2 |
Client #3 | http://client3.trackier.co/privacy_postback?security_token=XX&p8={p8} | http://client3.trackier.co/privacy_postback?security_token=XX&p8=4,4|3,3 |
Client #4 | http://client4.trackier.co/privacy_postback?security_token=XX&p8={p8} | http://client4.trackier.co/privacy_postback?security_token=XX&p8=4,4 |
Broaden your knowledge:
Conclusion
Privacy postbacks allow you to maintain meaningful iOS campaign attribution even when click IDs are unavailable due to ATT opt-outs.
By passing campaign and publisher IDs through the p8 parameter at every hop in the redirect chain, Trackier can probabilistically attribute conversions back to the correct publisher and campaign preserving your reporting integrity in a privacy-first environment.
For related setup guides, refer to:
We're thrilled to have put together a top-notch team of qualified experts who are available to handle any of your concerns and respond to any inquiries you may have. You can contact us at any time by sending an email to support@trackier.com or using the in-platform chat feature.




