Apple Search Ads, past the install.

Apple reports installs and stops there. Duct reads your campaigns beside RevenueCat and Stripe, and says which ones bring subscribers, not just downloads.

  • API key pair
  • Reads three datasets
  • Read-only
  • Checked Sep 29, 2026
An example answer. Yours is read from your own accounts.
A Duct session: asked whether a bid raise paid off, Duct reads Solo's Apple Search Ads campaigns day by day beside RevenueCat and finds installs doubled while trials did not move
Ask whether the bid raise paid. Apple reports installs, so Duct checks them against RevenueCat trials, scoped to your app's campaigns.

Ask

Questions you can just ask

  • Did the bid raise buy subscribers, or only installs?

    Apple Search Ads + RevenueCat
  • Which campaigns should get next month's budget?

    Apple Search Ads + RevenueCat
  • What does an install cost this month against last?

    Apple Search Ads
  • How many installs came from a tap, and how many from a view?

    Apple Search Ads

Access

What it reads. What it can change.

What it reads

  • Campaignsnamestatus
  • Campaign report, this period and the lastimpressionstapstap-through installstotal installsspendaverage cost per tap
  • Daily campaign reportimpressionstapsinstallsspend

Apple Search Ads Campaign Management API v5 · checked against the fetch code Sep 29, 2026 · read the source

What it can change

Nothing.

Duct has no Apple Search Ads change operation, so it cannot edit anything in Apple Search Ads. It can still recommend a change for you to make there.

Knowledge

What Duct already knows about Apple Search Ads

  1. 01

    Apple counts installs, never money.

    There is no revenue or subscriber metric in Apple Search Ads. Duct judges a campaign against RevenueCat or Stripe, not against its installs.

  2. 02

    Reports cover the whole organisation.

    Apple's campaign reports mix every app in the org. Duct filters them to your campaigns first, so another app's spend can't reach your totals.

  3. 03

    Installs were renamed.

    Version 5 of the API split installs into tap-through and total, which includes view-through. The old field reads as zero, so Duct reads both new ones.

  4. 04

    Money arrives as text.

    Apple returns every amount as a string with its currency. Duct parses each one before adding anything up.

Read the Apple Search Ads notes Duct's agent works from

Setup

Connect Apple Search Ads in three steps

  1. 1

    Generate an EC P-256 key pair, and upload the public key in Apple Search Ads under Account Settings, then API.

  2. 2

    Note the client ID, team ID and key ID Apple shows for it.

  3. 3

    In Duct, open Connections, choose Apple Search Ads and paste the three IDs and the private key.

Read-only: Duct has no Apple Search Ads change operation, and give the API user a read-only role so the key could not change a campaign either.

Keys and tokens are stored encrypted by Duct's hosted API, never in your browser, and you can remove a connection at any time. A self-host build keeps them on your own machine.

FAQ

Apple Search Ads, answered

Can Duct change bids or budgets in Apple Search Ads?

No. Duct has no Apple Search Ads change operation. It reads campaigns and their reports and can recommend a change for you to make in Apple's console.

Why does Duct need RevenueCat or Stripe for Apple?

Because Apple stops at the install. Whether those installs started a trial or paid is in your billing, so Duct reads it beside Apple before calling a campaign good or bad.

Our Apple Ads org runs more than one app. Will the numbers mix?

No. Duct conditions every report on the campaigns it lists for you, so another app's spend never reaches those totals.

Is it free?

Yes. Duct is free with your own model keys or the ChatGPT plan you already have, and the core is MIT licensed. A paid plan later bundles the models; nothing open today moves behind it. What will cost money.