English

App Tracking Transparency (ATT) framework

As per Apple's guidelines, starting with iOS 14.5, iPadOS 14.5, and tvOS 14.5, any app that collects end-user data and shares it with third parties for tracking or advertising-related purposes must use the AppTrackingTransparency (ATT) framework. This requires app publishers to obtain explicit consent from users to access their iOS advertising ID (IDFA).

If you do not implement the ATT framework:

❌ You will not be able to access IDFAs for devices running iOS 14.5 and later.
❌ Adjust is limited in attributing your users to SANs, except Apple Search Ads.

Here, you'll learn how ATT works and how you can get started with setting up ATT.

How it works

By default, a user is opted-out of tracking when the app launches. To gain user consent, the ATT framework presents an app-tracking authorization request to the user. The ATT request works on a per app basis, meaning that users can decide to opt-in for specific apps as they choose.

For users who opt-out of tracking, the IDFA returns a string of 0s. For users who opt-in, the IDFA is available and can be used for attribution purposes.

A user can choose to control privacy at the app level or even set Allow Apps to Request to Track to Off to block all apps from tracking them at a global level.

Note:
The ATT consent pop-up is displayed only if the user has set Allow Apps to Request to Track to On in the device settings.

If Allow Apps to Request to Track is changed during the app’s lifetime, this is what happens:

Changing "Allow Apps to Request to Track" to Off

Changing "Allow Apps to Request to Track" to On

How Adjust measures installs and in-app events

Adjust always relies on the ADID (Adjust Device ID) for measuring user’s activities within the app. The ADID is a hashed ID generated based on the device's IDFV (which is always available) and/or IDFA (whenever available). Because of this, when access to IDFA is limited, Adjust can still measure in-app activities with ADID by relying on the device's IDFV.

For opted-in users, Adjust uses the IDFA for attribution purposes. Without the IDFA, Adjust can use Probabilistic and SKAdNetwork Attributions as a fallback for or in parallel with IDFA-based attribution respectively.

Why does Apple allow retrieving the IDFV even if a user denies consent?

Deep links in ATT

Deep links are a fundamental way to improve user experience by taking users directly to the in-app content they want to see. After you implement the ATT framework, your deep links continue to work unless you use them as workarounds to ATT regulations.

A deferred deep link can send a user to a place in your app after routing them via the App Store to install the app first. Deferred deep linking might be limited for users that opt-out.

Get started with ATT

Adjust's solution for ATT makes it easier for you to present the app tracking authorization request to your users. If you do not want to use Adjust's solution, you need to manually add code in your app to request consent from your users.

Here are the key steps to getting started with the AppTrackingTransparency (ATT) framework:

  1. Set up ATT in the Adjust SDK - The Adjust SDK includes support for ATT and the ATT launch prompt. Ask your developer to set up ATT in the Adjust SDK.
  2. Submit privacy details to Apple - From iOS 14.5 and later, Apple needs information about how you intend to use your users' data. Upon updating or submitting the app in the App Store, your developers need to classify the data points that are being collected and their purpose. These details are available on the app's App Store product page.
  3. Launch the ATT consent prompt - Your users need to give consent for you to to be able to track them. Your developer needs to launch the ATT consent prompt to ask for consent.
Important:
Before you ask for users' consent, read this guide to learn how you can encourage users to allow you to track them.
  1. Receive ATT consent information in raw data exports - Use the {att_status} placeholder in your raw data exports to receive user consent status. If a user changes their consent, Adjust triggers the att_update activity type in your global callbacks.
  2. Review ATT settings in the dashboard - Verify that you have set up everything correctly by reviewing ATT settings in the Adjust dashboard.