What is AdAttributionKit? Complete Guide for 2026

AdAttributionKit is Apple's privacy-preserving ad attribution framework for iOS, the successor to SKAdNetwork. Learn how postbacks, windows and values work.

How AdAttributionKit Works

AdAttributionKit is Apple's on-device attribution framework for iOS. It answers the same question as every attribution system, which ad drove this install, but it answers it inside Apple's privacy rules: no device identifiers leave the phone, results arrive in aggregate, and every report is delayed and signed by Apple.

The flow has three parties. The publisher app shows an ad and registers the impression with the framework using a signed impression payload from the ad network. The advertised app is installed and opened, then updates a conversion value as the user takes meaningful actions. Apple decides which impression wins, waits for the measurement window to close, adds a random delay, and sends a postback to the ad network. The advertiser can receive a copy of the same postback at an endpoint it controls, which is how an MMP sees the data.

Apple introduced AdAttributionKit with iOS 17.4 in 2024, alongside support for alternative app marketplaces in the EU. It is the framework Apple now extends with new attribution features, while SKAdNetwork stays in place for existing integrations. The two interoperate, so an ad registered through SKAdNetwork can still be credited for an install measured through AdAttributionKit.

What a Postback Contains

An AdAttributionKit postback is a signed JSON Web Signature that the receiver verifies with Apple's public key. Verifying the signature is the step that proves the postback really came from Apple and was not forged by a network or an intermediary.

The payload carries a hierarchical source identifier that the ad network uses to encode campaign, ad group or creative, a conversion value, the postback sequence index, and a flag that says whether this postback won attribution. Depending on how many installs the campaign drives, Apple may include a fine conversion value from 0 to 63, a coarse value of low, medium or high, or no value at all. The privacy threshold behind that decision is crowd anonymity.

Like SKAN 4, AdAttributionKit uses three conversion windows after install: days 0 to 2, days 3 to 7 and days 8 to 35. The first postback can carry a fine value. The second and third carry coarse values only. Each window ends, then Apple applies a random delay before sending, so data for the latest window can take more than a month to arrive in full.

Re-engagement and Newer Features

The biggest addition over SKAdNetwork is re-engagement. AdAttributionKit can attribute an app open to an ad when the user already has the app installed, for example after tapping an ad that opens a universal link into the app. Re-engagement postbacks are separate from install postbacks, so teams can measure retargeting on iOS without the IDFA.

Apple has kept adding to the framework in later iOS releases. Configurable attribution windows let an advertiser shorten how long an impression stays eligible, cooldown settings prevent rapid repeated attributions, and development postbacks let engineers test the full flow before a campaign goes live. Check Apple's AdAttributionKit documentation for the exact iOS version that introduced each option before relying on it, because ad networks adopt them on their own timelines.

Setting Up AdAttributionKit

On the advertiser side, setup comes down to three jobs:

  1. Declare the networks. Add the ad network identifiers you run with to your app's Info.plist, as each network's integration guide describes.
  2. Set a copy endpoint. Configure the endpoint that should receive postback copies, so your MMP can decode them alongside your other data.
  3. Update conversion values. Call the framework's update API as users complete the events in your conversion value mapping, and lock the value early if you want the postback sooner.

Ad networks handle the impression side: signing impressions, registering them through the publisher app, and receiving the winning postback. Not every network supports every AdAttributionKit feature yet, so confirm support with each partner before planning a re-engagement campaign around it.

AdAttributionKit in Linkrunner

Linkrunner treats AdAttributionKit as part of its SKAN measurement rather than a separate product. On iOS 17.4 and later, the Linkrunner iOS SDK writes conversion values through AdAttributionKit using the mapping you configure, with events, priority and revenue ranges turned into fine and coarse values for Google and Meta. Incoming AdAttributionKit postbacks are verified against Apple's keys, then shown with SKAN data in the SKAN dashboard by tier, conversion value and trend.

That means a growth team running iOS campaigns sees one view of privacy-safe installs, whichever framework Apple used to measure them, next to device-level mobile attribution for users who granted ATT consent.

Common Mistakes

The most common mistake is treating AdAttributionKit numbers as comparable to device-level installs on the same day. Postbacks arrive days to weeks later, and low-volume campaigns lose detail to privacy thresholds. Compare campaigns once their windows have closed, and read null values as missing data, not zero conversions.

The second is a conversion value mapping that never fires. If the events in the mapping happen after the first window closes, the fine value stays at zero. Map the events your users actually complete in the first 48 hours, and use the coarse values in later windows for slower signals such as subscriptions or repeat purchases.

Frequently asked questions

Start measuring the installs your team cares about

Bring attribution, deep links, SKAN, cohorts, and campaign intelligence into one workflow your growth team can trust.