Cluster the real cancellation reasons by location — and stop calling 60% of them 'other'
Per-location cancellation-reason clustering from free-text exit surveys, weighted by the LTV cohort of who actually walked away.
The problem
You run an 80-location dental DSO with a $79-per-month membership program. 12,000 active members. About 240 cancel each month — 2% monthly churn that you cannot quite explain. Your cancellation flow captures the free-text reason. Your analyst manually buckets them quarterly into 'moving,' 'money,' 'service,' 'no longer need.' Roughly 60% end up in 'other' because the buckets are too coarse to distinguish 'moving out of state' from 'switched dental insurance' from 'dissatisfied with the Phoenix clinic specifically.' Phoenix churns 4% a month. Denver churns 1.8%. You do not know why. Gainsight ships generic churn metrics without per-location reason clustering. Typeform collects the responses but does no semantic work on them. The default outcome is a quarterly churn review that surfaces patterns three months after the cancellations happened — by which point another 700 members are gone for the same reasons you finally identified.
What success looks like
Every free-text exit-survey response is clustered per location into a useful reason taxonomy — moving or location change, price sensitivity, service quality at this specific location, insurance change, dissatisfaction with staff, competitor poach, scheduling friction, scope mismatch, medical event, life change, hidden-fee frustration, payment-method issue, no longer needed, dependent change, scope creep, brand-trust loss. The classifier improves as new patterns appear. Each reason is weighted by the LTV cohort of the member who left, so losing a high-LTV-cohort member to scheduling friction matters more than losing a brand-new member to price. Per-location attribution shows which channel that customer came in on. State-by-state and federal rules apply automatically — no PHI is stored as a reason, FDA and FINRA constraints are honored. Multi-banner operators see one consolidated reason view. Every classification is preserved with the free-text input, the bucket, the confidence, and the compliance attestation.
How most operators solve this today
Five categories of tools touch cancellation-reason analysis today. None of them cluster reasons per location with LTV weighting:
Churn analytics platforms (Gainsight, ChurnZero, Totango, Custify, Vitally, Catalyst, Planhat)
$25,000 to $250,000+ per year enterprise tiers
Generic churn metrics. They do not cluster free-text per location.
Exit-survey and customer research tools (Typeform, SurveyMonkey, Qualtrics CoreXM, Hotjar, Refiner.io, Sprig)
$25 to $200,000+ per month or year
They collect the free text. They do not semantically classify it per location.
Subscription management platforms (Recurly, Chargebee, Stripe Billing, Zuora, Maxio, Paddle)
Free to $2,000+ per month, plus per-transaction, plus enterprise tiers
Run the cancellation flow. No reason analytics.
In-house data engineering with manual analysis
$130,000 to $200,000 per year per role, plus four to twelve weeks per cycle
Custom Tableau or Looker dashboards plus manual categorization. The taxonomy is always behind reality.
Build it in-house
Engineering plus data-science work, plus ongoing maintenance
The LLM classifier, the per-location LTV weighting, and the per-state HIPAA boundaries all have to stay current.
What changes when this is an agent skill
Every free-text exit-survey response is clustered per location into a useful reason taxonomy — moving, price, service quality at this specific location, insurance change, dissatisfaction with staff, competitor poach, scheduling friction, scope mismatch, medical event, life change, hidden-fee frustration, payment-method issue, no longer needed, dependent change, scope creep, brand-trust loss. The classifier expands as new patterns appear. Each reason is weighted by the LTV cohort of the member who left — losing a high-LTV-cohort member to scheduling friction surfaces with more urgency than losing a new member to price. Per-location attribution shows which acquisition channel that customer came from, so you can see whether a friction pattern hits one customer source harder than another. The reason picture works alongside your churn prediction, save-flow scoring, pre-emptive intervention, and save-offer management because they all share the same customer record. State-by-state and federal rules apply automatically — no PHI flows into the stored reasons, FDA and FINRA constraints are honored where they should be. Multi-banner operators see one consolidated reason view. Every classification is preserved with the free-text input, the bucket, the confidence, and the compliance attestation.
Agents that include this skill
Skills live inside agent rentals. To get this skill in production, hire any of the agents below — context-tuning at onboarding is included in the first month.
Subscription Lifecycle Orchestration Agent
Predicts churn, scores save-flow propensity at the cancellation surface, and triggers email + SMS interventions 7-21 days ahead.
FAQ
- What does cancellation-reason clustering actually do?
- It classifies every free-text exit-survey response per location into a useful reason taxonomy, weighted by the LTV cohort of the member who left. You stop seeing 60% of cancellations land in 'other' and start seeing the actual patterns.
- How is this different from Gainsight, ChurnZero, Totango, Custify, or Vitally?
- Those track churn metrics. They do not cluster free-text reasons per location. The 'why' is still on a spreadsheet.
- How is this different from Typeform, SurveyMonkey, Qualtrics, Hotjar, or Sprig?
- Those collect the responses. They do no semantic classification.
- How is this different from Recurly, Chargebee, Stripe Billing, Zuora, Maxio, or Paddle?
- Those run the cancellation flow. They do not analyze why people canceled.
- Which reason buckets does it use?
- Moving, price sensitivity, service quality at the specific location, insurance change, dissatisfaction with staff, competitor poach, scheduling friction, scope mismatch, medical event, life change, hidden-fee frustration, payment-method issue, no longer needed, dependent change, scope creep, brand-trust loss. New patterns get added as they show up.
- How does the LTV weighting work?
- Each canceled member is matched to their LTV cohort. Losing a high-LTV-cohort member to scheduling friction surfaces with more weight than losing a brand-new member to price.
- How is HIPAA handled when patients explain why they left?
- PHI is stripped before storage. The classifier can know 'patient cited dissatisfaction with treatment' without storing 'patient John Smith mentioned his root canal.'
- Can a retention review trace every classification?
- Yes. Every classification is preserved with the free-text input, the bucket, the confidence, and the compliance attestation.