Home›Blog›Health scoring

Customer Health Scoring: What It Is, How It Works and a Model You Can Copy

Customer health scoring is a way to turn what you know about each customer into one number that predicts whether they will renew, expand or churn. A customer health score combines a handful of signals, such as engagement, product adoption, support load and commercial terms, weights them and maps the result to bands like healthy, watch and at risk.

Done well, it tells a CS leader where to spend the team's week. Done badly, it becomes another red dot nobody can explain. This guide covers the metrics, the maths and a worked example model you can adapt.

What a customer health score is for

A health score has one job: to rank your portfolio by risk early enough to act. It is not a report card on the CSM and it is not a prediction to the decimal point. If it reliably puts the accounts that later churn near the bottom of the list, and does so a quarter before renewal, it is doing its job.

That gives you a simple test for every design decision below: does this make the ranking more accurate, or just more complicated?

Customer health score metrics: what to include

Most good models use four to six signals, grouped into a few categories:

  • Engagement. Days since the last meaningful conversation, attendance at business reviews, whether an executive sponsor is still in place.
  • Adoption. Share of purchased seats that are active, use of the features the customer bought the product for.
  • Support. Open high-priority cases, escalations, time to resolution.
  • Commercial. Days to renewal, payment status, recent downgrades or discount requests.
  • Sentiment (optional). NPS or CSAT, if you collect it consistently. If only a third of accounts answer surveys, leave it out for now.

Pick signals that are already recorded for most accounts. An imperfect signal that covers every customer ranks the portfolio better than a perfect one that covers a few.

How health scoring works: an example model

Here is a simple model on a 0–100 scale. Each signal gets a score of 100, 60 or 20 depending on which range it falls into, and each group carries a weight.

Group (weight)Signal1006020
Engagement (30%)Days since last meaningful contactUnder 3030–60Over 60
Adoption (30%)Share of seats active in the last 30 daysOver 80%50–80%Under 50%
Support (20%)Open high-priority casesNone1–23 or more
Commercial (20%)Payment statusPaid on timeUp to 30 days lateOver 30 days late

Bands: 70 and above is healthy, 40 to 69 is watch, below 40 is at risk.

Worked example. An account last spoke to its CSM 45 days ago (60), has 85% of seats active (100), two open high-priority cases (60) and pays on time (100). The score is 0.3 × 60 + 0.3 × 100 + 0.2 × 60 + 0.2 × 100 = 18 + 30 + 12 + 20 = 80, healthy. If the same account stops logging in and active seats fall to 45%, adoption drops to 20 and the score falls to 56: watch. That move is the conversation a CSM should be having this week.

Treat the weights and ranges above as a starting template, not a standard. The next step is what makes the model yours.

Calibrate against renewals you already know

Before anyone relies on the score, run it against last year's book. Take the accounts that churned or downgraded and the ones that renewed cleanly, and check where the model would have placed them a quarter before renewal. If churned accounts landed in "healthy", one of your signals or weights is wrong. Adjust, re-run and write down why each weight is what it is.

Then segment. Enterprise customers go quiet between quarterly reviews and stay healthy; SMB customers who go quiet for three weeks are usually gone. Give each segment its own weights and thresholds instead of forcing one model on both.

Five mistakes that make health scores useless

  1. Too many signals. Fifteen inputs make the score impossible to explain and barely more accurate than five.
  2. No reason attached. If the score drops and nobody can say why in one sentence, the CSM who disagrees will quietly ignore it.
  3. One model for every segment. The same bar for a 40-seat customer and a 2,000-seat customer is wrong for both.
  4. Living outside the team's workspace. A score that sits in a separate tool or a monthly spreadsheet is seen at QBRs, not when it matters.
  5. Nothing happens when it drops. A score that only gets read is overhead. Crossing into "at risk" should notify the owner and create the next step.
The bar to set

A health score is ready when the account owner can explain any score in one sentence, and a drop starts work without anyone scheduling a meeting about it.

If your team runs on Salesforce, here is how to build a customer health score in Salesforce step by step, from fields you already have.

Frequently asked questions

What is health scoring in customer success?

Health scoring is the practice of combining signals about a customer, such as engagement, product adoption, support load and commercial terms, into one score that predicts renewal and churn risk. The score is usually 0–100 and mapped to bands like healthy, watch and at risk.

What metrics should a customer health score include?

Most models use four to six signals from four groups: engagement (recent contact, sponsor in place), adoption (active seats, key feature use), support (open high-priority cases, escalations) and commercial (days to renewal, payment status). Add sentiment such as NPS only if most accounts answer surveys.

How often should customer health scores be updated?

As often as the underlying data changes, ideally daily or whenever a record is updated. A score recalculated once a month catches problems too late to act on before renewal.

How do you know if a health score is accurate?

Back-test it: run the model on last year's accounts and check whether those that churned or downgraded would have scored low a quarter before renewal. If they landed in the healthy band, adjust the signals or weights and test again.