Apple opens retention messages in the subscription cancel flow to every developer
A developer's message, with an image or an offer, now shows when a subscriber taps Cancel. App Store Connect runs it with no server; a new API picks the message in real time.

TL;DR
Since 4 November 2026, any developer can show a retention message to a subscriber who taps Cancel Subscription in the App Store.
Set one up in App Store Connect with no server, or request the Retention Messaging API to pick a message for each subscriber in real time.
RevenueCat's data from 309 early apps points to testing a plain message first: subscribers accepted about 1.1% of the discount offers they saw.
What subscribers see
Apple announced the feature on 4 November. After a subscriber taps Cancel Subscription, iOS shows a Confirm Cancellation screen with the developer's message on it. From there they can still cancel, tap Keep Subscription, or take an offer or a different plan when the message carries one.
Apple reviews every message against the App Review Guidelines. The header and body can't name an offer, a discount or a price, such as "50% off": Apple shows those itself, only to subscribers who qualify.
App Store Connect or the real-time API
- App Store Connect, under Monetization, Subscriptions, Retention Messaging. Up to 10 messages per app, each with a header, body text, an optional image (3840 × 2160 or 5244 × 2950 pixels) and an optional retention offer. Every subscriber on a plan sees the same words. There is no server to run and no access to request.
- The Retention Messaging API, which the developer account's Account Holder requests from Apple. Messages are uploaded and approved first. When a subscriber taps Cancel, the App Store calls the developer's server, which has 700 milliseconds to choose one: text, text with an image, a switch to another plan, or a promotional offer.
The two work together. When the server's answer doesn't arrive in time, Apple shows the App Store Connect message, and failing that, the API's default message. RevenueCat runs the real-time server for apps without a backend of their own, but Apple still has to grant the API access first.
Before you add a discount
RevenueCat looked at 22 million Apple retention messages across 309 apps with early access. Subscribers accepted about 1.1% of the discount offers and 0.6% of the plan switches they were shown.
In one test by Dipsea, an audio stories app, 50% off saved slightly more annual subscribers than a message with no offer, 22.1% against 18.8%. It brought in less than half the revenue per subscriber so far: $1.24 against $3.16.
Which of the two fits your app, and when to move from one to the other:Read our founder's breakdown on X
More news
All newsSEO
Ahrefs previews DR4, the Domain Rating that replaces DR3 on 1 December
Subdomains get their own score, and links count most when they come from sites with search traffic. You can read your new number today.
AI
OpenAI releases Images 2.6 with animated GIFs and SVG export
It is live in ChatGPT, Codex and the API, where developers pick between two models: Flare for speed and Sunburst for detail.
The week's news for builders, in Weekly Unpack.
Weekly Unpack is one email a week with founder stories, the playbooks behind them and the businesses we unpack in our interviews.
Plusand the Builder Kit come with it
Subscribing makes your account Plus and opens your Builder Kit: what your product needs next, written for your coding agent to do.
Comments
Log in to comment, reply and like. Reading stays open to everyone.
No comments yet. Add what you know about it.