- Your app: update the SDK and add the SKAN keys to
Info.plist - Linkrunner: configure the SKAN schema (events, priority, ranges)
- Your ad networks: complete the Google Ads and Meta Ads specific steps
1. Prepare Your App
Minimum SDK Versions
Make sure your app is using at least these SDK versions before enabling SKAN. Linkrunner uses the SDK to update conversion values as users perform events.Native iOS
linkrunner-ios >=3.1.0
React Native
rn-linkrunner >=2.3.0
Flutter
linkrunner >=3.1.1
Expo
expo-linkrunner >=3.2.0
Capacitor, Cordova, and Unity apps use the native iOS SDK (LinkrunnerKit) under the hood, so the **linkrunner-ios
=3.1.0** requirement applies to them as well.
How the SDK updates conversion values
You don’t need to call any SKAN APIs yourself. On first launch the SDK registers an initial conversion value (0/low), and everytrackEvent, capturePayment, and signup call returns the updated conversion value from Linkrunner, which the SDK applies automatically. On iOS 17.4+ the SDK uses Apple’s AdAttributionKit; on iOS 14.0–17.3 it falls back to SKAdNetwork.
Add Ad Network Identifiers
Apple only generates SKAN postbacks for ad networks listed underSKAdNetworkItems in your app’s Info.plist. Add the identifiers for the networks you run campaigns on:
On Expo, add these under
ios.infoPlist.SKAdNetworkItems in your app.json instead of editing Info.plist
directly.Configure Postback Copies to Linkrunner
To receive SKAdNetwork postback copies, configureNSAdvertisingAttributionReportEndpoint and AttributionCopyEndpoint in your app’s Info.plist:
Native iOS, Flutter, and React Native
- Open
Info.plistin Xcode - Add a new key
NSAdvertisingAttributionReportEndpoint(typeString) with valuehttps://linkrunner-skan.com - Add a new key
AttributionCopyEndpoint(typeString) with valuehttps://linkrunner-skan.com
Expo
The Linkrunner Expo plugin adds this configuration automatically. No additional setup required.These keys tell Apple to send copies of SKAdNetwork postbacks to Linkrunner alongside the ad network, enabling
accurate attribution and reporting in your Linkrunner dashboard.
2. Configure the SKAN Schema
Linkrunner converts your event list into SKAN conversion values (0–63). The order you put events in determines their priority. Higher-priority events overwrite lower-priority ones in the same measurement window.- Go to Settings → SKAN Setup → Events Setup in the Linkrunner Dashboard
- Add the events that matter for optimization (e.g.,
Purchase,Subscription Started,Onboarding Complete) - Drag rows to set priority (the topmost event has the highest priority)
- For revenue events, set a min and max range; for occurrence events, set an average
- Click Generate SKAN Mapping to produce the fine and coarse conversion values
The schema is configured once and shared. Linkrunner automatically generates the fine and coarse conversion values
from it for both Google and Meta.
3. Complete Your Ad Network Setup
Follow the dedicated guide for each network you advertise on:Google Ads SKAN Setup
iOS link ID, account connection, and event mapping to conversion actions.
Meta SKAN Setup
Conversion values in Events Manager and the Facebook SDK toggle.

