SKAdNetwork is the interface Apple built so an advertising network can learn an app install came from one of its ads without learning anything about the person who installed it. The name contracts StoreKit Ad Network, after the Apple framework handling App Store transactions inside apps. It replaces the ordinary mechanics of mobile attribution, in which a click and an app launch are matched through a shared device identifier, with a signed message sent from the operating system to the network after a delay, carrying a few numbers and nothing that identifies a device.

It exists because the alternative depended on an identifier Apple switched off by default. The Identifier for Advertisers, or IDFA, let a network and an advertiser agree they were looking at the same phone. Once App Tracking Transparency made access conditional on an explicit prompt, the matching step stopped working for most iOS traffic, and the substitute had to come from the operating system itself.

The three participants and the postback

Apple's documentation names three roles. The ad network registers with Apple, takes an identifier ending in .skadnetwork, and signs each ad it serves. The source app is the publisher app displaying that ad, listing the network identifiers it accepts in an SKAdNetworkItems array inside its Info.plist file. The advertised app is the app being promoted, which calls a conversion API on first launch and afterwards.

The network signs an impression containing the advertised app's identifier, a campaign or source identifier, a nonce and a timestamp, and the publisher app presents that payload to StoreKit. If the user taps through and installs, the operating system holds the attribution. When the installed app first launches it calls updatePostbackConversionValue, starting a timer; on expiry, Apple sends a signed postback to the URL the network registered.

Attribution is decided on the device, not by the network. Apple considers a maximum of six impressions per conversion, sorts click-through ahead of view-through and then by recency, and gives the win to one. From version 3 onward, up to five losing networks each receive a postback carrying did-win set to false, telling a bidder its impression qualified but lost. Click-through attribution requires the install within 30 days, view-through within 24 hours.

Conversion values and crowd anonymity

The advertised app cannot report what a user did, only a number. The fine conversion value is six bits, an integer from 0 to 63, and the mapping from those 64 states to real events is set by the advertiser: 12 might mean a completed tutorial, 40 a subscription. Version 4 added a coarse value with three states: low, medium and high.

Which of those a network receives depends on crowd anonymity, Apple's term for the volume test governing postback contents. Each download is assigned a tier from 0 to 3, based on the crowd size around the publisher app, the advertised app, the install country and the source identifier. Tier 3 returns the full four-digit source identifier, the fine value, the source app identifier and, where the country crowd also clears Tier 3, a country code. Tier 2 drops the country code and source app identifier. Tier 1 leaves two digits of the source identifier and substitutes the coarse value. Tier 0 returns two digits and no conversion value at all, and no second or third postback.

Version 4 also split one postback into three. The conversion windows cover days 0 to 2, 3 to 7 and 8 to 35 after first launch, and only the first is eligible for a fine value. Postbacks arrive after a randomised delay of 24 to 48 hours for the first window and 24 to 144 hours for the others. A lockWindow parameter lets an app finalise a value early, though the delay still runs from the lock.

Where it sits in the programmatic chain

For mediated and programmatic buying, the IAB Tech Lab published an OpenRTB community extension on 16 September 2020, sponsored by MoPub, Chartboost, PubMatic, Digital Turbine and Magnite. It defines BidRequest.imp.ext.skadn, in which the supply side declares the versions supported, the publisher app's store identifier and the network identifiers in the app's configuration. A bidder returns BidResponse.seatbid.bid.ext.skadn with the version, its own network identifier, the source identifier and a fidelities array holding separate signatures for click and view. A malformed extension can be rejected with loss reason code 214.

The same specification carries device.ext.atts, an integer from 0 to 3 expressing tracking authorisation status, telling a demand-side platform before bidding whether an IDFA is available. As of August 2026 the extension covers versions 2.0 to 4.0 and has not been updated for Apple's newer framework.

Origin and evolution

SKAdNetwork shipped quietly with iOS 11.3 in March 2018, according to Apple's availability data, and drew little attention for two years because the IDFA still worked. PPC Land's 2022 primer dates the launch to March 2018; more recent PPC Land reporting places it in January 2018, a discrepancy that appears to reflect the beta cycle rather than a substantive disagreement.

Version 2 arrived with iOS 14 in 2020 and gave the API a version field. Version 2.2, in iOS 14.5, added view-through attribution and the fidelity types the OpenRTB extension had to carry; version 3, in iOS 14.6, added losing-impression postbacks. The framework's commercial significance dates from 26 April 2021, when Apple released App Tracking Transparency with iOS 14.5 and made SKAdNetwork the only attribution path that works without consent.

Version 4 followed with iOS 16.1 in October 2022, introducing crowd anonymity tiers, the hierarchical source identifier, coarse values, three conversion windows and attribution for web ads. Apple teased a version 5 at WWDC 2023 adding re-engagement measurement. It never shipped. Instead, at WWDC 2024 Apple introduced AdAttributionKit, a separate framework covering the App Store and the alternative marketplaces the EU's Digital Markets Act obliged Apple to permit. Updates in June 2025 added configurable attribution windows, cooldowns, overlapping re-engagement windows and a country code field in postbacks.

Why it matters, and how far it got

Adoption has lagged the specification. Singular's tracking put network adoption of version 4 at 43% in February 2024, sixteen months after release, with Reddit at 98% of postbacks and The Trade Desk at 87%. Meta reached 52% in July 2023, fell back to single digits after a conversion value reset bug, and was still activating version 4 account by account in June 2025 through a manual toggle in Events Manager. TikTok had published its version 4 support in March 2024, raising quotas to 15 campaigns and five ad groups each from 11 and two under version 3, and Reddit had shipped version 4 in December 2023.

