SKAdNetwork, in plain terms
Apple's install attribution, explained by what it can answer rather than by its API surface.
6 August 2026 by PAD team
The shape of it
An ad network signs a click. If an install follows, the App Store sends a postback to that network saying an install happened for a given campaign identifier. No user identifier is involved at any point.
Your app can set a conversion value, a small number encoding what the user did early on, which arrives with the postback.
What you get
- Campaign-level install counts that do not depend on tracking consent
- A coarse signal of post-install quality through conversion values
- Data that survives ATT refusal, which probabilistic matching does not
What you lose
- Timing, since postbacks are deliberately delayed by hours to days
- Granularity, since campaign identifiers are limited in number
- Small campaigns entirely, suppressed by privacy thresholds
- Any per-user connection, permanently
Conversion values in practice
You get a handful of bits and a short window to set them. Encoding too much produces values you cannot interpret; encoding too little wastes the mechanism. Most teams settle on a simple ladder: opened, completed onboarding, subscribed.
How it fits with everything else
SKAdNetwork answers which campaigns produce installs. It says nothing about whether taps reached the store in the first place, which is a click-side question. A campaign losing a fifth of its taps to a blank page will simply report fewer installs, with no indication of why.
We answer the question SKAdNetwork cannot: how many taps actually reached the store.