About self-reporting networks (SRNs)

At a glance: Self-reporting networks (SRNs), also known as self-attributing networks, communicate attributable events via API. SRNs don't use AppsFlyer attribution links.

blobid0.jpg verizonmedia.png
Google Marketing Platform  Apple Search Ads Google Ads Snapchat Facebook Tencent Social Ads Yahoo! Search Ads Verizon Media Twitter

Self-reporting networks

  • SRNs communicate events (like new installs and in-app events) to AppsFlyer via API.
  • Each SRN has a unique attribution policy and reporting method. This leads to differences in how and what SRNs report to AppsFlyer.
  • Non-SRNs (ad networks) report events using AppsFlyer attribution links. 
  • SRN user-level data use and retention restrictions. 

How do SRNs work?

Potential app users see and interact with multiple ads before they install an app. In general, attribution providers offer advertisers last-touch attribution—this attributes an install to the last click made before the actual install.

When an app is first launched:

  • AppsFlyer checks if, in the platform, the app is set to receive traffic from SRNs.
  • If yes, AppsFlyer uses the advertising ID (device ID) to query SRNs (API).
  • AppsFlyer performs attribution based on the returned results. 

Example A


Monday: Network A reports a user click.

Tuesday: Network B reports a video engagement.

Wednesday: Network C reports a click on a playable ad and, 30 minutes later, there is an install.

AppsFlyer attributes the install to Network C and gives Networks A and B credit for assisting with the install.

AppsFlyer gives advertisers assist data (unattributed engagements that occur before an install). This lets advertisers customize their multi-touch or fractional attribution models. See this short explanation.

Third-party attribution providers and SRNs

SRNs use a different attribution methodology. Their approach is as follows:

  • Use an API to communicate with attribution and measurement providers (instead of reporting on attribution links).
  • When attribution providers detect an install they query the network about an advertising ID.
  • SRN reports the details of any relevant ad clicks or impressions.
  • AppsFlyer uses its standard attribution logic to sequence the relevant impression and click data. 
  • AppsFlyer attribution is based on both last-touch and multi-touch methodologies.

Example B

This example continues Example A, above.


Network D (SRN) reports a click a few minutes before Network C.

Network C uses standard attribution integration.

AppsFlyer attributes the install to Network C as they had the last click. 

SRNs and attribution windows

Attribution windows include lookback and view-through. Some SRNs charge advertisers for an install based on Cost per Impression (CPM) and Cost per Action (CPA)—these are based on clicks or impressions that occur within a 1-28 day period.

AppsFlyer attributes install, activity, Effective Cost per Install (eCPI), and Effective Cost per Action (eCPA) based on an advertiser’s preferred attribution methodology and lookback windows.

Advertisers may have to pay for installs based on SRN attribution lookback windows and view-through models.

  • Advertisers expect the AppsFlyer third-party universal attribution methodology to optimize and allocate their ad spend.
  • Why? Because AppsFlyer reports actual eCPI and eCPA based on advertiser-defined terms.
  • SRNs may benefit in the short term as they often define their own payment terms. But, advertisers correct this by using third-party attribution providers.

Deep linking with SRNs

SRNs have their own proprietary methods for deep linking, which don't involve attribution links of external attribution services.
So how can you deep link your users and get the relevant data from SRNs?

Direct deep linking with SRNs

SRNs use their own methods to perform deep linking.
Unfortunately, this means that the onAppOpenAttribution method is NOT called when a user's device performs deep linking from an SRN.
Therefore, if there's a need for the direct deep linking data within the app, the app owner needs to use the SRN's methods to get it upon app launch.

Deferred deep linking with SRNs

In contrast, deferred deep linking with SRNs is possible.
AppsFlyer always receives the conversion data and makes it available to the app on the first launch.
New users that install after clicking on a deep linking/retargeting campaign on an SRN can be redirected within the app upon launch, by using the conversion data.

