Set up an integrated partner

At a glance: Enable attribution measurement and postback sending to partners by connecting AppsFlyer to your integrated partners.

Set up an ad network partner (non-SRN)

AppsFlyer integrates with ad network partners by API. This article contains the generic instructions to set and turn on partner integrations and to generate attribution links for ad networks (AKA non-SRNs).

  • This guide is not applicable to SRNs. Use the SRN explicit article. 
  • Some ad networks have dedicated articles.

Partner types in the ecosystem

The image that follows contains the different partner types that form the attribution ecosystem.

Ecosystem.jpg

Related reading: AppsFlyer Performance Index ranks mobile media sources by category and region.

Partner type  Description
Ad networks

Run campaigns on your behalf.

Agencies Use their expertise to get high-quality users by running campaigns on your behalf. You can have a transparent or non-transparent relationship. 
Marketing partners Marketing partners specialize in working with specific ad networks. Examples: Facebook marketing partners, Apple Search Ads marketing partners, Twitter official ads partners.
Retargeting networks Ad networks specializing in running retargeting campaigns 
Third-party platforms Provide BI-related services like analytics and marketing automation platforms.
TV attribution  Partners enabling more accurate attribution of new installs to aired TV ads.
Fraud detection  External third-party anti-fraud systems which are not part of the AppsFlyer Protect360 anti-fraud solution.
Integrated partner types

AppsFlyer partner list

The list of AppsFlyer integrated partners is available in the dashboard. Filter the list by partner name or other attributes as described in the section that follows.

To search the integrated partner list:

In AppsFlyer, go to Configuration > Integrated Partners. Filter and view using the controls in the dashboard.

Partner list display

IntgratedParntersSerach_us-en.png

Partner list display options
Option Description

A. Text search 

Enter text to search for a partner
B. Review and deactivate

If you have active partner integrations that have had no conversions in the previous 30 days, a warning displays. Deactivate these partners to prevent data privacy issues. 

C. Filters

  • All integrations - displays all available integrations according to the search text.
  • Active integration - displays active integrations. Active integrations are enabled for attribution, cost, ad revenue, or had at least one attribution link click in the last 7 days.
  • Apple Privacy: Advanced privacy and SKAdNewtork filter
  • Partner capability - display partners according to their capabilities:
      • All
      • View-through
      • Cost
      • Retargeting
      • Audiences
      • Ad revenue 
  • Data richness: display all, high, medium, or low data richness levels.
  • Partner type: display partners according to their type.

D. Partner capability

 

The partner supports ...

In the case of iOS apps use the Apple Privacy filter to select:

The partner is indicated as "Active" if at least one of the following capabilities is turned on:

  • Main integration
  • Cost
  • Ad revenue
  • Permissions

E. Data richness

Data richness

partner-data-richness-scores_en-US.png

  • AppsFlyer allows advertisers to collect a variety of data points. Networks differ in terms of the data points they provide. This impacts the ability of advertisers to analyze and optimize their campaign efforts.
  • To help advertisers choose wisely and for ad networks to grow and improve their product, an algorithm analyses the data types provided by ad networks and calculates a data richness score.
  • The algorithm considers data coverage, accuracy, and granularity.
  • The score values available are high, medium, low, and disabled.
  • The analysis is ongoing. When ad networks extend or reduce their capabilities and quality of provided data, their data richness score changes accordingly.

  • When the amount of conversions attributed to the network in the last 7 days is too small, the data richness indicator is dimmed. 

 Score components

mceclip0.png

Hover over the data richness badge to see the score components:

  • Campaign data: Like campaign ID, campaign name.
  • Ad & adset data: Like adset ID, adset name, ad ID, ad name, ad type.
  • Publisher data:
Like site ID, subsite ID, channel.

Related reading: Data richness score calculation for partners

Invite new partners to AppsFlyer

If the partner you are working with is not yet integrated with AppsFlyer, you can send them an invitation link. Note that:

  • Inviting partners can be done only through an Admin account.
  • This option is not available for zero-plan customers.

To invite a new partner to integrate with AppsFlyer:

  1. In the partner list, click Invite new partner.

    invite-new-partner.png

  2. Enter the partner's name and relevant email address.
    The partner will receive an email with a registration link to start the signup process.

Ad network settings

