How to Run an Affiliate Program for an iOS App in 2026: In-App Purchases and Offer Codes
Ollie Efez
September 25, 2026•11 min read
To run an affiliate program for an iOS app that sells subscriptions through in-app purchase, give each affiliate their own Apple subscription offer (with its own codes) and credit the sale when Apple reports that the affiliate's offer was redeemed. A normal affiliate tracking link does not work on its own, because the purchase happens inside the App Store, where a link's cookie or URL parameter never reaches.
That one fact shapes everything else in an app affiliate program: how you attribute sales, what you can pay on, how many partners you can run at once, and which tools actually fit. This guide walks through each decision in the order you will meet it, with links to Apple's own documentation for the App Store rules it relies on.
Why affiliate links don't work for in-app purchases
On the web, affiliate tracking is simple. A visitor clicks a partner's link, the tracking code lands in a cookie or in the checkout session, and when the payment arrives the platform reads the code and credits the partner.
An in-app purchase breaks that chain in two places:
- The click and the purchase happen in different places. The visitor clicks in a browser or social app, then installs your app from the App Store. Nothing from the browser's cookies or the link's URL parameters travels into the App Store purchase.
- The payment is Apple's, not yours. Apple processes the charge, so there is no checkout page where you could stamp a tracking code, and no processor webhook you control that carries one.
So "track the link click, then the install, then the subscription" is not something a web tracking link can do for an App Store purchase. What does survive the journey is something the customer redeems at the moment of purchase: one of the affiliate's offer codes, which tells Apple which offer, and so which affiliate, the subscription belongs to.
The three ways app developers attribute affiliate sales
If your subscription is sold on the web (for example through Stripe or Paddle checkout), use a normal tracking link, because the web checkout carries the affiliate. If it is sold through Apple in-app purchase, offer codes are the method that ties a paid subscription to a partner without adding an SDK.How offer codes work as affiliate codes
Apple's subscription offer codes give a customer a free or discounted price on an auto-renewable subscription for a set duration. According to Apple's subscription offer code documentation, there are two kinds:
Two points matter most for affiliate programs:- Apple reports the offer, not the individual code. When a customer redeems, Apple's transaction data identifies the offer by the reference name you gave it in App Store Connect (Apple's offerID reference). So attribution works per offer: each affiliate needs their own offer, and every code under that offer belongs to that affiliate.
- A link still works, as long as it is Apple's. Offer codes can be turned into redemption URLs. When someone opens one without your app installed, Apple prompts them to download it first and then redeem. So an affiliate can still post a link in a video description or newsletter: the link just has to be the code's redemption URL, not a web tracking link.
Apple itself lists partnering with another company on a marketing campaign as one of the uses of offer codes on its subscriptions page.
The limits to plan around before you recruit
Offer codes are the right tool, but they come with App Store rules that decide how big and how flexible your program can be. Know these before you promise anything to a partner.
Ten active offers per subscription. Apple allows up to 10 active offers per subscription product at a time. Because attribution is per offer, that means up to 10 affiliates can have a live code on any one subscription product at once, and fewer if you run other offer code campaigns on the same product. If you sell a monthly and an annual plan, each is its own product, and an affiliate who promotes both needs an offer on each. In practice this limits how many partners can promote one subscription at the same time, so choose partners for audience fit before reach.
Offers can't be edited. Once you create an offer, you can't change it. If you want a different discount or eligibility for a partner, you create a new offer, register its reference name for that partner in your affiliate platform, and deactivate the old one. A deactivated offer cannot be reactivated.
Quarterly redemption cap. Each app can create codes for up to 1 million redemptions per quarter, shared across all subscriptions, so your affiliate offers share it with any other offer code campaigns you run.
Subscriptions only. Apple also has offer codes for one-time in-app purchases, but the approach in this guide, and LinkJolt's tracking, covers auto-renewable subscriptions only. If your app also earns from one-off purchases (consumables or lifetime unlocks), plan a separate reward for those sales, because they will not be credited to an affiliate.
Who the offer is for. When you set up an offer, you choose which customers are eligible: new, existing or expired subscribers, in any combination. For an affiliate program, choose new subscribers. Paying a partner because a current subscriber typed their code is paying for a customer you already had.
Introductory offers. If your subscription already has an introductory offer, Apple asks whether a customer redeeming a code should get the introductory offer first. For affiliate attribution, choose No, so the partner's offer is applied to the customer's first transaction, which is the transaction that identifies the affiliate.
Deciding what to pay affiliates
The commission decisions are the same ones any subscription business makes, with one App Store twist.
Know what the commission is calculated on. Apple keeps a commission on in-app purchases before you are paid (a reduced 15% for developers in the App Store Small Business Program, per Apple). LinkJolt calculates the affiliate's commission on the price Apple reports for the transaction, not on your proceeds after Apple's commission. On a $9.99 monthly plan, a 20% commission is $2.00 per payment, while your own proceeds from that payment are less than $9.99. Set your rate with both in view.
Percentage or fixed. Across SaaS programs on LinkJolt, 81% of campaigns pay a percentage of the sale and 19% pay a fixed amount, with a median of 20% for percentage-based campaigns and a median fixed bounty of $30 per sale (benchmarks). A percentage suits apps with several plans, because the commission scales with the plan the customer picks.
First payment only, or renewals too. 26% of campaigns in the same benchmarks pay recurring commissions. For a subscription app, recurring commissions reward partners who send customers who stay subscribed, not only customers who sign up. If you pay on renewals, cap them: either by a number of payments or by a number of months. See how recurring commission programs work for the trade-offs, and use the affiliate commission calculator to see what a rate costs you per customer.
Free periods. If the partner's offer gives a free month, there is no money on that first transaction, so there is nothing to pay commission on yet. The commission starts with the first payment that actually charges the customer.
Refunds. Decide up front that a refunded purchase cancels the partner's commission for it, and tell partners before they join.
How to set it up, step by step
Here is the whole flow for a subscription app, from App Store Connect to paying a partner.
- Send Apple's server notifications to your affiliate platform. Apple's App Store Server Notifications V2 is the signed, server-to-server feed Apple sends when a subscription starts, renews, is refunded or is revoked. This is how your platform learns which offer a new subscriber redeemed. You set the URLs in App Store Connect; nothing ships inside your app.
- Create one offer per affiliate. In App Store Connect, open the subscription, create an offer code offer, and give it a reference name that identifies the partner (for example
partner_maya). Set eligibility to new subscribers, the price and the duration. - Create the codes the partner will share. A custom code for a partner who wants one memorable code, or a batch of one-time-use codes for a partner who hands them out individually. Copy the redemption URL for partners who prefer to share a link.
- Register the offer against the affiliate. In your affiliate platform, record that the offer's reference name belongs to that partner and to that campaign.
- Test in the sandbox. Apple lets you create sandbox codes and redeem them with a sandbox account, so you can confirm a redemption is credited before any partner goes live.
- Approve and pay. When the redemption arrives, review the commission, approve it and pay the partner.
How LinkJolt handles App Store affiliate sales
LinkJolt is affiliate program software that tracks App Store subscriptions through Apple App Store Server Notifications v2 and Subscription Offer Code attribution. No SDK, no MMP, and no change to your app's code.
- Setup: you paste LinkJolt's Production and Sandbox URLs into App Store Connect and enter your app's Bundle ID and App Apple ID. The steps are on the Apple in-app purchase tracking page, and developers can read the Apple IAP tracking guide.
- Attribution: you register each partner's offer in LinkJolt as an Apple offer code, entering the offer's reference name as its Offer Identifier. When Apple reports a new subscription that used that offer, LinkJolt credits the affiliate. A subscription started without one of your registered offers is not credited to anyone, and neither is an existing subscriber redeeming a code.
- Verification: every notification is signed by Apple, and LinkJolt verifies the signature before recording anything.
- Renewals: each renewal links back to the original purchase, so if your campaign pays recurring commissions, the affiliate is credited on renewals, up to the cap you set if you set one. Recurring commissions are included on the Professional plan and above.
- Free offers: a free first period is recorded with no commission; the first paid charge after it pays the campaign's normal rate.
- Refunds and revocations: when Apple reports a refund or a family sharing revocation, LinkJolt reverses the affiliate's commission, and restores it if Apple later reverses the refund.
- Testing: sandbox purchases are recorded as test sales, kept out of your live numbers.
- Payouts: you approve commissions and pay affiliates through Stripe Connect or with a CSV export for PayPal or Wise.
LinkJolt charges a flat monthly price with 0% transaction fees, from $19.99 a month (or $13.99 a month billed annually) on the pricing page, with a 7-day trial. If your app sells subscriptions on both the web and the App Store, one program can track both: tracking links and Stripe or Paddle for the web, offer codes for the App Store. There is a summary for app teams on the iOS subscription apps page.
Finding partners for an app
Look for partners whose audience already uses apps like yours: YouTube reviewers in your category, newsletter writers, niche communities and your own most engaged subscribers. Because Apple's 10-active-offer limit caps how many partners can promote one subscription at once, pick partners by audience fit, not reach alone. Our guide to finding affiliate partners covers where to look and what to offer, and on the Professional plan and above, the Discovery marketplace lets affiliates find and apply to your program.
Watch Demo (2 min)
Trusted by 300+ SaaS companies
Start Your Affiliate Program Today
Get 30% off your first 3 months with code LINKJOLT30
✓ 7-day free trial
✓ Cancel anytime
Frequently Asked Questions
Can I track affiliate sales of iOS in-app purchases with a normal affiliate link?
No, not on its own. A web tracking link stores the affiliate in a cookie or URL parameter, and neither travels into the App Store install or purchase. For subscriptions sold through Apple in-app purchase, the affiliate has to be identified at the moment of purchase, which is what Apple subscription offer codes do. A partner can still share a link if it is the offer code's Apple redemption URL.
How do offer codes identify which affiliate made the sale?
Apple reports which offer a customer redeemed, identified by the reference name you set in App Store Connect, not by the individual code. Attribution therefore works per offer: you create one offer per affiliate, and every code under that offer belongs to that affiliate. Apple sends the redemption in its signed App Store Server Notifications, which your affiliate platform reads.
How many affiliates can an iOS app run with offer codes?
Apple allows up to 10 active offers per subscription product at a time, so up to 10 affiliates can have a live offer on one subscription product at once, fewer if you run other offer code campaigns on it. A monthly and an annual plan are separate products, so an affiliate promoting both needs an offer on each.
Do offer codes work for one-time in-app purchases?
Apple has offer codes for one-time in-app purchases as well, but LinkJolt credits affiliates only on auto-renewable subscriptions: the subscription purchase and, if your campaign pays recurring commissions, its renewals. One-time purchases such as consumables or lifetime unlocks are not credited to an affiliate, so plan a separate reward for those sales.
Should affiliates earn commission on App Store renewals?
It is worth offering on a subscription app, with a cap. Recurring commissions reward partners who send customers who stay subscribed, not only customers who sign up, and 26% of campaigns in the LinkJolt SaaS affiliate benchmarks pay them. Cap them by a number of payments or months so the cost stays predictable. In LinkJolt, recurring commissions are included on the Professional plan and above.
Do I need an SDK to run an affiliate program for my iOS app?
Not with offer codes. LinkJolt tracks App Store subscriptions through Apple App Store Server Notifications v2 and Subscription Offer Code attribution, so there is no SDK, no MMP and no change to your app's code. You paste two URLs into App Store Connect, enter your Bundle ID and App Apple ID, and register each affiliate's offer.