Best Practices

How to build a customer health score that actually predicts churn

Step-by-step guide to building a customer health score. Components, weights, thresholds, and common mistakes. With examples for SaaS teams at every stage.

A customer health score is a single number (typically 0-100) that tells you how well a customer is doing. A high score means they’re engaged, getting value, and likely to renew. A low score means they’re disengaging and at risk.

The concept is simple. Getting it right is not.

Most SaaS companies either don’t have a health score at all, or they have one that nobody trusts because it doesn’t match reality. This guide covers how to build one that works — from component selection to weight tuning.

The three properties of a useful health score

1. It predicts outcomes

A good health score correlates with retention. If your highest-scoring customers churn at the same rate as your lowest-scoring customers, your score is noise.

2. It’s actionable

“Health score: 42” is useless unless you know why it’s 42. A good health score breaks down into components you can act on: “Activity: 8/30, Feature adoption: 20/30, Engagement: 14/40.”

3. It updates automatically

A health score that requires manual input is a health score that’s always outdated. Automate the inputs so the score reflects reality in real-time.

What to include in your health score

Component 1: Product activity frequency

What it measures: How often the customer uses your core product functionality.

How to measure it: Count key actions per time period. For example:

  • Orders created per week
  • Documents uploaded per week
  • API calls per day

Why it matters: Active customers renew. Inactive customers churn. Activity frequency is the strongest predictor of retention for most SaaS products.

Example thresholds:

Activity levelScoreWhat it means
5+ actions/weekFull pointsPower user, highly engaged
2-4 actions/week60% of pointsRegular user, healthy
1 action/week30% of pointsLow usage, monitor closely
0 actions/week0 pointsInactive, at risk

Component 2: Feature adoption

What it measures: How many of your key features the customer has adopted.

How to measure it: Binary check — has the customer used feature X? For features that can be “disabled,” track enabled/disabled state.

Why it matters: Customers who use more features are stickier. They’ve invested more time learning your product and get more value from it. Single-feature customers are easy to replace.

Example scoring:

FeaturePointsRationale
Core integration connected10Required for value
First entity created10Proof of activation
Bulk import used5Advanced usage
API key generated5Developer engagement

Component 3: Engagement recency

What it measures: When was the last time the customer did something?

How to measure it: Days since last meaningful activity.

Why it matters: A customer who was active 2 days ago is different from a customer who was active 30 days ago — even if their total activity count is the same.

Example thresholds:

Days since last activityScoreWhat it means
0-3 daysFull pointsRecently active
4-7 days70% of pointsGetting quiet
8-14 days30% of pointsWarning sign
15+ days0 pointsGone quiet

Component 4: Onboarding completion

What it measures: How far through your setup/onboarding process the customer has progressed.

Why it matters: Customers who don’t complete onboarding are 3-5x more likely to churn in the first 90 days. If they never get to value, they never renew.

Component 5: Metadata and subscription signals

What it measures: Non-product signals that indicate health.

Examples:

  • Subscription status (active, trial, past_due)
  • Last login date
  • Support ticket frequency (high volume can indicate frustration)
  • NPS score (if available)

How to assign weights

There’s no universal formula. Weights depend on your product and what predicts retention in your business. Start here and iterate:

ComponentSuggested starting weightRationale
Product activity frequency30-40%Strongest predictor for most SaaS
Feature adoption20-30%Stickiness indicator
Engagement recency15-20%Timeliness signal
Onboarding completion10-15%Critical for first 90 days
Metadata signals5-10%Supporting context
Total100%

How to iterate

  1. Start with the weights above
  2. Run for 30 days
  3. Check: do the lowest-scoring accounts match the ones you know are at risk?
  4. Adjust weights. If activity matters more than you thought, increase it. If feature adoption doesn’t predict churn, reduce it.
  5. Repeat quarterly.

Five health score mistakes to avoid

1. Too many components

10+ components dilute the signal. Stick to 3-5 that actually predict outcomes. Every component you add makes the score harder to interpret.

2. Equal weights

Not all signals are equal. If you weight everything at 20%, you’re saying login frequency matters as much as product usage. It doesn’t.

3. Lagging indicators only

NPS scores arrive quarterly. Support tickets happen after the problem. Use leading indicators (activity frequency, feature adoption) that show problems before the customer notices.

4. Binary thresholds

“Active = 100 points, Inactive = 0 points” creates a score with no gradient. Use tiered thresholds so the score responds to changes in behavior, not just on/off states.

5. Never recalibrating

Your product changes. Your customers change. A health score model that was accurate 6 months ago might not be accurate today. Review and adjust quarterly.

What the numbers mean

RangeLabelWhat it meansAction
75-100HealthyEngaged, getting value, low churn riskExpansion opportunities, advocacy
50-74ModerateUsing product but not fully engagedMonitor, encourage deeper adoption
25-49At RiskDeclining engagement, warning signsProactive outreach, intervention
0-24CriticalBarely using product, likely to churnUrgent intervention or acceptance

Your options

ApproachSetup timeCostProsCons
Spreadsheet1 dayFreeSimpleManual, always outdated, doesn’t scale
SQL queries1-2 weeksFree (if you have data)FlexibleManual runs, no dashboard, maintenance burden
LogoPulse10 minutes$0-349/moAuto-calculated, configurable, dashboard includedRequires SDK integration
Enterprise CS platform2-6 weeks$500-2,500+/moFull CS workflowOverkill for < 500 accounts
Custom build3-6 months$30,000-90,000Total controlEngineering cost, maintenance, opportunity cost

For a deeper comparison of these options, see LogoPulse vs the alternatives. If you’re weighing a health score against survey-based metrics, read customer health score vs NPS.

Build your health score in 10 minutes

LogoPulse automates everything in this guide: component scoring, weight configuration, automatic calculation, and trend visualization. See how health scores work in LogoPulse or start free with your first 20 accounts.

Frequently asked questions

What's a good average health score?
For a healthy SaaS business, aim for an average of 60-75. Below 50 suggests systemic engagement issues. Above 80 is excellent but might mean your thresholds are too generous.
How often should health scores update?
At least daily. Hourly is ideal. The more frequently scores update, the earlier you catch declining accounts.
Should I share health scores with customers?
Generally no. Health scores are an internal metric for your team. Sharing them can create confusion ("why is my score 65?") or gaming behavior.
Customer health score vs NPS — which is better?
They measure different things. NPS measures sentiment at a point in time. Health scores measure ongoing engagement. Health scores are better at predicting churn because they're based on behavior, not self-reported feelings. Use both if you can — NPS as a component of your health score.
What if I only have 20 customers?
Start simple. Even a 3-component health score (activity + feature adoption + recency) is better than no score. You can refine it as you grow.

Build your health score in 10 minutes

LogoPulse automates component scoring, weights, calculation, and trends. Start free with your first 20 accounts.