To open the integrated partner setup page:

  1. [Prerequisite] Contact the ad network and open an account with them. 
  2. In AppsFlyer, go to Configuration > Integrated Partners.
  3. Select the Integrated partner.
    The integrated partner page, described in the section that follows displays.  
    The page is arranged in tabs.
    Specific configuration details for each tab are detailed in this article. 

About the integrated partner page

The page is structured as follows:

  • Header containing:
    • Integrated partner name.
    • Link to request an introduction to the partner.
    • Link to a dedicated partner article. If no dedicated article exists, this article displays.
    • Partner capability badges.
  • Settings tabs: The tabs available depend on the partner type and capabilities.
  • Footer:
    • Back to list: Return to the Integrated Partners list using the filtering options selected previously.
    • Status message: Current status of the tab data (for example, saving, saved, error, there are unsaved changes).
    • Discard Changes: Undo the last changes without saving.
    • Save: Save the settings of the current tab only.
  • Before running campaigns with a newly added partner, test the integration.
  • Mistakes are most likely to occur during setup. Testing in advance avoids the risk of spending considerable resources, only to discover your attribution data is missing or wrong.
  • Make sure to first test the app for basic SDK integration for organic and non-organic installs

Partner setup page header

IntegratedPartnerHeader.png

Applicable settings tabs per partner type

  Settings tab  
Partner type Integration  Permissions Remarks
Media source Y Y

Additional tabs available: Cost, ad revenue, attribution link

Includes ad networks, affiliate networks, direct publishers, programmatic advertising, China domestic ad networks, and retargeting Networks.
For SRNs the attribution link tab is non-applicable.

Agency  N Y Stand-alone agencies that don't function as ad networks
Third-party Y N Analytics or marketing automation platforms
Marketing partner  Y N  
Setting tabs by partner type

Settings tabs

