Independent insights on SaaS, technology, marketing and business Guidelines Editorial Policy
Customer Success

How to Build a Customer Health Score That Predicts Churn

Most health scores are a colour-coded summary of things you already knew. Here is how to build one that gives you warning in time to act.

A customer health score is supposed to tell you which accounts will churn while there is still time to do something. Most of them tell you which accounts are already in trouble, which everyone in the room knew anyway.

The difference comes down to three choices: which signals you use, how you validate them, and whether anyone is required to act on the output.

Start with the outcome, not the signals

Do not begin by listing everything you can measure. Begin with the churned accounts from the last twelve months and work backwards.

For each one, find the point 90 days before cancellation and ask what was observably different about that account compared to one that renewed. Usually three or four patterns emerge, and they are rarely the ones people assume. Support ticket volume, for example, is often higher in healthy accounts, because engaged customers ask more questions.

This exercise takes a day and saves a quarter of building a model on the wrong inputs.

The signal categories that tend to work

Depth of use, not volume of use

Total logins is a weak signal. Breadth — how many distinct users, how many distinct workflows, how many integrations connected — is a strong one, because it measures how embedded the product is. An account where one person runs one report is easy to cancel; an account where four teams depend on three integrations is not.

Trend, not level

A big account using the product less than it did three months ago is a stronger churn signal than a small account with consistently low usage. Always include a direction-of-travel component, usually a comparison of the last 30 days against the preceding 90.

Relationship breadth

How many contacts you have an active relationship with, and whether the original champion is still there. Single-threaded accounts are the most common source of surprise enterprise churn, and the signal is cheap to capture.

Outcome evidence

Whether the customer has told you, in any form, that the product achieved something. A reference, a case study agreement, a renewal reason written down. This is subjective and is still one of the best predictors available.

Keep it to five inputs

A fifteen-factor model is harder to build, harder to explain and no more accurate in most SaaS businesses. Five inputs with sensible weights will capture nearly all of the predictive value and, crucially, will be understood by the people expected to act on it.

A workable starting structure: active users as a share of licensed seats (30%), 30-day usage trend versus prior 90 (25%), number of core workflows used (20%), number of engaged contacts (15%), and support or sentiment flags (10%).

Resist adding a sixth input because someone in a meeting wants their function represented. Model complexity is where health scores go to die.

Validate it before you trust it

This step gets skipped almost universally, and it is the only thing that separates a health score from a decorated guess.

  1. Compute the score retrospectively for every account as of twelve months ago.
  2. Compare the scores against what actually happened over the following year.
  3. Check two things: did a high proportion of the accounts that churned score red, and did a high proportion of red accounts actually churn?

The second question is the one that fails. A score that marks 40% of the base red and catches most churners is useless operationally, because nobody can work 40% of the base. Tune the thresholds until red is small enough to act on and still catches the majority of departures.

Re-run this validation every six months. Scores decay as the product and customer mix change.

Make the score trigger an action

A health score with no attached playbook is a report. Each state needs a defined response and an owner.

  • Red — named owner, contact within 48 hours, documented recovery plan, escalation if no response in a week.
  • Amber — specific intervention tied to whichever input dropped: an adoption session if usage fell, an introduction request if the account is single-threaded.
  • Green — expansion conversation, reference request, or simply leave alone. Green accounts are where your expansion revenue comes from, and they are routinely ignored in favour of firefighting.

Common mistakes

Including the CSM’s opinion as a weighted input. It biases the score toward optimism and makes it impossible to validate. Capture sentiment separately and compare it to the data.

Scoring at the user level in a B2B product. Accounts renew, not users. Roll everything up to the account.

Updating monthly. Too slow. Weekly is the minimum useful cadence for a signal meant to give you warning.

Treating the score as a performance metric for CSMs. The moment the score affects someone’s review, it stops reflecting reality.

What to do with the first version

Ship something simple within a fortnight rather than designing the perfect model for a quarter. Three inputs in a spreadsheet, refreshed weekly, reviewed in a 30-minute meeting, with one named owner per red account, will outperform a sophisticated model that arrives in six months.

Then improve it with evidence: every time an account churns without having been red, work out which signal would have caught it, and consider adding that signal. Every time a red account renews comfortably, ask whether the threshold is too tight.

Scoring different segments differently

A single score across the whole base will misfire at both ends. An enterprise account with twelve seats and deep integration behaves nothing like a self-serve account with two seats, and thresholds tuned for one will be wrong for the other.

The practical answer is not separate models but segment-specific thresholds on the same inputs. Usage trend might trigger amber at a 20% decline for enterprise and 40% for self-serve, because small accounts are naturally more volatile.

Where segments genuinely need different inputs — for example, where enterprise health depends on integration depth and self-serve health depends on weekly active use — keep two short models rather than one long one. Two five-input models are easier to maintain and explain than one ten-input model with conditional weights.

Using the score for more than churn

Once validated, the same score answers several other questions, which is what justifies the effort of building it.

  • Who to ask for a reference. Green accounts with a documented outcome, rather than whoever the sales team remembers.
  • Where to point expansion effort. Healthy accounts near a plan limit are the highest-conversion expansion targets you have.
  • Which deals to be careful about. If accounts from a particular segment or acquisition channel score red disproportionately, that is a targeting signal for sales.
  • Whether a product change worked. Compare health scores for accounts that adopted a new capability against those that did not.

That last use is the one most teams miss. A health score built for customer success is also a reasonably good product analytics instrument, because it already aggregates the signals that matter at account level.

Frequently asked questions

How often should a health score be recalculated?

Weekly for most B2B products. Daily adds noise without adding warning; monthly is too slow to intervene.

Should the score be shown to customers?

Generally no, at least not as a score. Sharing the underlying adoption data — seats used, workflows adopted, outcomes achieved — is valuable and makes renewal conversations easier.

Do I need a dedicated tool?

Not at first. A warehouse query and a spreadsheet will carry you to a few hundred accounts. Buy tooling when the manual refresh becomes the bottleneck, not before.

What if we have too little data to validate?

With fewer than about 30 churned accounts, statistical validation is not possible. Use qualitative review instead: have the team look at every churn and judge whether the score would have flagged it.

Leave a Reply

Your email address will not be published. Required fields are marked *