Measuring ad performance with AdAttributionKit

AdAttributionKit lets advertisers measure the success of their advertising across multiple channels — all in a way that preserves user privacy. AdAttributionKit features enhanced attribution information and supports measurements for app-to-app-based campaigns, so advertisers can better optimize their efforts across more channels.

App AdAttributionKit overview

App AdAttributionKit lets registered advertising networks and developers attribute app installations and re-engagement to a particular campaign by receiving a signed signal from Apple. App AdAttributionKit supports multiple advertising formats, including static images, videos, audio, and interactive ads. This enables advertisers to verify how many installations came from an ad and measure which campaigns were most effective, without tracking individual users or devices across apps owned by other companies. App AdAttributionKit accomplishes this by limiting the data included in the attribution postback and builds on the functionality of SKAdNetwork.

App AdAttributionKit attributes installations based on clicks or views (in iOS 17.4 and iPadOS 17.4, or later). Click-through attribution occurs when someone clicks or taps an ad that goes to an app’s product page, and installs the app within 30 days. View-through attribution occurs when someone views an ad and installs the advertised app (without a link in the ad) within 24 hours of viewing the ad.

How postbacks work

When an app installation or re-engagement occurs (if they've opt-ed in) advertisers and developers can receive a postback within 24-48 hours of a user launching the app. A winning postback includes attribution information, including:

  • Advertised item ID. The advertised app’s identifier. Called app ID in SKAdNetwork.
  • Conversion type. Identifies whether the installation was a redownload. Advertisers can use this to evaluate the success of re-engagement campaigns. Called redownload information in SKAdNetwork.
  • Publisher item ID. The specific app where the advertisement was shown and from which an app installation occurred. This allows advertisers to identify which app should be credited with initiating the download. This value is conditional and only displays when privacy thresholds are met. Called source app ID in SKAdNetwork.
  • Source identifier. The source identifier the ad network provided when displaying the ad. Source identifiers contain information about the ad campaign.
  • Conversion values. Advertisers can configure conversion values based on their preferences, with each representing a different type of engagement. For example, they might configure three conversion values to capture when someone finished an onboarding tutorial, made an in-app purchase, or purchased a subscription. This information can be used alongside the publisher item ID and source identifier (when applicable) to understand the quality of the campaign. This value is conditional and only displays when crowd anonymity thresholds are met.

Receive multiple postbacks

Ad networks and developers may receive additional postbacks depending on whether conversion values are updated during the respective windows and the level of crowd anonymity. AdAttributionKit includes re-engagement information (in iOS 18 and iPadOS 18 or later) for click-through attribution, so you can measure when users open your app after they’ve downloaded it. When this occurs, you and the ad network receive up to three postbacks when a user taps an ad to open or redownload your app.

Q&A

How does Apple’s crowd anonymity function work?

Ad networks and developers will receive additional data in the attribution postback as more installations are attributed to an advertisement. Apple performs a real-time check for a particular download to determine the postback data tier and the level of information that will be included in the postback.

Learn about receiving postbacks in multiple conversion windows

Do I need to ask for the user’s permission to track them in order to use AdAttributionKit?

No. AdAttributionKit allows advertising networks to attribute app installations while preserving user privacy, so you don’t need to use the AppTrackingTransparency prompt. However, if your app includes any instances of tracking, you’ll need to receive the user’s permission through the AppTrackingTransparency framework to track them or access their device’s advertising identifier.

Learn more about user privacy and data use

What kind of conversion events does App AdAttributionKit support?

Up to 64 signals of user value can be shared with your advertising network on an AdAttributionKit install notification.

Learn about understanding AdAttributionKit and SKAdNetwork interoperability

What if the value for conversion-value or publisher item ID is null in a postback?

In order to maintain user privacy, conversion-value and source-app-id are conditional values that are only included in App AdAttributionKit postbacks when certain thresholds are met. In the absence of a conditional value, your network (or any advertising partner’s networks you work with) might represent the value as “null.”

Can I use multiple advertising networks for the purposes of App AdAttributionKit?

Yes. You can use multiple advertising networks as long as they are registered with AdAttributionKit. Contact your advertising networks of choice to understand whether they are integrated with AdAttributionKit.

How does App AdAttributionKit attribute app installs?

An app installation is attributed when a user launches the advertised app. If more than one advertisement was displayed to a user, the attribution goes to the ad most recently tapped by the user. If no ads were tapped, attribution goes to the ad most recently displayed to the user.

Learn about verifying an installation-validation post back

What does App AdAttributionKit do to minimize advertising fraud?

All transactions that are tied to an AdAttributionKit event are cryptographically signed and verified by Apple in order to prove the postback is attached to a known conversion event by Apple. The postback also includes a unique transaction ID (a unique identifier for a transaction such as a purchase or redownload) in order to detect replays of valid conversion events.

Can I use App AdAttributionKit in conjunction with fingerprinting?

No. You may not derive data from a device for the purpose of uniquely identifying it, per the Apple Developer Program License Agreement. Examples of user or device data include, but are not limited to: properties of a user’s web browser and its configuration, the user’s device and its configuration, the user’s location, or the user’s network connection. Apps that are found to be engaging in this practice, or that reference SDKs (including but not limited to Ad Networks, Attribution services, and Analytics) that are, may be rejected from the App Store.

Resources

Web AdAttributionKit

Apple supports Web AdAttributionKit for iOS and iPadOS apps, in addition to mobile websites. Advertising networks can measure the effectiveness of ad clicks within iOS or iPadOS apps that navigate to a website. This information can be used to understand which ads drive conversions (such as purchases or sign-ups) — while maintaining user privacy. Web AdAttributionKit accomplishes this by limiting the data included in attribution reports and builds on the functionality of Private Click Measurement.

Learn more

You can also use Web AdAttributionKit to measure any conversions that occur when someone taps an ad that directs to your website within an app in SFSafariViewController. Web AdAttributionKit is available on iOS 14.5, iPadOS 14.5, and Safari 15.4, or later.

Web AdAttributionKit includes:

  • Conversion fraud prevention via unlinkable tokens for triggering events on merchant websites.
  • Support for same-site conversion pixels on merchant websites, removing dependency on cross-site pixels.
  • The ability to measure links in nested, cross-site frames on publisher websites.

Resources