To complete the settings tabs:

  1. Go to the Integration tab. Complete the sections as necessary.
  2. For non-SRN ad networks, you must complete the Attribution link tab. 
  3. [Optional] Complete the remaining settings tabs (cost, ad revenue, web-campaign-to-app, and permissions as required.

Integration

Partner integrations differ in their requirements and can contain a subset of all possible options described in this section. There are some differences between iOS and Android settings.

integration_tab_en-us.png

Complete the sections as required. 

Integration tab sections
Key Section Description

A

Activate partner

  • Activate partner: Before sharing attribution links with a partner you must enable Activate partner and complete the remaining sections of the Integration tab. 
  • Don't use Activate partner to pause or turn off campaign attribution
  • Disabling partner integration can cause irreversible damage to active campaigns.
  • Learn more about partner activation and the impact of deactivating a partner.

To activate an integrated partner:

  1. In AppsFlyer, go to Configurations > Integrated Partners > Integration tab.
  2. Turn on Activate partner.
  3. Click Save Integration.
  4. [Optional] To allow the partner to view the data attributed to them, make sure to turn Ad network permissions in the Permissions tab.   

B

Data sharing settings

Data sharing settings control what data is shared with the partner via postbacks and reports.

For iOS apps, the following data sharing options apply:

C

General settings

Partner ID—Credentials

Some partners require credentials for AppsFlyer to integrate with them. Partners refer to this ID as app ID, account ID, user ID, or network ID. If this field displays, get the ID from the partner dashboard and enter it in the field.

Enable view-through attribution

If enabled, view-through installs sent by this partner are attributed.

  • For SRNs, this displays the view-through lookback window setting.
  • For non-SRNs, the setting is available in the attribution link tab, even if it's not enabled. In this case, AppsFlyer disregards any set value set. 

D

Default postbacks

If the partner integration is on, AppsFlyer sends default postbacks relating to user actions like installs, launches, re-engagements, and rejected events.

Rejected events are in-app events blocked by Protect360 or events found to be non-compliant by target validation. In the case of rejected events, confirm with the partner that they have enabled reject event integration with AppsFlyer.

To configure default postbacks for the partner, define the user source that postbacks are sent for:

  • Select the event source Only events attributed to this partner for partner attributed users only.
  • Select Events attributed to any partner or organic to have your entire user base reported to the partner.

Agencies, having permission, are limited to selecting Only events attributed to this partner for default postbacks.

E

In-app event postbacks 

Map AppsFlyer events with the partner via postbacks. If postback sending is enabled, this includes rejected in-app events (events blocked by Protect360 or events found to be non-compliant by target validation rules).

To configure in-app event postbacks: 

  1. Set the Partner ID (if required).
  2. Enable In-app event postbacks.
  3. Set the In-app event postback window, if required (read more about in-app event postback window configuration).
  4. If available, select whether to send events automatically or manually. Learn more about sending all events as they are.
  5. Click Add event to add an SDK or server-to-server event to the list.
  6. Complete the parameters required.
  7. [Optional] Click conditional-iae-postbacks-icon.png to set conditions for sending certain in-app events to the partner.
    Learn more about conditional in-app event postbacks
Parameter name Description
AppsFlyer event

The name of the event, as received by AppsFlyer either from the SDK integrated into your app or from server-to-server events.
Tip: Don't see the event you are looking for?

  • Make sure to activate the event on a device with a non-organic installation and recheck.
  • Type it in AppsFlyer event, then click Create custom. Read more about custom event mapping.
mapped to partner event

The unique name or ID of each event, as defined on the partner's side. Possible mapping configurations are:

  • Text field: Get the corresponding event ID from the partner.
  • Drop-down box: Select the most suitable pre-defined AppsFlyer event.
  • As is: Send the events as they are, without name mapping.
for users from

Select the sending option for the event:

  • This partner only: send postbacks only when this event is attributed to this partner.
  • All media sources including organic: send postbacks for events attributed to any partner, as well as organic events.
including
  • No data (default): send only the event itself without the event value.
  • Values and revenue: send all the event parameters, including the revenue value (if exists in the event).
  • Values without revenue: send all the parameters excluding the revenue value.

 Remarks: 

  • Events mapped in the Integration tab for a specific partner are applicable both for standard and SKAN postbacks.
  • The AppsFlyer event name can either be selected or typed in.
    Typed values are permitted to have underlined spaces (low dashes) before or after the name of the event. Use underlined spaces only if the event name being sent from AppsFlyer has the same underlined spaces.

  • Important: Event names are case-sensitive. To avoid discrepancies, make sure you use the correct event name for all media sources and app versions.
  • If the In-app event postbacks section doesn't exist in the Integration tab, it means that the partner has not yet set up in-app event recording with AppsFlyer in its preliminary configuration. The partner can contact the AppsFlyer partners team to finish the integration.

  • To prevent advertisers from sharing too much information with third-party Analytics platforms unintentionally, we have removed the Send all events option for Analytics platforms, as of March 2019. Analytic platforms configured before this, still retain this setup option.

Related reading: In-app event postbacks configuration.

F

Save integration

Click Save integration after making changes. 

Attribution link

Generate and save attribution links for the use of click (non-SRN) ad networks, and send the attribution link to the partner to attribute specific campaigns, ad sets, or single ads. Note! SRNs don't implement advertiser-generated attribution links so this tab is not relevant to SRN campaigns.

To generate an attribution link:

  1. Select either Use a single-platform link or Use OneLink.

    Select Use a single-platform link if any of the following apply:

    • You plan to use only URI schemes to open the app.
    • You don't need to deep link with the URL.

    Select Use OneLink if any of the following apply:

    • You want a single link for both Android and iOS apps.
    • You want to use Android App Links or iOS Universal Links to open the app.
    • You want deep linking capabilities.

    Note: Selecting OneLink changes the click recording link from app specific to a OneLink URL.

  2. If you selected Use OneLink

    1. Select which OneLink template you want to use to open the app (and potentially deep link).
    2. [Optional] Enter the Deep link value.
    3. [Optional] Enter the Additional deep link value.
  3. Add parameters for Android and iOS, as needed.
  4. [Optional] Select additional attribution parameters.

Attribution link parameters

attribution-link-parameters-en_us.png

Adding parameters to the attribution link enables you to perform thorough drill-down analyses. Parameters that are already defined on the attribution link can be edited by adding them and their new values here. When saving the attribution link, all the parameters configured in this tab are saved.

Select which parameters you want to add to the attribution link.

Attribution link parameters
Name Description Attribution link parameter
Campaign Required parameter.
Compare different campaigns running with the media source.
c
Adset Compare different ad sets within specific campaigns of the media source. af_adset
Ad Name Compare different creatives within specific ad sets within specific campaigns of the media source. af_ad
Site ID and Sub Site ID

Required parameter.

Set Site ID to attribute installs to specific publishers.

The site ID must be passed to AppsFlyer in the attribution link because it:

  • Provides clarity and transparency about the publisher
  • Is used by AppsFlyer to identify and eliminate fraudulent publishers, and other traffic clusters.

Note that a missing Site ID won't affect attribution. Learn more about Site ID parameter.

If there are many publishers, we advise limiting the number of used site IDs and using the subsite ID parameter, to avoid exceeding the site ID limitations.

af_siteid and af_sub_siteid
Subscriber Parameters Use any of the 5 subscriber parameters to insert useful values. Note that these parameters get parsed and appear in the raw data report, which makes them very handy for performing data aggregation or filtering. af_sub1, af_sub2, af_sub3, af_sub4, af_sub5

You can add other parameters to the attribution link by typing it in a new parameter box. You can use all AppsFlyer available URL parameters. Note that only URI scheme and OneLink parameters are encoded on the attribution link.

Retargeting settings

When retargeting is on: AppsFlyer recognizes a link as a retargeting attribution link, rather than a user acquisition link, by adding the &is_retargeting=true to the attribution link.
Attribution link parameter: is_retargeting

To use your link for retargeting:

  1. Turn on Retargeting settings.

  2. [Optional] Enter a URI scheme if you want a URI scheme to open the app.
    Note:
    • URI schemes are recommended as a fallback method to open the app if Universal Links or App Links fail.
    • If you add a URI scheme here, it overrides any other URI schemes already in your OneLink template settings.
    • URI scheme is added to the link in the af_dp parameter.
  3. [Optional] Turn on Ignore active users for retargeting.
  4. Set the inactive window to determine which users are considered active and inactive.
  5. Set the re-engagement window to determine the time period following the re-engagement, where the user's in-app events are attributed to the retargeting media source.

    • You can set the value in days (1-90), hours (up to 23), or even lifetime.
    • The re-engagement window is added to the link in the af_reengagement_window parameter.

Click-through attribution

Use the setting to set the maximum time from click to install. Only installs (first launches) that take place within the lookback window are attributed.

Permitted range: 1-23 hours or 1-30 days.

Attribution link parameter: af_click_lookback

Learn more about click lookback window.

Click attribution link

click-through-attribution-link_en-us.png

This is the attribution link that contains all the setup information you have set for it. You can save the link for future reference by clicking Save attribution link.

To copy the click attribution link:

  1. Click Save attribution link.
  2. Copy the generated link.

Send the link to the partner to be activated when your leads click on a corresponding ad.

View-through attribution lookback window

Set the maximum time from impression to install. Only installs (first launches) that take place within this lookback window, following an ad impression, are attributed to the partner, providing there was no other relevant ad click.

You can customize this value to 1-24 hours.

Attribution link parameter: af_viewthrough_lookback

Learn more about view-through attribution.

Impressions attribution link

impressions-attribution-link_en-us.png

The impression attribution link contains similar attribution data to the click recording link (besides the different lookback window). You can save the link for future reference by clicking Save attribution link.

Click Save attribution link and then copy the generated link.

To copy the impressions attribution link:

  1. Click Save attribution link.
  2. Copy the generated link.

Send it to the partner to be activated when a corresponding ad is watched, usually for 1 second or more.

Cost

  • Cost data is reported by integrated partners on the click or by Cost API.
  • The best practice is to implement Cost API.
  • Cost API includes clicks and impressions reports. See the ad network cost integration table for full details on the supported dimensions, metrics, and features.

 Note

If an advertiser uses an agency to run their campaigns, the agency, and not the advertiser, should integrate with the relevant partners. Otherwise, if both the advertiser and agency integrate with a partner using the same credentials for the same app, cost data is duplicated.

Enabling cost data by API

To enable the cost API:

Cost data sync status

View your cost API status and the last time AppsFlyer managed to pull matching cost data in either the cost (and ad revenue) integration status dashboard, or in the individual ad network dashboard.

Ad revenue

If you act as a publisher displaying ads in your app, the ad revenue function enables you to attribute ad revenue to the media source that brought the user. About ad revenue attribution. 

Enable ad revenue attribution

  1. Check to see which method, aggregate or user-level attribution, the partner supports.
  2. Follow the appropriate method in the ad revenue integration guide. 

Ad revenue API status messages

Status Remarks/action required
Active The connection is live and pulling data.
No data found to pull. The connection was successful. The partner did not have any data related to this app.
Partner API not responding. Contact AppsFlyer support. The partner's server is not responding to AppsFlyer.
Invalid credentials. Enter updated credentials.  
Something went wrong. Contact AppsFlyer support. There is a technical problem.
Partner data not yet ready. If the problem persists, contact AppsFlyer support.  
Data is being processed and will be available soon. We are currently processing the data received from the partner. The data will be available in the dashboards and reports.
Data was never successfully pulled If this status persists for a further hour contact AppsFlyer support. 

Permissions

  • Enable the partner to perform various actions and to access your data according to the available permissions.
  • You don't have to have attribution integration enabled with a partner to grant them permissions. 
  • Ad network set up by an agency: When partner setup is performed by an agency, the advertiser can view neither the ad network activation status nor the permissions granted. 
  • If your relationship with the partner is as an agency only, disregard the Ad Network Permissions section and set the Agency Permissions section.

Ad network permissions

To grant permissions to an ad network:

  1. Enable Ad Network Permissions.
    • The app appears on the ad network's dashboard.
    • Permissions are granted only to the specified ad network.
    • The ad network admin can see basic data about the app.
  2. Grant permissions to ad network team members:
    • [Default] The ad network admin has access to your app by default.
    • To grant specific team members permissions, you need to add them using their email addresses.
      To add a team member:
      1. Click Add team member.
      2. Enter the email of the ad network team member.
      3. Click Add.
  3. Select additional permissions to grant to the ad network:

    Allow the partner to ...

    Capability granted. The partner can ...

    Configure integration

    Change integration parameters

    Configure in-app event postbacks

    • Create, define, and change postbacks settings.
    • Caution! When this permission and Allow to configure integration are enabled simultaneously: the ad network has access to all attribution events. This includes organic traffic and non-organic traffic from all media sources. 

    Access retention report

    Access the app retention report.

    They will see only data that relates to their sessions.

    Access aggregate loyal users data

    Access their own loyal users metric. 

    Access aggregate conversions data

    Access their aggregate conversion events metrics. This includes installs, re-engagements, re-installs, and re-attributions. Example: Aggregated campaign performance for ad networks report

    Access aggregate in-app events data

    • Access to in-app event data (the partner has access to all in-app events data, including Protect360 in-app events data, not only to the events mapped in the postback configuration).
    • Access ad monetization data which may include ad monetization events from other media sources.

    Access aggregate revenue data

    • Access in-app and ad revenue data attributed to users brought by the ad network. Note: This permission does not directly identify the ad revenue partner. However, if you have set the monetization event name to include the partner name, you may inadvertently disclose the identity of the monetization network.

    Use ad spend ingestion

    • Access the Ad Spend Ingestion window.
    • The Ad Spend Ingestion window displays only the apps they have permission for.
    • Send ad spend files for ingestion. 

    Access Protect360 dashboard & raw data

    • Access their Protect360 dashboard (including ProtectLITE).
    • Access raw data if you subscribe to one of the following: Protect 360, Validation rules, or raw data. ProtectLITE doesn't include access to raw data.

    Access ad revenue raw data

    Access their ad revenue data to use for UA optimization. 

    View validation rules

    View validation rule details.

Agency permissions

  • When you grant permission to agencies, they can grant permission to manage your apps to the ad networks they work with. It’s the same as granting permissions to ad networks.
  • If you work with an ad network, and your agency also works with this ad network, both of you can edit the ad network team members' permission to view the app’s dashboard.
  • If you see new ad network team members or missing team members that you didn’t add or remove, it’s possible that your agency added or removed them.
  • Caution: Agency installs occurring while the control is disabled are not attributed to the agency and don't show up on the agency's dashboard and data. Learn more about agency activation.

To grant permissions to an agency:

  1. Enable Agency permissions.
  2. Select the permissions to grant to the agency:
    Allow the agency to... Capability granted. The agency can...
    Change Advanced Privacy configuration Allow the agency to change an ad network's Advanced Privacy data sharing setting. 
    Access Protect360 dashboard & raw data
    • The agency can access your Protect360 dashboard.
    • Can access raw data if you subscribe to one of the following: Protect 360, Validation rules, or raw data.
    • Can view and add rules with Protect360 conditions.
    • For advertisers that work with ad networks through an agency, in order for both the ad network and agency to access data, the advertiser must integrate both the agency and ad network in AppsFlyer, and grant them both permission to access data.

      If only the agency is integrated and granted permission, the ad network does not have access to the data.

    Access retention and cohort reports Retention/cohort data created by the users brought by the agency only.
    Access aggregate organic data  
    Access raw-data reports Get raw data reports relating to traffic attributed to the agency. 

    Configure in-app event postbacks

    Permit the agency to set up in-app event postbacks mapping to itself on the integration tab. Add at least one event.

    • Events Sharing Permissions: 
      • This partner only: send only events from the agency's own brought traffic to the app.
      • All media sources, including organic: send events from all sources of your traffic, including other media sources, agencies, and organic users.
    • Allow to send event revenue: Enable to permit the agency to send events including their monetary value.
    • AppsFlyer event: Click Add event and pick the event from the drop-down menu.
      Make sure to select specific events you want to grant the agency permission to.

    View validation rules

    View validation rule details.

    Add validation rules

    Add and edit validation rules. Note: Agencies can't edit rules created by advertisers.

Learn more about working with agencies.

Test the integration

After integrating with an AppsFlyer partner, verify that the integration works properly according to the type of the partner.

Non-SRN ad network testing

Regular ad networks, which consist of 99.5% of integrated ad networks, use AppsFlyer attribution links. Similarly for owned media attribution, which is performed by using AppsFlyer custom attribution links.

Since correct attribution depends on the parameters on the attribution links, perform tests before you start to run a campaign with a non-SRN ad network or a custom attribution link.

To test attribution links:

  1. Create an attribution link.
  2. Send the new attribution link to your registered test device (via email or QR code).
  3. Click on the link, make sure you are redirected to the app store.
  4. Install the app.
  5. Launch the app.
  6. Check if the install appears in the AppsFlyer dashboard under the partner's media source name. Allow up to 30 minutes for the install to appear in the dashboard.
  7. Drill down to the campaign level (by selecting the partner in the Media source filter on the top of the overview page) to check the install appears under the correct campaign name.
  8. If necessary, continue to drill down and check the ad set and single ad levels too.

SRN testing

SRNs such as Facebook, Apple Search Ads, and Google Ads don't rely on external attribution links for attribution purposes. Instead, SRNs receive queries from AppsFlyer, attribute themselves, and return the answer. Therefore, it is not feasible to test the integration separately from the network's system as with regular ad networks. You must separately test the integration with each SRN you work with.

To test SRN integration:

  1. Perform the full SRN setup on AppsFlyer in accordance with the specific partner's setup guide: Facebook, Google Ads, Twitter, Apple Search Ads, Snapchat.
  2. Run a new low-budget campaign with the SRN partner.
  3. When the partner dashboard displays new installs check if they appear in the AppsFlyer dashboard under the partner's media source name.
  4. In the Overview dashboard, drill down to the campaign level, by selecting the partner in the Media Source Filter, to check that the install appears under the correct campaign name. Allow up to 30 minutes for the install to appear in the dashboard.
  5. If necessary, continue to drill down to check the adset and single ad levels.

If all is well you can start running new high-budget campaigns with the partner. It is sufficient to test integration once per SRN partner. Meaning, there's no need to test on a per campaign basis.

Raw data testing

If your subscription plan with AppsFlyer includes access to raw data, you should test raw data.

To test raw data:

  1. After performing the test mentioned previously, go to ReportsExport Data.
  2. Select the tested media source.
  3. Allow up to 15 minutes from the install and then download the Installs report.
  4. Check the install records from the partner exist and include parameters such as the media source, campaign name, touch time and type, device ID (if applicable), agency name (called "Partner" in the report), and so on.

 Important!

Some ad networks require special actions to enable the collection of raw user-level data.

If you see a new install on the dashboard but don't see it in the raw data, consult the specific Help Center guide for the ad network, for example - Twitter.

Was this article helpful?