Новости Mobio (EN)

Mobile App Attribution in iOS 14.5

The mobile ecosystem is constantly changing, making a clear shift towards a much stronger data security policy. The newest change was introduced with the release of iOS 14.5. According to Apple’s updated privacy policy, developers must get the end-user’s permission through the AppTrackingTransparency (ATT) framework for data that’s collected in their apps and used for tracking along with accessing the user’s IDFA value.

Why is the IDFA (Identifier for Advertisers) so important? Any MMP (Mobile Measurement Partner), such as Appsflyer, for instance, can easily connect the dots between an advertising campaign and a specific app by using the IDFA. Besides that, the IDFA plays a key role in managing remarketing campaigns, creating audiences, effectively managing targeting settings, etc. In short, it allows using all those mainstream tools that help boost conversion rates.

Image 1. ATT prompt

What’s really important is that from now on advertisers are allowed to use the IDFA only if the end-user provides a so-called double consent for the purpose of collecting and processing personally identifiable data. This is an opt-in user. An opt-out user, on the other hand, is someone who did not provide their explicit consent to either collecting or processing of their personal data and, therefore, did not allow advertisers to track app installations using the old-school deterministic method.

To sum up, here are some of the key trends we’re seeing after Apple’s recent privacy update:
  1. Full data processing transparency brought to iOS 14.5+ users.
  2. Advertisers can no longer apply the deterministic method to track opt-out users’ behavior, or take advantage of some of the other well-known mobile marketing tools.
  3. Non-targeted ads delivered to opt-out users and their low value can create a serious problem for those who made their bets on the classic advertising revenue model.
  4. Remarketing campaigns are losing their value, too.
  5. The audiences that consist only from opt-in users might not be enough for running successful lookalike campaigns.

How to Deal with Opt-out Users


Apple plans to remove the applications that access personally identifiable data without the end-user’s prior consent. As of today, Apple’s own SKAdNetwork appears to be the only legal tool that’s been on the market since 2018. However, it has never been popular among advertisers for a variety of reasons. We’ll break down its mechanism later on. Here are some of the key issues with SKAdNetwork:

  1. Although SKAdNetwork does allow you to connect advertising campaigns with app installations, there is not much data to work with (each ad network can receive a single postback per advertised app).
  2. The SKAdNetwork mechanism is quite complicated to understand.
  3. Advertisers are unable to manage attribution prompts.
  4. Conversion data is delivered with a serious delay (at least 24 hours).
  5. Classic ads, such as video and banner ads, are less favored than StoreKit-rendered ads and have lower attribution value.
  6. It’s extremely difficult to measure the effectiveness of a campaign if that campaign’s conversion goal is paid subscription, which doesn’t usually happen in the first 24 hours after the installation.
  7. SKAdNetwork functions without the need for ATT consent, which means that app download statistics for opt-in users can be inaccurate.
  8. Conversion data can be easily manipulated by the advertising networks, potentially increasing the risk of fraud.

In the wake of the deprecation of the IDFA, the probabilistic attribution model will play one of the key roles in mobile advertising. However, not all MMPs support this attribution model, because it is based on conversion probability and various non-ATT parameters, such as IP address, user agent, etc.

Besides that, the classic deterministic attribution model is here to stay no matter what. Advertisers should make use of any legal ways available to increase the number of users who provide their explicit consent to data collection and processing.

How to Boost Your Opt-in Rates


There are few tricks that can help increase your opt-in rates:

Image 2. You can customize the text within the frame.

  1. You can customize some of the text in the user consent prompt (see image 2).
  2. The consent dialog can be displayed just once. However, you are free to choose the exact moment when the dialog is being displayed to the end-user. With that, you can easily set the consent prompt to pop up when the end-user has already acquired some experience within the app.
  3. Use an introduction screen where you can fuel the end-user’s appetite and provide a clear and appealing description. For instance, you can explain that giving consent for the purpose of collecting personal data will help keep the application free, the collected data will be used to display more relevant ads and will not be shared with any third parties.
  4. Use a combination of any of these three methods (see image 3).

Image 3. Combination of different methods: first app experience, introduction screen, consent prompt.

There are, however, things that you cannot do. You can’t show any messages prior to the consent prompt that can mislead or confuse the end-user and prevent them from making a conscious choice. Here are a few examples:

Image 4. Forbidden tricks.

  1. You cannot “bribe” the end-user by offering bonuses or incentives for giving their consent. Besides that, you cannot apply any kinds of functionality or content restrictions with the purpose of forcing the end-user to allow tracking on their device (see image 4a).
  2. You cannot use an introduction screen that copies the ATT prompt. This includes the use of the Allow button or any other buttons with similar CTAs, because clicking any of these buttons does not, in fact, allow anything (see image 4b).
  3. You also cannot display a copy of the ATT dialog on the introduction screen or modify the ATT prompt in any unsolicited way (see image 4c).
  4. You can’t highlight the Allow button in the ATT prompt (see image 4d).

How SKAdNetwork Works


See image 5 to learn how SKAdNetwork works in a nutshell. Without getting into any technical details, its main operating principles can be described as follows:

Image 5. How SKAdNetwork works.

  1. The advertising network must be registered with Apple. The source app (App A) must be set up for use with this network (it’s required to specify the ID of the network).
  2. The advertising network sends the advertised app (App B) with cryptographically signed parameters to App A where it is delivered to the end-user’s screen. Starting from SKAdNetwork version 2.2, there are two available types of ads: StoreKit-rendered ads and View-through ads, both based on the fidelity-type parameter. For StoreKit-rendered ads, fidelity-type equals 1. For View-through ads, fidelity-type equals 0.
  3. The end-user installs and opens the app.
  4. Once the timers have fired, the application sends a single postback to the advertising network. In SKAdNetwork version 3.0 the source app sends up to 5 postbacks, each to a different advertising network (more on that below).

The postback received by the advertising network includes the campaign ID, however, it does not contain any personally identifiable information. The postback may also include conversion value. Apple iOS version 14.6+ supports SKAdNetwork 3.0 featuring the new did-win parameter which can equal to either 0 or 1. The latter represents a winning attribution, while the former, on the contrary, signifies a failed (or non-winning) attribution. The application will send up to 5 failed attribution postbacks, each to a different advertising network.

With StoreKit-rendered ads, an App Store product page is displayed for the ad impression. View-through are typically free format ads, such as video ads.

Whenever a specific ad is clicked on, it automatically results in a conversion, regardless of the ad type. The view attribute, however, is a whole different story. Let’s say two ads have been displayed on the end-user’s device. The first one has fidelity-type=1, while the other one has fidelity-type=0. After viewing these two ads, the end-user proceeds to install one of the applications. In the end, the ad with fidelity-type=1 will result in a conversion, regardless of the initial viewing order. 

Attribution windows look like this:


If the end-user does not open the downloaded app, the ad network will not receive any install-validation postbacks.

Install-validation Postback & Conversion Value


Here’s an example of the entire set of parameters included in the install-validation postback for a non-winning attribution (SKAdNetwork version 3.0, iOS 14.6+):


  "version": "3.0",
  "ad-network-id": "com.example",
  "campaign-id": 42,
  "transaction-id": "f9ac267a-a889-44ce-b5f7-0166d11461f0",
  "app-id": 525463029,
  "attribution-signature": "MEUCIQDYfConaAkeeGvAr6WAjBbY7LBX1z6ir/8T4jVYKJaMPQIgHC5jsV0lvlaWgFr7ON0VN4rmTTW9gZUzFoLkEn/g+g8=",
  "redownload": true,
  "fidelity-type": 1,
  "did-win": false
}

This postback does not include the conversion-value and source-app-id parameters.

Here are all the available SKAdNetwork parameters:


The conversion value is an optional parameter that is defined by 6 bits. The 6-bit value can be represented by 6 cells each of them carrying either 0 or 1:


Each of these combinations can be attributed to a single digit ranging from 0 to 63. In the example above, the combination equates to 23.

This parameter can be assigned to specific events within the source app, including purchase value (revenue), level achievement, etc. Given that the ad network can receive a single install-validation postback in versions below 3.0, you can get one conversion value within the postback. See image 6 below for more examples on how to use 6 bits:


  1. Basic approach. This method allows you to use all 6 bits to measure a single KPI, such as revenue (purchase summary before postback), or split up the bits to receive additional information, such as revenue plus level achievement.
  2. Advanced approach. This method allows you to use conversion values for predictive analysis. Let’s consider LTV (prediction of the net profit generated by the end-user) as an example. The end-user downloads and installs the source app, triggers specific events tracked by an analytics system (product analytics tools were not affected by the deprecation of the IDFA), which then analyzes the end-user behavior prior to receiving the install-validation postback and delivers an LTV prediction. After that, the result of this predictive analysis can be used as one of the conversion values included in the install-validation postback. Note, however, that this method requires advanced math skills and a well-structured event sequence within the app.

Below is another example of how you can benefit from splitting up bits to measure various KPIs. Let’s say, the first three bits indicate the revenue and the last three bits indicate the new level achievement in a game.




For instance, the install-validation postback returns the conversion value of 46, which equals to 101110 in binary. According to the table above, the end-user achieved level 25 and brought you $20 in revenue.

Postback Timers


Image 8 below illustrates how the SKAdNetwork postback timers work.


Opening the app triggers the 24-hour timer. The timer resets if there has been an increase in conversion value during these 24 hours. If there has been no increase in conversion value during the 24-hour period, the timer resets again and again until the conversion value finally increases. After that, the system sets a new timer with a random range anywhere between 0 and 24 hours. As soon as the random timer ends, the install-validation postback is sent to the advertising network. In SKAdNetwork version 3.0+, 5 non-winning postbacks are sent to 5 different advertising networks.

4 Steps to Take before Using SKAdNetwork


  1. Integrate the ATT consent prompt for iOS 14.5+ (you don’t have to ask for the end-user’s permission to collect and process their personal data on earlier versions of iOS – don’t forget to tweak the settings accordingly).
  2. Customize the consent dialog to boost opt-in rates.
  3. Update your MMP’s SDK (Appsflyer, Adjust, Kochava, Branch, Appmetrica). Brace yourself and be ready for regular updates in the future, because this is a whole new approach. The biggest benefit of using your MMP’s SDK is that it allows you to easily customize your conversion values directly from the dashboard, without a single line of code.
  4. Adjust the sequence of application events. This will allow you to apply predictive analytics and effectively measure the success of an ad campaign.

The last opportunity to launch retargeting at full capacity


With the release of iOS 14.5, the ability to work with IDFA is rapidly disappearing. You still have time to make a profit from your user base in 2021.

Retargeting is the most effective way to increase your mobile app revenue. Learn how to retarget in 2021 and adapt to the Cookieless changes in the market. Go to the feedback form >