Turn churn themes into an early-warning system.
Reads churned and downgraded accounts, extracts the themes, and flags active accounts that resemble recent churners.
Inside: The theme extraction, the early-warning checklist, and a predictive read on the active book.
Install it in one line, or paste it in.
~/.claude/skills/ and runs automatically when it is relevant.Connect your context. Set it to your motion.
it reads churn, downgrades, renewal dates, and notes automatically, across the whole book.
adds usage decline, the single strongest churn tell, so a quiet account gets caught before the renewal call.
adds ticket volume and sentiment, so a frustrated account surfaces early.
This was built for a B2B SaaS org with recurring subscriptions. Set these to your stack:
Run any churn taxonomy you like. The skill groups your churn into your themes and scores your active book against them, so point it at your fields, not anyone else's.
| Set this | What it is | Default / Example |
|---|---|---|
| CHURN filter | how you mark a loss of revenue | Status = Churned OR downgraded |
| WINDOW | the churn-date range to analyze | trailing 4 quarters |
| REASON field | your churn-reason picklist | Churn Reason |
| NOTES field | free-text renewal or churn notes | renewal notessave-attempt notes |
| VALUE field | contract or recurring value | ARRMRR |
| TENURE field | how long they were a customer | months since first close |
| USAGE source | product engagement over time | loginsactive seatskey events |
| MIN_SAMPLE | fewest churns before a theme counts | 5 (raise if you churn a lot) |
Everything the skill does, in full.
Reads your churned and downgraded accounts and pulls out why they left: the themes, the shared conditions, the moments it started slipping. It turns those causes into an early-warning checklist, then runs that checklist across your active book and flags the customers who look like the ones that just walked. The point is not a churn number for the board. It is a short list of current accounts to save while there is still time.
- 1Churn theme extraction
Group every churned and downgraded account across reason, segment, tenure, value, and (if connected) usage. Report only the themes that clear MIN_SAMPLE. For each theme, show the share of churn, the revenue behind it, and the average tenure at churn, so a high-count theme and a high-dollar theme are both visible. Treat a downgrade as churn's early cousin, not a separate story: the same causes usually run underneath.
- 2Cause vs symptom
Separate what you can see from what actually drove it. A dead login count is a symptom. The cause is usually one of a few things: the champion left, the value was never realized, onboarding stalled, a merger or budget cut hit, or a competitor displaced you. Name the cause, because the checklist has to catch the cause early, not the symptom at renewal.
- 3Early-warning checklist
Turn the top causes into a short list of observable signals that appear before churn, not at it: usage down X percent over N weeks, champion gone quiet or departed, no executive contact in the last quarter, support tickets spiking, a renewal inside 90 days with no engaged buyer. Each signal is something you can check on a live account today.
- 4Predictive read (active book)
Run the checklist across your active accounts and score each one by how many warning signals it hits. Return a ranked watchlist, highest risk first, with the exact signals each account trips and how closely it resembles a specific churn theme. This is the payoff: the accounts to save this quarter, named, before the renewal call.
- No theme reported below MIN_SAMPLE. One angry cancellation is not a pattern.
- Usage-decline claims show the trend, not a single reading. A quiet week is not churn.
- Every at-risk account lists the specific signals it trips, never just a risk score.
- Cause is grounded in a field, a note, or a usage trend, never assumed from the logo.
CHURN ANALYSIS · 23 churned + downgraded, trailing 4 quarters Churn themes Theme Share Revenue Avg tenure Champion left, no backup 35% $180K 14 months Never reached first value 26% $130K 7 months Price at renewal 22% $95K 22 months Merger / budget cut 17% $70K 19 months Early-warning checklist (the signals that came first) [ ] Usage down 40%+ over trailing 8 weeks [ ] Champion departed or dark 60+ days [ ] No exec contact in the last quarter [ ] Renewal inside 90 days, no engaged buyer [ ] Support tickets spiking Active accounts that look like recent churners (highest risk first) Account Signals tripped Resembles Kestrel Co usage -52%, champion dark "champion left" Alderman onboarding stalled, low usage "never reached value" Pentworth renewal in 60d, no buyer "price at renewal" Next move: 1. Kestrel. Find a second champion now. The first one is gone. 2. Alderman. Restart onboarding before renewal. It never got to value. 3. Add a usage feed. It is your single strongest early tell and it is missing.
MIN_SAMPLE (5), the trailing-4-quarter window, and the usage-decline cutoffs are defaults, not laws. They suited a subscription business with steady churn volume. If you churn a small number of large accounts, widen the window so the themes are not built on a handful of exits. Usage thresholds should match your product's natural rhythm: a weekly tool and a quarterly tool decline differently. The checklist is always built from your own churn, so it warns you about your accounts, not a benchmark's.
Where an operator takes this next.
Running the postmortem by hand catches this year's pattern. Here's how it starts catching next year's churn before it happens.
Catching the pattern once is a report. Watching for it every week is retention.
Connect Salesforce and Amplitude to a scheduled Claude task that reruns the early-warning checklist against every live account every Monday, not just when someone remembers to ask.
Wire a Slack message to the account owner the moment an account trips two or more warning signals, so the save attempt happens in month two, not the renewal call.
Log every successful save in a data store so the checklist itself improves: which signals actually predicted churn versus which ones were noise.
One skill is the on-ramp.
A single skill does one job. Chained into a playbook, or run as a full build, it becomes a system. Here is where this one plugs in.