Skip to main content
A churn intervention turns a leaving moment into a save. The user has decided your subscription no longer clears the bar (they declined your paywall, or they’re walking through your cancel flow), and instead of letting them go your app presents a premium brand offer: a real perk a brand funds to acquire customers. Because the offer offsets the user’s subscription cost, and the brand pays for it rather than you, staying subscribed suddenly costs the user less than leaving. This page is the canonical description of the use case; the integration walkthroughs are the SDK quickstarts in Integration surfaces.

The paywall decline

The highest-intent moment. The user has seen your paywall, knows your pricing, and is about to leave without purchasing. They’ve already shown purchase intent by getting this far, so an offer that changes the math feels like a personalized win rather than an interruption. Present it as the last screen between them and the exit, triggered when the user:
  • Taps “X” or swipes to dismiss the paywall.
  • Taps “Not now” or “Maybe later”.
  • Navigates back from a pricing screen.
This is the recommended starting point for a new integration: get this one moment working, measure, then expand to the cancel flow.

The cancel flow

The user is an existing subscriber actively trying to cancel. They’ve already paid before, so the willingness to stay is high if the math changes before the cancellation completes. Trigger the offer when the user:
  • Taps a cancel or unsubscribe button in your settings.
  • Opens subscription management with cancel intent.
  • Is about to be redirected to the store’s subscription-management page.
Never block the cancel flow. If the user dismisses the offer, your passthrough handler must let the cancellation proceed.

The mechanic

The save is a premium brand offer, paid for by the brand, never by you. A brand funds the perk (a free trial, a discount) as its cost of acquiring a customer; your app supplies the moment and the audience. This use case is SDK-led: your code detects the moment and calls the SDK, Encore renders the offer sheet, and your existing subscription plumbing (native StoreKit or Play Billing, or your subscription manager) completes any subscription purchase the offer leads to. On iOS you can pair the moment with an App Store promotional offer so the save also carries a discounted or free period; see Create a Promotional Offer.

The economics

Revenue from this use case lands in the paywallUplift metric: subscription revenue recovered from users who were about to leave. Two rules govern how it’s counted:
  • The lift is measured, never assumed. Encore compares exposed users against a holdout, so the subscription ARPU lift you see is incremental, not correlation.
  • The value compounds. A saved subscriber keeps renewing, so each save pays out over the subscriber’s remaining lifetime rather than once.

Integration surfaces

React Native and Flutter apps use the bridge SDKs over the same native trees: start from the React Native quickstart or the Flutter quickstart. The SDK is the lead surface for this use case: the moments live inside your app’s paywall and settings flows, and rendering the offer plus driving the subscription purchase is exactly what the SDK manages for you.