Survey data published by Kochava Foundry in June 2026 suggests the framework never became the default it was designed to be. Of the iOS marketers polled, 33% had not implemented SKAdNetwork at all and 11% called themselves fully implemented and actively optimising; 67% had encountered reporting gaps traceable to privacy thresholds. Kochava's platform data put SKAdNetwork at 11% of iOS attributions in mid-2026, against 36% for Apple Ads. These are single-vendor figures from one provider's client base.

Many buyers routed around the delay instead. TikTok added real-time iOS conversion reporting through Kochava on 21 October 2025, supplying modelled conversions outside the postback system, and Reddit launched Dual Attribution in May 2026, showing postback and partner data together.

Limitations and disputes

The structural complaints are consistent. Six bits cannot express lifetime value. Postbacks arrive too late to optimise a bid. Nothing ties three postbacks from one install together at user level, so cohort analysis breaks. At Tier 0 a campaign returns two digits and nothing else, penalising small advertisers, tightly targeted campaigns and any market too small to generate crowd volume.

Apple's own placements sit outside those constraints, reporting through the separate AdServices API. Regulators have pursued the asymmetry: France's Autorité de la concurrence fined Apple EUR 150 million in March 2025, Italy followed with EUR 98.6 million, and Germany's Bundeskartellamt has set a four-month deadline to redesign the consent prompt. Apple Ads began registering with AdAttributionKit on 10 April 2025, narrowing the gap without closing it.

One factual dispute is worth flagging. Several PPC Land articles describe SKAdNetwork as rebranded AdAttributionKit in 2025. Apple's documentation treats them as two frameworks. SKAdNetwork remains a documented StoreKit class with its own release notes and conversion APIs; AdAttributionKit is separate, recommended by Apple for App Store and marketplace campaigns, with a published interoperability model under which network identifiers work across both and SKAdNetwork calls are mirrored into AdAttributionKit. Apple has announced no deprecation date.

Disambiguation

App Tracking Transparency is the consent prompt governing IDFA access, not an attribution system. SKAdNetwork works regardless of the answer given to it.

AdAttributionKit is the successor framework, adding re-engagement, alternative marketplaces, configurable windows and country codes on the same privacy model.

AdServices is the API through which Apple Ads campaigns report performance, outside the postback system.

Mobile measurement partners such as AppsFlyer, Adjust, Singular and Kochava sit outside the framework. They receive postback copies, manage conversion value mappings and reconcile the output against other signals.

Recent developments

WWDC 2026, held in June, passed without changes to either framework, leaving attribution mechanics unchanged going into the iOS 27 cycle. The infrastructure around measurement moved instead. Google, Meta, Moloco and Unity took stakes in AppsFlyer in June 2026, and Apple Ads kept climbing, entering the top tier of Singular's 2026 ROI Index in April. A four-year study of App Tracking Transparency, covered by PPC Land in July 2026, found the prompt shifted almost no developers to paid downloads and changed instead what data they collected.


Timeline

  • March 2018: SKAdNetwork version 1 ships with iOS 11.3.
  • September 2020: IAB Tech Lab publishes the OpenRTB SKAdNetwork extension for public comment.
  • 2020: Version 2 and 2.1 arrive with iOS 14, adding version signing.
  • 26 April 2021: App Tracking Transparency takes effect with iOS 14.5; version 2.2 adds view-through attribution.
  • May 2021: Version 3 arrives with iOS 14.6, adding postbacks for non-winning impressions.
  • September 2021: Advertised app developers become eligible for copies of winning postbacks, with iOS 15.
  • June 2022: Apple presents SKAdNetwork 4.0 at WWDC22.
  • 24 October 2022: Version 4 ships with iOS 16.1.
  • June 2023: Apple teases a version 5 with re-engagement support at WWDC23.
  • December 2023: Reddit launches version 4 support.
  • February 2024: Network adoption of version 4 reaches 43%, per Singular.
  • March 2024: TikTok publishes its version 4 implementation.
  • June 2024: Apple introduces AdAttributionKit at WWDC24; version 5 never ships.
  • 10 April 2025: Apple Ads registers with AdAttributionKit.
  • June 2025: Apple adds configurable attribution windows, cooldowns, overlapping re-engagement windows and postback country codes.
  • June 2026: WWDC26 passes without attribution framework changes.

Summary

Who: Apple designs and operates the system. Ad networks register with Apple and receive the postbacks; publisher apps display the signed ads; advertised apps set conversion values; mobile measurement partners such as AppsFlyer, Adjust, Singular and Kochava process the output on behalf of advertisers.

What: An operating system level API that attributes iOS app installs to advertising without exposing device identifiers. Apple signs an impression, decides attribution on the device, and later sends a cryptographically signed postback containing a source identifier, a conversion value and little else, with the level of detail governed by install volume.

When: Shipped with iOS 11.3 in March 2018. Version 2 arrived with iOS 14 in 2020, version 4 with iOS 16.1 in October 2022. A version 5 teased in 2023 never shipped, and AdAttributionKit succeeded it from WWDC 2024.

Where: On iOS and iPadOS devices, covering the App Store, and through AdAttributionKit the alternative marketplaces required in the European Union. Ads served in apps, and since version 4 on web pages in Safari, can both initiate attribution.

Why: App Tracking Transparency removed the shared identifier that mobile attribution depended on, and Apple needed a substitute that could confirm an ad worked without revealing who it worked on. The trade the framework offers is measurement that is delayed, aggregated and capped in detail, in exchange for functioning at all without consent.