Most customer success teams have a health score. Most of those teams don’t trust it.
That is not a technology problem. It is a design problem. The score was built from whatever data was easy to collect, not from what actually predicts whether a customer renews or churns. So it turns green when accounts are quietly disengaging, turns red for reasons nobody can explain, and gets overridden by CSMs who stopped checking it weeks ago.
Research backs this up: 67% of CS teams update their health scores only weekly, which means the information your team is acting on is already a week old before anyone sees it. In a fast-moving account, a champion can leave on Wednesday, feature adoption can collapse on Thursday, and your health score still shows green on Monday. By the time the score catches up, the conversation is already harder.
The fix is not more data points. It is a different starting point. This guide walks through how to build a customer health score from scratch in a way that actually changes what your team does, not just what your dashboard shows.
Why Most Health Scores Fail Before Anyone Acts on Them
The failure usually starts in the first meeting where someone says, “What data do we have access to?” That question sounds reasonable, but it immediately sets you up for a score that measures what you can collect rather than what you need to know.
Two failure modes cover the vast majority of broken health scores.
Too many signals, none of them trusted
The instinct is to add everything. Login frequency, open support tickets, NPS score, contract length, last email date, feature usage, CSM sentiment, seat count. Each one feels important on its own. Together, they create a score that moves without explanation, shifts for no clear reason, and requires a spreadsheet to decode. When a CSM cannot explain in one sentence why an account is red, the score has already failed. Complex scores do not get used. They get ignored.
On Across the Funnel, Angeline Gavino, VP of Customer Success & Support at Katalon, explained why her team had to rethink how they interpreted account health:
“Right now, the churn risk that I’m talking about and the expansion potential, these are all still based on assumption, based on our observation of how our customers behave in the past hypothesis.”
That is the trap most health scores fall into. The model looks structured, but underneath it, the signals are still educated guesses. Until those guesses are tested against actual churn, renewal, and expansion outcomes, the score is not really predicting customer health. It is just organizing assumptions in a cleaner format.
Signals that feel important but do not predict outcomes
NPS is the most common offender. It is a lagging indicator, captured infrequently, and customers who give high NPS scores churn regularly. Login count is another. An account logging in daily and never reaching value is not engaged. It is circling the runway. A health score that treats logins as a proxy for health is measuring presence, not outcomes.
The deeper problem is that most CS teams skip the step of checking whether their signals actually correlate with churn and expansion. They assume. They assign weights based on gut feel and then wonder why the score keeps missing accounts before they leave.
Step 1: Define What “Healthy” Means for Your Specific Product
Before you choose a single signal, you need to define the outcome you are trying to predict. This is the step most teams skip, and it is the reason most health scores fail.
Healthy is not a universal concept. It means something different for a project management tool than it does for a compliance platform or a sales engagement tool. Your definition of health has to come from your own customers, not from a blog post or a competitor’s framework.
Start with your best and worst accounts
Pull your five most retained accounts. The ones with low churn risk, a history of expansion, and strong relationships. What do they have in common at the product level? How frequently are key features being used? How many seats are active? When did the executive sponsor last engage? What does their first 90 days look like compared to an average account?
Then do the opposite. Pull the last five accounts that churned without warning. What did they look like three months before the cancellation? One month out? Which signals were already deteriorating that nobody caught?
The patterns across both exercises give you a working definition of health grounded in real data. Not theory. Not a template. Your customers.
Find your success milestone
Every product has a moment where a customer has truly adopted it. They have integrated it into a core workflow. Removing it would cause friction. Customers who reach this milestone churn at a fraction of the rate of those who do not.
Your job is to find that milestone for your product. It might be a specific feature being used by a certain number of seats within the first 30 days. It might be a workflow completion event. It might be the first time a customer runs a report that uses data from a third-party integration. Whatever it is, tracking progress toward that milestone is more predictive than any single metric you can put on a dashboard.
If you do not know what your success milestone is yet, look at your best accounts and ask: what did they do in the first 60 days that your churned accounts did not?
Step 2: Choose Signals Across Four Categories
Once you know what you are trying to predict, signal selection becomes much cleaner. You are not adding everything available. You are choosing the signals most likely to tell you whether an account is moving toward or away from health.
Four categories cover the signals that actually matter for most B2B SaaS products.
Product usage signals
These carry the highest predictive weight for most products, and they are also the most commonly misread.
Depth measures whether users are accessing the features that deliver core value, not just the surface of the product. Breadth measures whether multiple seats are active or whether usage is concentrated in one person. Frequency tracks whether customer engagement is stable, growing, or declining. Momentum reveals whether a new account is accelerating into adoption or plateauing two weeks after onboarding.
Login frequency alone is not a product usage signal. It tells you someone opened the app. It tells you nothing about whether they got value from it.
Relationship signals
- Executive sponsor engagement: When was the last meaningful interaction with a decision-maker? Not an auto-reply, a real conversation.
- Champion tenure: How long has your main contact been in their role? When a champion leaves, churn probability rises significantly. Most CS teams track this in a personal note somewhere, if at all.
On Across the Funnel, Christian Kletzl, AI GTM at UserGems, explained why tracking people movement inside customer accounts matters so much:
“We check every customer account regularly to see who’s leaving and who’s moving in. If a key champion leaves, it’s one of the biggest churn risks, so we act immediately to establish a new one. On the flip side, when a new decision-maker joins, they often evaluate existing tools. By engaging them early, we ensure our product stays top of mind.”
This is why relationship data belongs inside the health score. A usage dip matters. A support escalation matters. But a champion leaving can change the entire account narrative overnight. If that signal lives only in LinkedIn, a CSM’s notes, or someone’s memory, the health score is incomplete before the next renewal conversation even starts.
- Multi-threading: Is only one person engaged with your product, or are multiple stakeholders involved? Single-threaded accounts are fragile. One departure can end the relationship entirely.
- CSM sentiment: A structured field, not free text. The CSM’s qualitative read on the account, captured consistently so it can be trended over time.
Commercial signals
- Renewal date proximity: Signals should be weighted more heavily as renewal approaches. The same yellow flag at 180 days out looks very different at 45 days.
- Expansion history: Has this account ever grown? What triggered it? Accounts with a history of expansion behave differently from those that signed a single contract and never changed.
- Contract structure: Month-to-month accounts have a lower barrier to leave than annual contracts. This changes the urgency of your response to other signals.
- Billing health: Failed payments and delayed invoices are often the first sign of a broader problem at the company. Do not treat them as administrative issues.
Support and sentiment signals
- Open ticket count and age: A ticket open for 30 days is different from one opened yesterday. Track both.
- NPS and CSAT trend: Direction matters more than the score itself. A declining trend from 8 to 7 is more concerning than a stable 6.
- Escalation history: Any account that has escalated in the last 90 days needs context attached to every other signal. Escalations change the meaning of everything else.
Across all four categories, your target is five to eight signals total. Not thirty. Five to eight, chosen because they correlate with outcomes, sourced consistently, and explainable to a CSM in plain language.
Step 3: Weight Your Signals by Outcome Correlation, Not Intuition
You have your signals. Now you need to know which ones carry more weight. The instinct is to weight by perceived importance. That instinct is almost always wrong.
The signals that feel the most urgent, support tickets, NPS scores, CSM sentiment, are often the most lagging. By the time they surface, the root cause has been present for weeks. The signals that are actually most predictive, product adoption depth, champion stability, usage momentum, often do not create immediate alarm. They change slowly, and slow changes are easy to dismiss.
A simple weighting exercise without a data science team
Pull your last ten to fifteen churned accounts. For each one, go back ninety days before the cancellation date and note which signals were already deteriorating. Count how many times each signal appears across all churned accounts. The signals that appear most frequently are your highest-weight signals.
Run the same exercise on your ten healthiest accounts and note which signals were consistently strong. The combination tells you what predicts outcomes in your specific product and customer base.
Assign weights proportionally to frequency. If core feature adoption showed early deterioration in twelve out of fifteen churned accounts, it carries more weight than NPS, which showed warning signs in four. This is not a perfect science, but it is dramatically more accurate than assigning weights by feel.
Revisit your weights every quarter as you accumulate more outcome data.
A note on vertical-specific weighting
The signals that matter most are not universal across SaaS categories. For a FinTech product, API call volume and transaction throughput are leading indicators of health that a generic weight model ignores entirely. For HR Tech, low usage in Q1 can look alarming but reflect a normal seasonal pattern, not a churn risk. For MarTech, champion turnover is the single highest-weight signal because average CMO tenure runs under 43 months.
Build weights for your product and your customers. Borrowing weights from a case study about a different product in a different vertical is one of the most common ways health scores end up uncalibrated.
Step 4: Set Thresholds That Trigger Action, Not Just Awareness
A customer health score is only useful if it tells your team what to do. A score that changes color without specifying a response is just a status indicator. It creates awareness without creating action.
This is where most health score implementations fall apart. The threshold exists. The CSM sees red. And then nothing happens, because the threshold was not connected to a playbook.
Move past red, amber, green
The three-band convention is intuitive and almost universally misused. Amber becomes the default state for 60% of accounts and stops meaning anything. CSMs learn to treat amber as fine, because responding to every amber account is impossible and no one has defined what responding looks like.
Better thresholds are built around specific trigger conditions attached to specific responses.
- Core feature adoption drops 20% week-over-week for two consecutive weeks: CSM receives a signal with an account brief and suggested next step
- Champion has been in role less than 90 days and NPS trend is declining: flag for executive sponsor outreach
- No product usage in 14 days and renewal is within 60 days: escalation to CS Manager with meeting request template
The threshold answers one question: what does the CSM do right now? If the answer is not obvious from the threshold, the threshold is not specific enough.
Tier your response by severity
Not every signal demands the same response. Tiering reduces alert fatigue and makes it easier for CSMs to prioritize.
Low-severity signals (slight usage dip, one inactive seat): automated, personalized nudge. A helpful guide, a case study, an in-app prompt. Light-touch re-engagement without burning relationship capital.
Medium-severity signals (key user inactive for a week, core feature adoption stalling): personal check-in from the CSM. Direct, open-ended, curious in tone. Not an intervention, a conversation.
High-severity signals (champion departure, cancellation page visited, sharp drop in all product activity): immediate high-touch response. Phone call, not email. The goal is to open a real conversation before a decision is finalized.
Step 5: Keep It Simple Enough That Your Team Trusts It
Complexity is the enemy of adoption. A health score with thirty variables and an opaque algorithm will be ignored by the same CSMs it was built to help. They will look at it, shrug, and go back to their own judgment.
Trust requires three things.
Transparency: the signals contributing to a score should be visible, not buried. A CSM looking at a red account should be able to see immediately which signals moved and by how much. No black boxes.
Stability: a score that shifts dramatically based on minor week-to-week fluctuations trains the team to ignore it. Use rolling averages for usage signals. Require signals to hold for at least seven days before they trigger a threshold change. Stability makes the score feel reliable.
Auditability: when a score changes, the reason should be documented. When an account moves from green to red, the change log should answer what moved, by how much, and when. Teams that cannot trace a score change lose confidence in the score itself.
Build in a quarterly calibration review
Health scores are not set-and-forget systems. Every quarter, run a simple check: did accounts that scored red churn at a higher rate than green ones? Did expanding accounts show strong signals consistently before expansion? If the score is not predicting outcomes, something in the model needs to change.
Most teams skip this review. It is the single most effective thing you can do to keep a health score accurate over time. Block an hour with your CS Ops or RevOps team once a quarter. Bring the churned account list and the expansion list. Ask whether the score would have flagged them correctly. Adjust accordingly.
The Ceiling of a Spreadsheet-Based Health Score
Everything in this guide can be implemented manually. A spreadsheet, a weekly update process, and a disciplined team can get you a long way. But the ceiling is lower than most CS leaders realize.
The 67% of teams updating scores weekly are doing it by hand. That means the score is a week old before anyone sees it. An account can go from healthy to critical in three days. A champion can leave on Wednesday. Usage can collapse after a product update on Friday. A score updated on Monday morning has missed all of it.
The more meaningful gap is signal connection. A spreadsheet cannot draw a line between a champion departure logged in the CRM, a product usage drop tracked in your analytics tool, and a support escalation sitting in your help desk. Connecting those signals into a coherent picture of one account takes a CSM 30 to 40 minutes of context-gathering across multiple tabs. At scale, that math does not work.
The CS teams moving past this ceiling are the ones building or buying systems that update signals in real time, surface alerts in the tools CSMs already use (Slack, CRM), and connect qualitative context with quantitative usage data automatically. Platforms like Hyperengage are built specifically to do this for post-sales teams, replacing the manual signal-hunting that consumes a significant portion of every CSM’s week.
The goal is not a better score. It is a system where the right accounts surface to the right person at the right time, with enough context to act immediately.
Conclusion
A customer health score that nobody trusts is not a neutral tool. It is an active liability. It creates false confidence when accounts are green, generates noise when they are red, and trains your team to trust their gut over the system you built.
Building a score that actually changes behavior starts before you pick a single signal. It starts with your own churned accounts, your own retained accounts, and an honest answer to the question: what does healthy actually mean for your product?
From there, the steps are disciplined but not complicated. Choose signals across four categories. Weight them by outcome data, not intuition. Connect every threshold to a specific playbook. And keep the score simple enough that a CSM can explain it to themselves in thirty seconds.
The teams that do this well do not have more data. They have a clearer picture of the accounts that need attention today, and a team that trusts the system enough to act on it.
Start with your last five churned accounts. That is enough to get moving.


