1. Set Up Your OneLink Template in AppsFlyer
An AppsFlyer OneLink template is required to enable CTV-to-mobile cross-platform attribution. This allows a single impression tracking URL to support attribution across both iOS and Android. As Universal Ads is CTV only, this is critical to properly measure our performance in AppsFlyer.
⚠️ Important: This step must be completed before generating your impression tracking URL. If the OneLink template is not configured correctly, your impression tracker will not function and may return an error when tested.
Create a OneLink Template
- Log in to your AppsFlyer account.
- From the left navigation menu, go to Engage > OneLink Management.
- Click New Template and follow the prompts to create a new OneLink template.
Enable Cross-Platform Attribution
Cross-platform attribution must be enabled on your OneLink template. This is what allows AppsFlyer to match a CTV impression to a subsequent mobile app install.
- Within the OneLink Management section, select the Edit option next to the OneLink template you created.
- Locate the Cross-Platform Attribution section and check the box to enable cross-platform attribution.
- Save your template.
2. Activate Universal Ads as an Integration Partner
Next, you will activate Universal Ads as an integrated partner within AppsFlyer and configure the attribution settings required for CTV impression tracking.
- From the left navigation menu, go to Collaborate > Active Integrations.
- Use the search bar to find Universal Ads.
- Select Universal Ads from the results and click Set up integration.
- Once on the Universal Ads partner integration page, complete the following settings on the Integration tab
- Toggle the Activate Partner button ON
- Toggle the Install View-Through Attribution button ON
- This is required for CTV advertising, as viewers cannot click on a TV ad, meaning attribution is based on impression exposure.
- Toggle the Cross-Platform Equal Attribution Priority button ON and set the. lookback window to 6 hours
- This gives CTV impressions the same attribution priority as a deterministic click for a defined time window
- Click Save Integration before proceeding to the next tab.
3. Generate Your Impression Tracking URL
With the integration activated, you will now configure your attribution link and generate the OneLink impression tracking URL to use in Universal Ads.
- Click on the Attribution Link tab within the Universal Ads partner integration.
- Select OneLink as your attribution link type.
- Choose the OneLink template you created in the Set Up Your OneLink Template in AppsFlyer step above
- The Attribution Link Parameters section is automatically populated with all parameters and macros supported by Universal Ads
⚠️ Note: We recommend leaving this section as is to maximize the data collected on each impression, however, parameters can be removed if desired.
- The following macros are auto-generated in the impression tag and will not be listed in this section. These macros are mandatory signals required for CTV-to-Mobile attribution:
- IP Address: af_ip={{IP_ADDRESS_ESC}}
- User Agent: af_ua={{USER_AGENT_ESC}}
- View Through Attribution Window: af_viewthrough_lookback=24h
- Cross-Platform Attribution enabled: af_xplatform=true
- Cross-Platform Attribution Window: af_xplatform_vt_lookback=72h
- Scroll down within the Attribution Link tab to set attribution windows
- Set the View-Through Lookback Window to 24 hours
- Toggle the Cross-Platform View-Through Lookback Window to ON and set to 72 hours
- When cross-platform attribution is enabled, this window takes precedence over the standard view-through lookback window.
- Click Save Attribution link and then copy your impression tracking URL, you will need this in the next step
⚠️ Example of OneLink Impression Tracking URL
https://impressions.onelink.me/Dzmb?pid=universal_int&af_siteid=universal_ads&c={{CAMPAIGN_NAME}}&af_c_id={{CAMPAIGN_ID_ALT}}&af_ad={{CREATIVE_NAME}}&af_ad_id={{CREATIVE_ID_ALT}}&af_adset={{LINE_ITEM_NAME}}&af_adset_id={{LINE_ITEM_ID_ALT}}&af_viewthrough_lookback=24h&af_ip={{IP_ADDRESS_ESC}}&af_ua={{USER_AGENT_ESC}}&af_xplatform=true&af_xplatform_vt_lookback=72h
4. Grant Universal Ads Access in AppsFlyer
To allow Universal Ads to access the reporting from AppsFlyer and enable efficient support of your app, you need to grant ad network permissions.
- Click on the Permissions tab within the Universal Ads partner integration
- Toggle Ad Network Permissions button to ON
- We recommend toggling ON all additional permissions to maximize current and future integration capabilities
- Click Save Permissions
5. Add Your Impression Tracker in Universal Ads
With your AppsFlyer impression tracking URL ready, you can now create your App Tracker in Universal Ads.
- Create a Performance+ Campaign
- In the “Objective” section select App Promotion
- At the Ad Set level under the “Tracking” section toggle the App Tracker ON
- Select Create App Tracker
- Select AppsFlyer as your MMP Partner
- Name your tracker and select which platform you’d like to run on, iOS and Android are pre-selected
- Copy & paste your iOS App Store and Android Package Name in the respective boxes
- Copy & Paste your OneLink impression tracking URL you copied from your AppsFlyer integration in Step 3 above.
⚠️ Example of OneLink Impression Tracking URL
https://impressions.onelink.me/Dzmb?pid=universal_int&af_siteid=universal_ads&c={{CAMPAIGN_NAME}}&af_c_id={{CAMPAIGN_ID_ALT}}&af_ad={{CREATIVE_NAME}}&af_ad_id={{CREATIVE_ID_ALT}}&af_adset={{LINE_ITEM_NAME}}&af_adset_id={{LINE_ITEM_ID_ALT}}&af_viewthrough_lookback=24h&af_ip={{IP_ADDRESS_ESC}}&af_ua={{USER_AGENT_ESC}}&af_xplatform=true&af_xplatform_vt_lookback=72h
- Click Finish
- Universal Ads will automatically validate your URL and App IDs before saving.
- The impression tracking URL will automatically be appended to all creatives under the ad set it’s appended to.