SKAdNetwork 3 basics

SKAdNetwork is Apple’s own attribution framework for app install and reinstall attribution. SKAdNetwork leverages App Store download data to perform attribution. This means there is no device-level data recorded or shared, and that your SKAdNetwork data is separate from your Adjust-recorded data. 

Apple performs attribution and notifies the relevant ad network with one SKAdNetwork postback per user that includes the final, highest conversion value. Networks then send a postback with the data to Adjust. Adjust aggregates and reports data from all your ad networks. To find out more about what data Adjust receives from networks, read our article about SKAdNetwork partner integrations.

How SKAN 3 works

  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. SKAdNetwork attribution windows are fixed and cannot be customized. You can find the SKAdNetwork attribution details, including attribution windows, in Apple's documentation.

  2. A timer is set for 24 hours. If a specified event is triggered before that timer ends, the conversion value is updated to the new 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 to Adjust. 

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.

Example postback

Attribution in SKAdNetwork 3.0

With this video, learn where SKAdNetwork 3.0 data is coming from and when you can expect to receive it. You will learn which parts you have control over, and which parts you don’t, especially when it comes to conversion values. Understanding this aids you in your SKAdNetwork 3.0 campaign planning, data analysis, and decision making.

Deep links in SKAdNetwork

Deep links improve user experience by taking users directly to the in-app content they want to see.

SKAdNetwork campaigns open the App Store page in a web view. This means that they could break deferred deep links, which direct existing users to your app and new users to the App Store.

After you implement SKAdNetwork, direct deep links work as expected but only for users who currently have your app installed. New users are not sent to the App Store to install your app.

Get started with SKAdNetwork

You can set up SKAdNetwork on your own or with Adjust. When you work with Adjust, you can control SKAdNetwork settings from your dashboard. If you do not want to use Adjust's solution, your developers need to register the app for SKAdNetwork attribution and implement conversion values in the app. For information, see Manage SKAdNetwork without Adjust.

You do not need to implement ATT to get started with SKAdNetwork.

Here are the key steps to getting started with the SKAdNetwork framework:

  1. Set up SKAdNetwork in the Adjust SDK - The Adjust SDK includes support for SKAdNetwork. Ask your developer to set up SKAdNetwork in the Adjust SDK.
  2. Verify App ID - Adjust needs to confirm your App ID to enable SKAdNetwork features for your app.
  3. Map conversion values and set a conversion value window - Conversions values give you an insight into how users are interacting with your app. They let you identify certain events, such as completing a level or making a payment, that you can use for optimization. Set an appropriate conversion value window to measure the data points that are most critical to you.
  4. (Optional) Check support for S2S events - Verify if you can measure conversion values for server-to-server recorded events.

Manage SKAdNetwork without Adjust

Adjust maps events to conversion values that you select in the Adjust dashboard. You can change the mapping at any time. If you do so, we change the conversion values (which are passed to SKAdNetwork) and update the conversion value implementation dynamically.

If you are managing SKAdNetwork without Adjust, you would need to create a similar system or implement conversion values directly in your app. If you implement the values directly, you would be required to update your app on the App Store each time you change the conversion value implementation.

If you choose to manage your SKAdNetwork settings yourself, note the following points:

  1. Your developers need to call the SKAdNetwork updatePostbackConversionValue(_:completionHandler:) method at app open. For more information, see Apple's documentation.
  2. Your developers need to define what each conversion value means within the app using the updatePostbackConversionValue(_:completionHandler:) method. For more information, see Apple's documentation.
  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.

If you are managing SKAdNetwork attribution without leveraging Adjust’s SDK, we can still receive SKAdNetwork postbacks, report the statistics on our dashboard, and allow you to export SKAdNetwork data.