Rheo CLI is live. Let your agents be your growth engine.

Learn more
Rheo win-back flow with branching paths based on cancellation reason
Product

Subscription win-back campaigns: email vs in-app (and how to combine them)

Compare email and in-app win-back channels for subscription apps, including timing, personalization, and a combined playbook to reactivate churned subscribers.

Churned subscribers are among the cheapest users to win back because they already know your product. Most teams start with email: a sequence at day 7, day 30, and day 90 with escalating offers. Email works, but it is not the only channel. In-app win-back reaches users who still open the app, surfaces Apple win-back offers at the right moment, and personalizes on cancel reason captured inside the product.

This guide compares email and in-app win-back, outlines timing for each, explains personalization strategies, cautions on discounting, and shows how to combine both channels into one journey without conflicting messages.

Why win-back deserves two channels

Email and in-app solve different delivery problems:

FactorEmailIn-app
Reach after uninstallYes (if you have address)No
Reach for silent churners who still open appEasy to missStrong
Rich interactive UILimitedNative flows
Apple win-back offer presentationLink outIn-product
Personalization on cancel reasonMerge tagsReal-time branching
MeasurementOpens, clicks, resubscribeFunnel steps, outcomes

RevenueCat and lifecycle email vendors publish strong playbooks for email sequences. Rheo focuses on the in-app half: remote flows triggered by churn signals, cancel surveys, and offer surfaces. The best programs use both.

Channel comparison table

DimensionEmail win-backIn-app win-back
Best triggerLapsed billing, trial endedCancel event, failed renewal, return session
StrengthScale, narrative, remindersContext, UI, immediate action
WeaknessSpam filters, stale addressesRequires app open
Typical KPIResubscribe rate per sendFlow completion, offer acceptance
ComplianceCAN-SPAM, GDPR consentStore policies, offer eligibility

Neither channel replaces fixing the product reasons people churn. Win-back amplifies recovery when you already understand why users left.

Email sequence timing (7 / 30 / 90)

Email win-back sequences are well documented in subscription growth literature. A practical default:

Day 0–1: Confirmation, not sales

Send receipt-style acknowledgment of cancellation with a single helpful link (manage subscription, export data). Avoid hard selling. Trust preserves future opens.

Day 7: Value reminder

Short note reframing what they lose access to, grounded in features they used (if data exists). One CTA to resubscribe. Subject lines that reference personal usage outperform generic "come back" copy.

Day 30: Proof and social proof

Case study, testimonial, or product update since they left. Good for users who churned because of missing features.

Day 90: Offer (optional)

If your unit economics allow, introduce a limited win-back discount or extended trial. Measure payback, not just conversion spike.

Measurement: track resubscribes attributable to each send, not only click rate. Email clicks that do not convert may still pollute in-app attribution if UTM links fight with product flows.

In-app triggers that work

In-app win-back activates when product signals fire:

TriggerFlow behavior
User completes cancel surveyBranch on reason: price, missing feature, temporary pause
Subscription lapses but app opensFull-screen win-back with offer or plan change
Failed payment (billing retry window)Prompt to update payment method
Return after 14+ days inactiveShort value recap then offer
iOS win-back eligibilityPresent Apple's promotional offer in context

Rheo ships win-back as a channel pattern: screens, decision nodes on cancel reason traits, and optional RevenueCat paywall nodes for resubscribe. Publish changes remotely when offer copy or branch logic changes.

Timing inside the app

  • Immediate post-cancel: capture reason before the user emotionally disengages. One to two screens max.
  • Next session: if they declined an offer at cancel, try a softer education beat before price.
  • Cooldown: do not show the same win-back modal every launch. Cap frequency and respect dismissals.

Personalization by cancel reason

Cancel surveys pay off when downstream paths differ:

Reason selectedIn-app pathEmail complement
Too expensivePlan downgrade or timed discountDay 7 value vs price framing
Not using enoughHabit tips, re-onboarding mini flowFeature highlight drip
Missing featureRoadmap screen, notify-me captureProduct update when shipped
Temporary breakPause narrative, easy returnLight touch at day 30
Technical issuesSupport CTA, status linkPersonal support outreach

Store reason as a trait or SDK attribute so email and in-app stay consistent. If in-app captures "too expensive," email should not pitch premium feature depth as the lead message.

