1. What is SKAdNetwork?

It’s been over a year since Apple introduced new privacy-friendly changes to ensure accurate attribution and measurement. There are now two attributions and admeasurement approaches available on iOS: the ATT framework and SKAdNetwork, which manage access to IDFA with user consent.

First, the ATT (App Tracking Transparency) framework was introduced, which asked users if they wanted to allow customization of apps on their phones for ads. If the user allows customization of their applications, these users can be attributed as before the IDFA was removed. However, if Limit Ad Tracking (LAT) is enabled, targeted ads will not be shown to users.

At this point, SKAdNetwork comes into play. Working with SKAdNetwork is crucial, allowing advertisers to measure the success of their ad campaigns while protecting user privacy.

Photo by Apple Documentation

2. How Does SKAdNetwork Work?

First of all, ad networks must first register with Apple to use the SKAdNetwork API. Also required to sign each ad. According to Apple’s documentation, the SKAdNetwork API framework contains three entities for attribution:

1. Ad networks; sign the ad and get install-validation postbacks after the ads result in a conversion. That is, they report app installs and conversions.

2. Source Apps; where ads provided by ad networks are displayed.

3. Advertised apps; it is simply the advertised app in signed ads.

Based on Apple’s documentation, we see the conversion tracking process in the diagram below.

Photo by Apple Documentation
Photo by Apple Documentation

3. SKAdNetwork’s Flow?

1. First, Ad Networks attacted a “signature” to every ad application.

2. Ad Networks calls the loadProduct() method.

3. The user clicks on the ‘advertised app’ and is directed to the App Store.

4. If the user installs and launches the app, the ‘advertised app’ calls the method that provides the information for attribution and conversion tracking; is ‘updatePostbackConversionValue(_:completionHandler:)’

Note: The ‘registerAppForAdNetworkAttribution()’ and ‘updateConversionValue(_:)’ methods have been updated to the ‘updatePostbackConversionValue(_:completionHandler:)’ method.

5. The timer is set to 24 hours and the 24-hour postback timer starts.

6. Apple provides a postback provided by the ad network if there is a ‘successful app install’ or ‘conversion’. Returns are sent one day after “Install”.

Note: Instant and fast campaign optimization is limited as postbacks are delayed for at least 24 hours.

4. Conversion Value

Conversion Value; It is a 6-bit value by which you can recognize from 0 to 64 different post-installation events that occur in the ‘advertised application.’

If user post-install activity has occurred, these events are measured by conversion values. A six-bit value, a number between 0 and 63 (or between 000000 and 11111 in binary), can be mapped to each user’s post-install activities to monitor a user’s interaction.

You can name each of these values ​​usefully for your application by pre-determining the most important KPIs for your application.

There are 64 possible conversion values generated by turning six bits on and off. These 64 values may not give you detailed information about the user, but they will help you determine the value of the user which is critically important. The conversion value of 0 is reported as 000000, 63 is 111111 = 63.

5. Make the Best Use of Bits

CV 0 is always mapped to install.

5.1 Simple Model:

Imagine you have a game that you developed, and you specify a single in-app event that you want to learn. You can get a result between 0–63. For example, you wanted to know the level of the players; when your player unlocks the 12th level, you can see your conversion value will be 12.

However, if your game has 100 levels, the conversion value cannot offer you more than 63. So if you insist on specifying a single in-app event, our recommendation would be to set specific intervals. This way, you can define the conversion value as 1 between levels 0–20 and get it as 2 between levels 20–40. So you will be aware of your players who unlock all levels.

We are sure that you will be delighted to estimate the player’s lifetime value.

You can estimate the player’s lifetime value by setting the best 64 bits you have. Determining a single piece of information is not enough for you to make such an estimation. For this, you need to set up more advanced strategies. At this point, AppNava will be your savior. By contacting us, you can understand how to create the best strategy that will work for you.

5.2 Advanced Model:

Either divide the 6 bits into two and set the first half as income and the other half as level or assign different in-app events to each of the 6 bits. This way, you will benefit from multiple metrics and understand the value of your player.

5.3 Predicting a Player’s Lifetime Value with Conversion Value Bits:

LTV provides a continuous prediction of how much a particular player can spend on your game. At this point, you should be working with 0–63 SKAdNetwork values. It’s critical for marketers and developers to create conversion value schemes based on LTV. You can make an LTV–CV template and predict the approximate ad campaign revenue and in-app purchases.

The solution we have at AppNava uses machine learning to predict a user’s future behavior and this AI model measures each user’s LTV using SKAdNetwork transformations from Apple.

The following flow shows how conversion values are calculated in AppNava. In this stream, players’ in-game events are tracked after downloading the game, giving an idea of the player’s value. We hope this Medium story gives you an idea and then your game will be filled with dolphins, sharks, and even whales.

AppNava divides your players into segments and matches them with bits, then converts them to conversion values. In this way, you can measure the performance of your marketing & user acquisition campaigns.

It’s a great opportunity for a game developer to understand from the start whether the player will be permanent or not. As you can see, AppNava proves with their help that it’s not just luck.

6. iOS 15 Update: Adding an Additional Endpoint

When a successful conversion occurred, and the attribution was finished, Apple sent their feedback to the ad networks. The ad network then forwarded the postbacks to advertisers or Mobile measurement partners (MMPs). Now the advertiser will get the data directly from the source. This innovation is better than previous updates.

Application developers will be able to define an endpoint that will receive a copy of all winning SKAdNetwork postbacks.

This is pretty easy to do with AppNava. Advertiser app calls to the SKAdNetwork with AppNava’s Endpoint, providing code-free implementation of SKAdNetwork for your iOS apps. You can see the process by visiting AppNava’s website.

7. SKAdNetwork Solution Plan with AppNava

Thanks to Apple’s newest iOS 15 update and SKAdNetwork, you can set new endpoints with AppNava and maximize your marketing performance.

The graphic below illustrates how AppNava as your endpoint would integrate into the SKAdNetwork flow.

More specifically, AppNava will take care of the following:

  • The SKAdNetwork data efficiency to be able to make the best-informed advertising decisions. Appnava translates the postbacks and conversion values to show records on the dashboard.
  • Setting up the API and DB infrastructure, guaranteeing a smooth data flow (full support to the development team).
  • Returning and validating the conversion value (LTV) within up to 24 hours (AppNava AI model measures the LTV of each user).

As AppNava, we want to make the iOS15 and SKAdNetwork integration process easier for you in marketing and user acquisition. It would be our pleasure to help you. Whether you click the link here and set up a meeting with the AppNava team, or sign up for AppNava and witness the rapid development of your game.

Special thanks to @EceSanan from the AppNava team for this article.