However, with SRNs, the regular AppsFlyer deep linking parameters, such as af_dp, are not present as part of the deep link data.
To use this data within the app, the developer needs to employ further logic based on available parameters, such as campaign, ad set or single ad names.


Jill, the mobile marketer of greatapp, decides to run a deep linking campaign on Facebook, targeted for general audiences.
The campaign redirects any clicking users to a "bonus" activity.
Jack, the mobile developer, adds this logic after getting the conversion data:
1. Is it Facebook originated ("is_fb=true")?
2. If true - get the value of the ad group parameter.
3. If the value contains the word "bonus" send the user to the "bonus" activity.
Using Facebook's methods existing users clicking the ad are redirected to the activity directly, while new users get the same experience using AppsFlyer's conversion data.

Alternately, if your app also includes the SRN's SDK, you may be able to directly fetch deep linking data from it, for example with Facebook.  


Why is the Original URL field empty in raw data reports?

Click is performed in the SRN environment but without an AppsFlyer attribution link. Therefore, the click's associated Original URL data is not available to AppsFlyer. 

Dashboard doesn't show SRN clicks and impressions

Click is performed in the SRN environment but without an AppsFlyer attribution link. Therefore, some SRNs don't give click and impression data to AppsFlyer.  

Facebook and Google give some aggregate data to AppsFlyer.

Set up a campaign with an agency and SRN

How does retargeting work with SRNs?

Retargeting clicks from non-SRNs are easily identifiable by the existence of the is_retargeting=true parameter in the retargeting attribution link.
With SRNs, there is no similar indication. Instead, to enable attributing re-engagements from SRNs, AppsFlyer uses another logic:

  1. Pre-requisites:
    - The Enable retargeting toggle in the App settings page is activated.
    - The SRN is enabled for retargeting in its AppsFlyer setup page.
  2. With every app launch, AppsFlyer queries the SRN about recent engagements of the device ID with campaign ads for the app.
  3. If the SRN responds back with engagement details, AppsFlyer validates the engagement is within the lookback window and beyond the minimum time between re-engagements.
  4. Validated engagements are recorded as re-engagements and attributed to the SRN. 

What is SRN mistargeting?

SRN campaigns should target a specific audience, but this doesn't always happen: Non-users in user-acquisition campaigns and existing users in retargeting campaigns. 

If one SRN is used to run both user acquisition and retargeting campaigns, this can lead to user mistargeting. As a result, you pay for unintended traffic.

Scenario: An SRN in the AppsFlyer platform is enabled for a user-acquisition campaign.

  • After each app launch, AppsFlyer queries the SRN to check if the advertising ID (user) had a recent engagement.
  • If yes,
    • SRN replies with the campaign name.
    • AppsFlyer determines if it was the first launch (or not) and attributes accordingly:
      First launch: A new install is attributed to the campaign.
      Second or later launch: A retargeting event is attributed to the campaign.

Conclusion: It is wasteful to get retargeting events from a user acquisition campaign.

Is mistargeting a problem?

AppsFlyer data analysts checked Facebook user acquisition campaigns during a given month.

  • Retargeting was enabled.
  • In 30% of campaigns, at least 15% of targeted users were existing app users.
  • In 5% of campaigns, at least 40% were existing app users.
  • Conclusion: In SRN user-acquisition campaigns, 1 in 10 targeted users are already an existing user. 


Solving the mistargeting problem

Basic solution: Don't include existing app users in a user acquisition campaign.

  • SRN will only target potential new users.
  • Maximizes new user acquisition results for the same budget.
  • Periodically (and manually) update the campaign, for example, once a month.
  • However, time gaps mean that existing users may be targeted in user-acquisition campaigns during the first month after they install an app.

Audiences, an AppsFlyer premium feature, lets you automatically send, on a daily basis, any segment of your user base to dozens of ad networks.

AppsFlyer research shows that solving mistargeting can have a dramatic impact on your marketing and user acquisition efforts.

Was this article helpful?