
SKAdNetwork (SKAN) is Apple's official attribution API for iOS. It provides mobile measurement data — specifically, which ad campaigns drove app installs — without sharing any user-level or device-level information with ad networks or measurement partners.
Apple designed SKAN to enable campaign-level attribution in a privacy-safe way. Instead of reporting "User X installed your app after clicking Ad Y," SKAN reports "Campaign Z received N attributed installs in this time window, with aggregated conversion value V."
SKAN is not optional for iOS attribution in 2026. For the segment of iOS users who decline ATT (the majority), SKAN is the only Apple-approved method for receiving any attribution signal at all.
One-sentence definition: SKAdNetwork (SKAN) is Apple's privacy-preserving attribution API that provides aggregated, delayed, campaign-level install data for iOS apps — without user identifiers.
Apple's App Tracking Transparency (ATT) framework, introduced with iOS 14.5, required apps to explicitly request permission before accessing the IDFA (Identifier for Advertisers). Most users decline this request.
The result: the standard deterministic attribution path — click on ad → IDFA collected → IDFA matched to install — became unavailable for the majority of iOS users.
SKAN was Apple's solution. Rather than abandoning attribution entirely, SKAN creates a privacy-preserving channel where:
Understanding ATT is essential for understanding why SKAN is structured the way it is — its constraints are not technical limitations but privacy design decisions.
SKAN attribution follows a fundamentally different flow from standard MMP attribution:
Step 1: Ad Network Registers Campaign
The ad network registers its campaign with Apple's SKAN framework, receiving a campaign ID (limited to 100 campaign IDs per ad network in SKAN 4).
Step 2: User Clicks Ad and Installs
When a user clicks a SKAN-registered ad and installs the app, Apple's framework — not the MMP SDK — initiates the attribution process on-device.
Step 3: Conversion Value Updated
After install, the app has a configurable window to update a conversion value (a number from 0–63) that maps to meaningful in-app events. The MMP SDK provides the logic for updating this value based on events that occur in the app.
Step 4: Apple Sends Postback (Delayed)
After a privacy threshold is met and a timer expires (24–72 hours minimum, potentially days longer), Apple sends a postback to the ad network containing:
Step 5: MMP Receives and Decodes Data
The ad network forwards the postback to the MMP. The MMP decodes the conversion value back into the in-app events it represents and includes the data in campaign reports.
SKAN provides a 6-bit conversion value (0–63) — 64 possible states — to represent everything meaningful that happens in your app post-install. How you map these 64 values to actual events is one of the most consequential configuration decisions in iOS measurement.
What conversion values can represent:
Common misconfiguration mistakes:
Best practice: Map conversion values to the 2–3 events that most closely predict LTV for your app category. For casual games: D1 retention + first ad view + first purchase. Prioritize events that occur within the first 24 hours — values that update later may not be captured before Apple's timer expires.
SKAN attribution is structurally different from standard attribution. These are not bugs — they are by-design constraints:
| Limitation | Impact |
|---|---|
| No user-level data | Cannot analyze individual user journeys; cohort analysis unavailable |
| No creative-level attribution | SKAN reports at campaign level only — no ad group or creative breakdown |
| Delayed reporting | Data arrives 24–72+ hours after install, making real-time optimization impossible |
| Privacy thresholds | Low-volume campaigns may receive null or randomized postbacks to prevent re-identification |
| 100 campaign ID limit | Limited campaign segmentation per ad network per app |
| Conversion value lock | Once Apple's timer expires, no further updates — events after the window are invisible |
The practical implication: SKAN data is useful for understanding campaign-level trends but cannot replace user-level MMP reporting for creative optimization, cohort analysis, or LTV modeling. It is a complement to — not a replacement for — deterministic attribution.
Both SKAN and probabilistic attribution are used when IDFA is unavailable, but they work very differently:
| SKAN | Probabilistic | |
|---|---|---|
| Source | Apple's on-device framework | MMP inference from contextual signals |
| Granularity | Campaign level only | Can reach ad group / creative level |
| User data | None (fully aggregated) | IP, device model, OS, timing |
| Delay | 24–72+ hours | Near real-time |
| Accuracy | Guaranteed for consented attribution | Estimated — accuracy varies |
| Privacy | Apple-enforced | MMP-policy dependent |
Which to use: SKAN and probabilistic attribution address different gaps. SKAN is the Apple-sanctioned method for iOS attribution; probabilistic fills coverage gaps across both iOS and Android scenarios where device IDs are unavailable. A complete iOS measurement strategy uses all three layers — IDFA, probabilistic/ICM, and SKAN — not one or the other.
SKAN is Layer 3 in the complete iOS attribution framework:
| Layer | Signal | Users Covered |
|---|---|---|
| Layer 1 — IDFA | Device identifier | ATT-consented iOS users |
| Layer 2 — Google ICM | Google's Install Conversion Measurement | Non-consented users, Google Ads traffic |
| Layer 3 — SKAN | Apple's SKAdNetwork | All remaining iOS users |
SolarEngine's iOS attribution implements all three layers. SKAN is configured through SolarEngine's SDK, which handles conversion value updates, postback receipt, and decoding — so clients receive SKAN data in the same unified report as IDFA and ICM data, without managing Apple's framework separately.
For the complete picture of iOS attribution and how all three layers work together, see
Mobile App Attribution: Complete Guide [2026]
Q: What is SKAdNetwork (SKAN)?
SKAdNetwork (SKAN) is Apple's privacy-preserving attribution API for iOS. It provides aggregated, campaign-level install data without user identifiers. SKAN is the Apple-approved attribution method for iOS users who have declined ATT permission, delivering delayed postbacks with conversion values instead of user-level data.
Q: Why is SKAN data delayed?
SKAN data is delayed by design. Apple's framework requires a timer to expire (minimum 24–72 hours) before sending the attribution postback, ensuring that no individual user can be identified from the timing of the data. Low-volume campaigns may experience longer delays due to crowd anonymity thresholds.
Q: What is a SKAN conversion value?
A SKAN conversion value is a number from 0 to 63 (6 bits) that your app updates after install to represent in-app events. The final value recorded before Apple's timer expires is included in the attribution postback. Conversion values must be pre-configured to map to meaningful events — the mapping strategy directly determines what post-install insights you receive from SKAN campaigns.
Q: Does SKAN replace my MMP?
No. SKAN provides Apple-approved attribution signals for non-consented iOS users, but it only delivers campaign-level, delayed, aggregated data. Your MMP receives, decodes, and integrates SKAN data alongside IDFA-based deterministic attribution and other signals — giving you a unified view. SKAN is one input into your MMP's iOS reporting, not a standalone solution.
Q: What is the difference between SKAN 3 and SKAN 4?
SKAN 4 (introduced with iOS 16.1) added support for multiple postbacks per install (up to 3, with decreasing fidelity), increased campaign ID limits to 100, and introduced crowd anonymity tiers. SKAN 4 provides more post-install data than SKAN 3 but still operates under the same fundamental constraints: aggregated, delayed, no user-level attribution.
SKAN attribution is not optional for iOS measurement in 2026 — it's the only Apple-approved method for attributing the majority of iOS users who decline ATT. But SKAN is a complement to, not a replacement for, full-stack iOS attribution.
The teams that get the most from iOS measurement are those that implement all three layers — IDFA, Google ICM, and SKAN — and configure conversion values strategically to capture the signals that matter most for their app category.
Set up SKAN attribution with SolarEngine → — three-layer iOS coverage configured and ready, with dedicated support for conversion value strategy from day one.
