Integration · Attribution and ads measurement

Apple Search Ads attribution and revenue by campaign

RevenueDot attributes purchases to Apple Search Ads without any setup. When your iOS app turns on AdServices token collection, RevenueDot resolves the token with Apple and saves $appleAdsCampaignId, $appleAdsAdGroupId and $appleAdsKeywordId on the customer. The Apple Search Ads page then shows revenue per campaign. An API user adds campaign names.

What teams do with it

  • See which Apple Search Ads campaign brought paying customers, and how much each earned.
  • Compare revenue per customer by campaign for installs from the last 28 days, 90 days or 12 months.
  • Feed Asapty and SplitMetrics Acquire, which read the same attributes.
  • Read campaign names instead of numeric IDs, by adding an Apple Search Ads API user.

What RevenueDot sends

  • This is a connection: it sends no events. The attribution is saved on each customer as $appleAdsCampaignId, $appleAdsAdGroupId, $appleAdsKeywordId, $appleAdsAdId, $claimType and $appleAdsCountryOrRegion.
  • The report, GET /v2/projects/{project_id}/ads/apple_search_ads/report?range=90d: for each campaign, its customers, paying customers, revenue to date and revenue per customer.
  • The report counts production purchases only, in US dollars, with refunds negative, for customers first seen in the last 28 or 90 days or 12 months.
  • With an API user, RevenueDot signs in to Apple's Campaign Management API v5 and loads the names of up to 200 campaigns and their ad groups.
  • The API user's private key (PEM) is sealed with AES-256-GCM at rest and never shown again.

Setup

How to connect Apple Search Ads to RevenueDot

  1. 01

    Turn on AdServices token collection

    In your iOS app, call enableAdServicesAttributionTokenCollection(). RevenueDot resolves each token with Apple and saves the campaign on the customer. No keys are needed for attribution.

  2. 02

    Open the report

    In RevenueDot, open Integrations → Apple Search Ads to see customers and revenue by campaign.

  3. 03

    Add an API user for names (optional)

    In Apple Search Ads, invite an API user (a read-only role is enough). Generate a P-256 key pair and upload the public key on the user's API tab.

  4. 04

    Enter the API user's details

    In RevenueDot, fill in Organization ID (Apple Search Ads, Account settings), Client ID, Team ID and Key ID from the API tab, and paste private-key.pem as Private key (PEM). Click Connect Apple Search Ads.

  5. 05

    Load campaign names

    Click Load campaign names. RevenueDot loads up to 200 campaigns and their ad groups.

The Apple Search Ads integration page in the RevenueDot dashboard, with its settings form
Captured from the RevenueDot dashboard with demo data.

Generate the key pair for the API user

Apple's API user needs a P-256 key. These two commands create the private key you paste into RevenueDot and the public key you upload to Apple.

Create a P-256 key pairbash
openssl ecparam -genkey -name prime256v1 -noout -out private-key.pem
openssl ec -in private-key.pem -pubout -out public-key.pem

What the report and the attributes are for

  • Attribution needs no credentials. The AdServices token is resolved with Apple, and the campaign is stored on the customer, so any integration that reads attributes gets it: Asapty, SplitMetrics Acquire and the report itself.
  • Names are optional. Apple's attribution API returns campaign IDs, not names. The API user only adds names to the report.
  • Revenue to date. The report adds up each customer's production purchases to date, so a campaign that brought a trial 80 days ago shows its renewals too.

FAQ

Apple Search Ads and RevenueDot

How do I track Apple Search Ads attribution for subscriptions?

Call enableAdServicesAttributionTokenCollection() in your iOS app. RevenueDot resolves the AdServices token with Apple and saves the campaign, ad group and keyword on the customer. Open Integrations → Apple Search Ads to see revenue by campaign.

Do I need an Apple Search Ads API user?

Only to see campaign names. Attribution and the revenue report work without one, but show campaign IDs. A read-only API user is enough for names.

Does the report include sandbox purchases?

No. It counts production purchases only, in US dollars, with refunds as negative revenue.

Is there a RevenueCat Apple Search Ads integration alternative?

Yes. RevenueDot resolves the AdServices attribution token on its own and reports revenue by campaign, from an open source backend you can self-host. Apple's own API steps are in its Apple Search Ads documentation.

Sources: Apple Search Ads · Apple Ads API · Apple: AdServices framework. Apple Search Ads is a trademark of its owner, used to describe compatibility. RevenueDot is not affiliated with or endorsed by it.

Get started

Send Apple Search Ads every subscription event.

Start free on RevenueDot Cloud, free up to $10,000 a month in tracked revenue. Integrations are included on every plan.

Already have an account? Sign in · Prefer your own servers? Self-host free