# How do you stop subscribers from cancelling with offers that fit their reason?

> Source: https://zubs.app/playbooks/cancellation-offers
> Title: Reduce Subscription Churn with Cancellation Offers — Zubs
> Author: Manuel Gutmann (https://zubs.app/authors/manuel-gutmann)
> Published: 2026-10-02
> Updated: 2026-10-09
> Language: en

## Short answer

Ask every cancelling subscriber why they're leaving, then answer each reason with its own offer: a skip for "too much product", a new date for timing problems, a one-time discount for price, and nothing where no offer helps. Zubs has the reasons, the offers and pause built into its cancellation flow.

## What problem does this play solve?

Subscribers cancel for different reasons, and one generic "Here's 10% off" answers almost none of them. Someone with a full cupboard doesn't need a discount; they need the next delivery to wait. Someone whose delivery keeps arriving at the wrong time needs a different date. A blanket discount gives margin away to people who would have stayed for a skip, and still loses the ones who leave over timing.

The metric this play moves is **[churn rate](https://zubs.app/glossary/subscription-churn-rate)**: cancellations in a period divided by the subscriptions that were active at its start.

## What's the play?

Give each reason the cheapest offer that solves it:

| Reason the subscriber picks  | Offer                               | Why it fits                                      |
| ---------------------------- | ----------------------------------- | ------------------------------------------------ |
| I have too much product      | Skip the next order                 | Solves the stockpile and costs you nothing       |
| Delivery timing doesn't work | Change the date of the next order   | Fixes the timing, not the price                  |
| Too expensive                | One-time discount on the next order | The one reason where price is the problem        |
| I need a break               | Skip the next order                 | Buys time; for longer breaks, subscribers pause  |
| Moving away                  | Change the delivery address         | Keeps them if you still deliver to the new place |
| Other                        | No offer, but ask for details       | Tells you which reason is missing from your list |

Two rules make it work. Keep the list short, four to six reasons plus "Other", so subscribers find themselves in it. And never block the exit: the offer appears inside the cancellation flow, and cancelling stays one click away.

"Too expensive" deserves a closer look. Often the price hasn't changed; the subscriber has stopped seeing what they get for it. The one-time discount wins you the next order, but reminding subscribers what each order brings is what keeps the reason from coming back.

The cheapest save happens before anyone opens the cancellation flow. Many cancellations come from a passing problem, such as a full cupboard, a trip or a tight month. Subscribers who know they can skip, move a date or pause sort it out themselves, so mention those options in your welcome and reminder emails, not only at the exit.

## How do you build it in Zubs?

- **Built in:** your own list of cancellation reasons, translated with Shopify's Translate & Adapt.
- **Built in:** one retention offer per reason: a skip, a new date, a one-time discount or a new address.
- **Built in:** a free-text answer for "Other", so subscribers can explain in their own words.
- **Built in:** pause in the customer portal, with the subscription resuming by itself.
- **With Klaviyo or Shopify Flow:** every cancellation you didn't save can start a follow-up email, a customer tag or a task for your team.

How the flow looks to subscribers is on the [cancellation flow page](https://zubs.app/features/cancellation-flow). Set it up in the help center: [cancellation reasons and retention offers](https://help.zubs.app/docs/subscription-management/merchant-portal/settings-general/).

## What should you measure?

In the [Zubs analytics dashboard](https://zubs.app/features/subscription-analytics):

- **Churn rate** and **cancellations** per month: the outcome. Compare the months before and after you set up the offers.
- **Early cancellations**: how many subscribers leave on the day they sign up or before their first renewal. If these are high, the problem sits earlier than the cancel button, and the [early-churn playbook](https://zubs.app/playbooks/reduce-early-subscription-churn) tackles it.
- **[Skip rate](https://zubs.app/glossary/skip-rate)**: expect it to rise a little as skips replace cancellations. That's the play working.

Read the free-text answers regularly, too. They show which reasons your list is missing.

## Bottom line

A cancellation reason is a request, and the right offer answers it: a skip, a new date or a one-time discount, with pause for longer breaks. Zubs has every piece built in, so your work is the mapping and a monthly look at churn.

## Frequently asked questions

### Which offer works best?

The one that matches the reason. A skip costs you nothing and answers "too much product"; a discount only makes sense when price is the reason.

### How big should the retention discount be?

Big enough to matter on one order, small enough that subscribers don't learn to threaten cancellation. Start around 15–20% and adjust.

### How do I see whether the offers work?

Compare churn rate, cancellations and skip rate for the months before and after you set up the offers.

### Can subscribers still cancel?

Yes. The offer appears inside the cancellation flow, and cancelling always stays one click away.

## Related

- [Feature: the cancellation flow and pause in detail](https://zubs.app/features/cancellation-flow)
- [Calculator: what churn costs you in MRR](https://zubs.app/tools/churn-calculator)
- [Playbook: keep new subscribers past their first 90 days](https://zubs.app/playbooks/reduce-early-subscription-churn)
- [Playbook: win back cancelled subscribers with Klaviyo](https://zubs.app/playbooks/win-back-cancelled-subscribers)
- [Feature: subscription plans and delivery intervals](https://zubs.app/features/subscription-plans)
- [Help center: cancellation reasons and retention offers](https://help.zubs.app/docs/subscription-management/merchant-portal/settings-general/)
