How do you win back cancelled subscribers?
Start before the subscription ends: a user who turns off auto-renew usually keeps access until the period ends, and that window is your best chance. After it ends, send a short sequence built on why they left and what has changed, and test discounts against a holdout before you rely on them.
Win-back has two windows
| Window | Who | What works |
|---|---|---|
| Before access ends | Auto-renew is off, the user still has the app | A reminder of their own progress and what they keep by staying |
| After access ends | The subscription has expired | A short sequence about what changed, built on why they left |
| Failed payment (not win-back) | The card failed, the user never chose to leave | A plain reminder to update payment details, no offer |
1. Use the window before access ends
On both app stores, a user who turns off auto-renew normally keeps access until the end of the period. Many apps wait for the expiry and only then start a win-back campaign. By then the user has stopped opening the app and the message has to compete with everything else in their inbox.
In the window before access ends, the user is still inside the product. A message can point at real things: the streak they built, the playlist they made, the course they are two lessons from finishing. Keep it to one message, and never say their access ends sooner than it does.
2. Find out why they left
The reason decides the message. Common reasons fall into a few groups:
- Finished the job. They reached their goal. Point at the next goal, or let them go gracefully.
- Didn’t use it enough. Point at the one feature that would have made it worth it.
- Too expensive. A cheaper plan or a yearly plan may fit. An offer may be worth testing here.
- Missing something. If you shipped it since they left, say so.
Ask in the cancel flow if your platform allows it, and look at their last weeks of activity. A user whose sessions fell off a cliff left for a different reason than one who used the app daily until the day they cancelled.
3. Send a short sequence after expiry
After the subscription ends, write a few messages spread over a few weeks. Each one gives a different, concrete reason to return: a feature you shipped, content added since they left, their saved data still waiting. Stop when they resubscribe, unsubscribe or ignore the whole sequence.
Email usually carries win-back after expiry, because users who left often turn notifications off or delete the app. See retention emails vs push notifications.
4. Be careful with discounts
A discount brings back some users, but it also goes to users who would have come back anyway, and it trains everyone to cancel for a deal. Before you make offers your default, test one against a holdout group and compare revenue, not just resubscribes. How to run a holdout test.
5. Keep failed payments separate
A failed renewal isn’t a cancellation. Apple and Google retry failed renewals, and you can turn on a grace period so users keep access while the store retries. Send a short, friendly reminder to update the payment method, and don’t attach a discount to it.
Where Whisperr fits
Whisperr handles the window before access ends and failed payments. It reads subscription events from RevenueCat, Superwall or Adapty. When a user turns off auto-renew and still has access, it can send them one message, written for that user in your app’s voice, about what they keep by staying. When a payment fails, it sends an update-payment reminder during the retry period, with no discount, and stops when the payment recovers. Every message goes out by push or email through your own providers, and a holdout group shows how many users it kept.
FAQ
When is the best time to win back a cancelled subscriber?
Before access ends. On the App Store and Google Play, turning off auto-renew usually leaves the user with access until the end of the period they paid for. They are still in the app and still have their data, so a reminder of their own progress lands better than any message after they are gone.
Should a win-back message include a discount?
Not by default. Many users leave for reasons a discount doesn't fix, such as a missing feature, a finished goal or a bad month. Lead with what changed or what they built. Test an offer against a holdout group and keep it only if the extra users it brings back cover what it costs on users who would have returned anyway.
How many win-back messages should I send?
Few. Two or three messages spread over a few weeks, each with a different reason to return, is a common pattern. Stop when the user unsubscribes, resubscribes or ignores the sequence.
Can Whisperr win back users who turned off auto-renew?
Yes. When your billing source (RevenueCat, Superwall or Adapty) reports that a user turned off auto-renew and still has access, Whisperr can send them one message about what they keep by staying, written for that user and sent by push or email through your own providers. Discounts are off unless your business allows save offers.
What's the difference between win-back and payment recovery?
Win-back is for users who chose to leave. Payment recovery is for users whose card failed and who never decided to leave. Recovery messages should be short reminders to update payment details, with no offer. Mixing the two sends discounts to people who would have paid full price.
Let Whisperr run this for you.
Whisperr watches how people use your app, spots the ones about to leave and brings them back with the right message at the right moment. After you sign up, one prompt in your coding agent sets it up.
You approve until you trust it. Then it runs itself.