English

SKAdNetwork

SKAdNetwork is Apple’s own attribution framework for app install and reinstall attribution without access to user-level data. This means that Apple performs attribution and notifies the relevant ad network, who then sends a postback with the data to Adjust. Adjust aggregates and reports the data from all your ad networks. 

The Adjust SDK has integrated support for the SKAdNetwork and is switched on by default. This means that Adjust automatically registers for SKAdNetwork attribution upon SDK initialization and can handle the conversion value update. You can choose to turn this functionality off.

You can set up SKAdNetwork conversion value management and event mapping in just a few steps in Adjust. Then, view your aggregated data in the Data Canvas or collect SKAdNetwork raw data to leverage and analyze for campaign optimization. For more information about these features, visit our dedicated guides.

Before you begin

Here’s what you need to know before getting started. 

SDK requirements

To use this feature, you first need to download and set up the Adjust SDK for your platform. Follow the instructions linked below to get started.

This feature requires Adjust SDK v4.23.0 and later.

⚙️ iOS / Unity / Cordova / Flutter / Titanium / Corona / Cocos2d-x / React Native

Once you have the Adjust SDK installed and configured, follow the guides linked below to use this feature:

📖 iOS / Unity / Cordova / Flutter / Titanium / Corona / Cocos2d-x / React Native

Adjust requirements

  • Admin, Editor, or Custom Editor permissions
  • Confirmation from your Technical Account Manager or a representative at support@adjust.com that your app has been internally validated for the SKAdNetwork 

Helpful information

  • You can set up SKAdNetwork on your own or with Adjust. When you work with Adjust, you can control everything from your Dashboard and do not need to update your app code to make changes. Your setup method will also determine how you view your conversion value data in Adjust. 
  • For access to the SKAdNetwork, ad networks must first be registered with Apple. Next, developers must ensure that their apps are compatible with Apple-registered networks and the SKAdNetwork framework.
Tip:
We recommend using the latest stable version of Xcode to build your app.

How it works

The SKAdNetwork leverages App Store download data to perform attribution. This means there is no device-level data tracked or shared, and that your SKAdNetwork data is separate to your Adjust-tracked data. 

After an install or reinstall, Apple lets you use conversion values to identify in-app events triggered by the user, such as completing a level or making a payment. 

The methods described below are Adjust's solutions to managing SKAdNetwork data and conversion values in order to optimize your campaigns.

What is a conversion value?

Updates to the conversion value

  1. When a user clicks an ad, downloads the app from the App store and opens the app for the first time, the Adjust SDK calls SKAdNetwork to register for attribution.

  2. If a specified event is triggered before that timer ends, the conversion value is updated to the value. The timer is then reset for another 24 hours.

  3. Once 24 hours pass with no conversion value update, another random timer of up to 24 hours starts. When it ends, Apple sends the final conversion value in a postback to the attributed ad network who then forwards this on to Adjust. 

Important:
SKAdNetwork attribution data is never shared in real-time. Due to the timer that is activated when a method is called, there will always be a minimum 24-hour period between an install and the postback to the attributed ad network.

Methods called

MethodDescription and instructions
registerAppForAdNetworkAttribution()Verifies the first launch of an app installed as a result of an ad.
updateConversionValue(_:)Updates the conversion value and verifies the first launch of an app installed as a result of an ad.

Receive SKAdNetwork data

Networks only receive one SKAdNetwork postback per user and it will include the final, highest conversion value. Be aware that only networks can receive SKAdNetwork postbacks, and these cannot be sent to Adjust or app publishers directly.

To find out more about what data Adjust receives from networks, read our article about SKAdNetwork partner integrations.

Manage SKAdNetwork without Adjust

If you choose to manage your SKAdNetwork settings yourself, be aware of the following points. 

  1. Your app developers need to call the SKAdNetwork registerAppForAdNetworkAttribution() method at app open 
  2. Developers should define what each conversion value means within the app
  3. Adjust only reports the conversion value as it is received from the ad network. This will be a value between 0 - 63 as found in the network payload. 

Example ad network payload: 

{
  "version" : "2.2",
  "ad-network-id" : "com.example",
  "campaign-id" : 42,
  "transaction-id" : "6aafb7a5-0170-41b5-bbe4-fe71dedf1e28",
  "app-id" : 525463029,
  "attribution-signature" : "MEYCIQDTuQ1Z4Tpy9D3aEKbxLl5J5iKiTumcqZikuY/AOD2U7QIhAJAaiAv89AoquHXJffcieEQXdWHpcV8ZgbKN0EwV9/sY",
  "redownload": true,
  "source-app-id": 1234567891,
  "fidelity-type": 1
  "conversion-value": 20
}