Where introductory offers target new subscribers, promotional offers target returning ones — users who have already redeemed an intro offer and are no longer eligible for one. They're a distinct API on both iOS and Google Play: your app programmatically presents a promotional offer to an eligible user, the platform validates eligibility server-side, and the discount applies on the next subscription period.
Three typical use cases
- Winback — re-engage cancelled subscribers, typically 30-60 days post-cancellation, with a discount like "3 months at 50% off if you come back". Highest acceptance rates when targeted at users who churned in the first paid period (price-sensitivity-driven churn) rather than long-tenure ones.
- Retention — save subscribers about to cancel. Surfaced in the cancel flow itself, before the user confirms. "Stay another month for $0" or "Get 50% off your next 3 months". Higher conversion than winback because the user is still engaged.
- Reward — recognize long-tenure subscribers with periodic discounts or upgrades. Loyalty-driven, less price-elastic.
Offer codes are a related mechanism. Codes you distribute outside the app (email, influencer partnership, customer-support refund alternative) redeem a specific promotional offer when entered in the App Store or in-app. Useful for: manual customer-service recovery, podcast / influencer deals (1,000 codes for a partner to distribute), specific apology / make-good scenarios. Each code can only be redeemed once.
The discipline that matters: don't train users to wait for discounts. If every cancellation flow shows a 50% retention offer, sophisticated users learn that cancellation is the way to get a lower price. Segment retention offers tightly — only show to users in their N-th consecutive at-risk month, or to users with specific churn-risk-model scores. Same for winback: target by initial-churn-month, not blanket-all-cancellers.