Discount caution

Discounts lift short-term resubscribe rates and erode long-term ARPU if overused.

Guidelines:

  • Segment offers to users who cited price, not everyone.
  • Cap depth and document payback windows.
  • Prefer annual or bundled value over perpetual cheap monthly.
  • Use Apple win-back offers where eligible instead of custom coupon chaos on iOS.
  • Holdout groups protect against false wins from users who would have returned anyway.

In Rheo, route price-sensitive users to offer screens with decision nodes rather than showing discounts globally in the default path.

Combined journey diagram

A coherent cross-channel journey might look like this:

Cancel in app
    → In-app: reason survey + tailored offer (Rheo)
    → If dismissed: email day 1 (acknowledgment)
    → If still lapsed day 7: email value reminder
    → If app opened day 10: in-app short flow (no duplicate email offer)
    → Day 30: email product update
    → Day 90: email offer if still churned and eligible

Rules that prevent collisions:

  1. One active offer narrative per user per week across channels
  2. Shared trait for "accepted offer" or "dismissed three times"
  3. Suppression if user resubscribes on any channel
  4. Consistent pricing across email landing and in-app paywall

Win-back flow branching on cancellation reason in Rheo

Metrics that matter

Track channel-specific and blended metrics:

MetricEmailIn-appBlended
Resubscribe ratePer send / cohortPer flow variant30-day win-back
Revenue recoveredLTV of won backsSamePayback vs discount cost
Survey completionN/AStep completionReason distribution
Uninstall rate post-cancelN/AOptionalGuardrail

Primary success: net revenue recovered after discounts and fees, not modal acceptance rate alone.

Rheo's role in the stack

Rheo does not send email. It owns:

  • Cancel survey and branching flows
  • Win-back screen sequences published over the air
  • Integration with RevenueCat paywall nodes for resubscribe
  • Step analytics on which win-back paths recover revenue

Pair with your ESP (Customer.io, Braze, etc.) or RevenueCat's lifecycle tooling for email. Trigger emails from the same churn webhooks that arm in-app channels.

For iOS win-back offers, combine Apple's promotional mechanics with in-app presentation patterns documented in Rheo's lifecycle content. Eligibility rules change; verify current Apple developer documentation before shipping.

Webhooks and triggers (technical overview)

In-app win-back flows start from events your backend or billing provider already emits:

Event sourceTypical signalIn-app action
RevenueCat webhookCANCELLATION or EXPIRATIONArm win-back channel on next open
App Store Server NotificationsDID_CHANGE_RENEWAL_STATUSSurvey or offer eligibility
Product analyticsSession after 14 days idleRe-engagement beat

Rheo resolves the appropriate channel when the SDK requests a flow for that moment. You do not need a new binary to change copy or branch rules after the trigger fires. Email can subscribe to the same webhooks so both channels stay synchronized.

Engineering checklist:

  1. Map churn events to a stable user id shared with the Rheo SDK
  2. Avoid duplicate prompts if email deep link and in-app flow fire the same day
  3. Log dismissals as traits so users are not nagged every session

Win-back offers touch pricing and marketing law:

  • Honor marketing opt-out for email even if in-app flows remain eligible
  • Present subscription terms clearly on in-app offer screens
  • Follow Apple and Google promotional offer rules; custom coupons on iOS have constraints
  • Document discount eligibility in your finance model

When in doubt, pair legal review with a small holdout before rolling aggressive offers to all churned users.

Sample calendar: first 90 days after launch

WeekEmailIn-app
1Acknowledgment templateCancel survey plus reason branch
2–4Build day 7 value emailOffer screen for price-sensitive cancels
5–8Measure resubscribe per sendA/B offer copy in Rheo
9–12Add day 30 product updateRe-entry flow for returning opens

Adjust cadence to your churn volume. Low churn apps need lighter touch; high volume subscription apps benefit from tighter coordination between ESP and in-app triggers.

Summary

Email win-back scales reminders and narrative across users who no longer open the app. In-app win-back captures context at cancel time and presents native offers when users return. Combine them with shared traits, non-overlapping offers, and disciplined measurement.

Start with cancel reason capture in-app, add a measured email sequence, and iterate both sides with the same definitions of churn and recovery.

Start for free and publish your first in-app win-back flow in Rheo.