ASO Documentation

AppSprint SDK

Add the AppSprint SDK to connect Apple Ads installs with RevenueCat or Superwall revenue. This setup is iOS-only and sends just the install signal AppSprint needs to match revenue back to keywords.

When to add it

Add the SDK after Apple Ads is connected and a RevenueCat or Superwall revenue provider is configured. RevenueCat can be verified with a test webhook; Superwall starts populating once real signed events arrive. The SDK sends Apple Ads install attribution so AppSprint can decode campaign, ad group, and keyword revenue.

Create the SDK prompt in the Mac app

Open Integrations, go to Tracking for your app, open the AppSprint SDK card, then pick iOS, Expo, React Native, or Flutter. Copy the generated prompt into your coding assistant.

Install the SDK package

Pick the framework and package manager your app already uses. The card also points to the SDK key path in the Mac app so you can replace the placeholder quickly.

Swift Package

https://github.com/getappsprint/appsprint-ios-sdk

In Xcode, open File > Add Package Dependencies and paste this URL.

Import AppSprintSDK plus the revenue SDK you already use.

API key

Mac app > Integrations > Tracking for your app > AppSprint SDK

Copy the key from the generated SDK prompt in that step and replace YOUR_ASO_KEY in your code.

Using AI to integrate AppSprint?

Configure AppSprint once

In a blank app, the generated AppSprintAppleAds snippet should be the only AppSprint configure call. If the app already uses AppSprint, update that existing configuration with the key from the Mac app instead of adding a second AppSprint key or configure call.

The ASO setup does not need generic AppSprint events, sessions, customer IDs, IDFA updates, or tracking-link code. Set only the appsprintId attribute in RevenueCat or Superwall.

Copy the snippet for your stack

Pick your revenue provider, then copy the iOS, Expo, React Native, or Flutter snippet into your app.

RevenueCat

import AppSprintSDK
import RevenueCat
await AppSprintAppleAds.configure(apiKey: "YOUR_ASO_KEY")
let appsprintId = AppSprintAppleAds.getAppSprintId()
if let appsprintId {
Purchases.shared.setAttributes(["appsprintId": appsprintId])
}

Superwall

import AppSprintSDK
import SuperwallKit
await AppSprintAppleAds.configure(apiKey: "YOUR_ASO_KEY")
let appsprintId = AppSprintAppleAds.getAppSprintId()
if let appsprintId {
Superwall.shared.setUserAttributes(["appsprintId": appsprintId])
}

Verify the connection

After the app receives an Apple Ads install, reopen return on ad spend setup from Integrations. The AppSprint SDK card shows install pings in the last 24 hours and the last time AppSprint received one.