churn-prevention

churn-prevention

Team Pick
Lifecycle & Email
Corey Haines
Cancel flows, save offers and failed-payment recovery treated as two problems: the customer who decided to go, and the card that quietly stopped working.
REPO
coreyhaines31/marketingskills
INSTALL
npx skills add
NEEDS
Churn and billing data
Last updated
August 4, 2026

Preview

churn-prevention

What it is.

You split your churn into voluntary and involuntary and name your billing provider. It then designs the cancel flow, the exit survey, save offers that branch on the reason given, and a dunning sequence for failed payments.

Recovered payments need no persuasion, only retries and a good email, which is why the involuntary half is usually the cheaper win. Save offers get tied to your activation metric, so you stop discounting for people who never reached value.

What you get.

  • A cancel flow design, in place of a button that cancels on the first click
  • Save offers that vary by the cancellation reason given
  • A dunning and failed-payment recovery sequence
  • An exit survey structure that produces reasons you can act on
  • An early-warning read that keys off engagement drop-off, well before the cancel page
HOW TO USE IT

How to set it up.

1

Install with npx skills add coreyhaines31/marketingskills --skill churn-prevention -a claude-code.

2

Split your churn number into voluntary and involuntary before anything else. If you cannot, that is the first task.

3

Name your billing provider. Stripe, Chargebee, Paddle, Recurly and Braintree each change what a dunning sequence can do.

4

Say whether you support pausing or downgrades, because both are save offers that cost you less than a discount.

5

Give it your activation metric, so save offers are only aimed at customers who reached value.

6

Design the cancel flow before the save offer. An instant cancel button has nowhere to put an offer.

Pricing Plans

Free. MIT license.

Checked against the repo in July 2026.

Use cases

Splitting an unsplit churn number

You have one blended churn rate. Bring the raw cancellations and it separates the customers who decided to leave from the cards that failed, and the involuntary half is usually the cheaper work.

Dunning for failed cards

Name your billing provider and hand over the churn caused by failed payments. It designs the retry timing and recovery emails around what that provider supports, and recovered payments need no persuasion.

Cancel flow with branching offers

Cancel is currently one click. It designs the flow and the exit survey together, then writes save offers that branch on the reason a customer gives.

Stopping wasted discounts

Give it your activation metric alongside the churn data. Save offers get aimed at customers who reached value, so nobody gets a discount for a product they never set up.

Best for

A churn number nobody has split

The voluntary and involuntary split usually reveals that a chunk of the problem is billing instead of product.

Designing a cancel flow from scratch

If cancel is currently one click, this gives you the flow, the survey and the offer logic in one pass.

B2C or prosumer subscriptions

Failed payments hit harder at low price points and high volume, which is where the dunning work pays back fastest.

Read the source

Published by Corey Haines. Opens in a new tab.
Open the Tool

Questions about churn-prevention

What is involuntary churn?
Which billing providers does it know?
Will it write the win-back emails?
What data should I bring?

Questions about Lifecycle & Email

Why separate voluntary from involuntary churn?
What's the earliest churn signal?
Strengths
  • Treats failed payments as its own problem with its own sequence, which is the cheapest retention work available.
  • Save offers branch on the stated cancellation reason instead of offering one discount to everybody.
  • Asks for the billing provider by name, so the recommendations are implementable instead of conceptual.
  • Ties save offers to the activation metric, so you stop discounting for people who never used the product.
Limitations
  • It designs the flow and someone still has to build it in your billing stack.
  • Without cancellation reason data from past churn the offer logic starts generic.
  • Last touched in May 2026, and named retention tools move faster than that.
Skip this if
  • Skip it if you already have a cancel flow with save offers inside it.

The team behind these plays.

We build inbound GTM engines for B2B software teams, and these are the plays we build from. Tell us the pipeline target and we'll show the plan under it.