Customer Success Metrics That Actually Predict Churn (2026)
NPS and CSAT tell you what already happened. Here are the leading indicators from product usage data that actually predict churn before it's too late — and how to combine them into a health score.
TL;DR: Most CS teams track NPS and CSAT as their primary health indicators. These are lagging metrics — by the time they drop, the customer has already decided to leave. The metrics that actually predict churn come from product usage: login frequency decline, feature adoption drop-off, breadth-of-use contraction, and engagement velocity shifts. Combine them into a weighted health score and you can spot churn 60-90 days before renewal.
A VP of Customer Success once told me their team’s biggest win was getting NPS responses up to a 40% response rate. I asked how many accounts they lost to churn that quarter. The answer: 12, totaling $1.8M in ARR. Every single one of those churned accounts had an NPS score above 7.
NPS didn’t predict anything. It measured how polite the champion was.
Why are NPS and CSAT bad at predicting churn?
Because they measure sentiment, not behavior. And in B2B, sentiment is a terrible predictor of renewal.
Here’s what happens with NPS in practice: Your champion — the person who bought the product and has a career stake in its success — fills out the survey and gives you a 9. Meanwhile, their team of 30 has stopped logging in. The champion is happy. The account is dying.
CSAT has the same problem. It measures satisfaction with individual interactions (usually support tickets). An account can have perfect CSAT scores while simultaneously abandoning the product. They’re satisfied with your support team. They’re just not using your product anymore.
These are lagging indicators. They reflect a state that already exists. By the time NPS drops from 9 to 5, the decision to churn was made weeks ago. You’re measuring the echo, not the signal.
| Metric | Type | What It Measures | Churn Prediction Window |
|---|---|---|---|
| NPS | Lagging | Champion sentiment | 0-2 weeks (too late) |
| CSAT | Lagging | Support interaction quality | 0-2 weeks (too late) |
| Login frequency | Leading | Product engagement | 30-60 days |
| Feature adoption | Leading | Value realization | 45-90 days |
| Breadth-of-use | Leading | Team-wide stickiness | 60-90 days |
| Engagement velocity | Leading | Acceleration/deceleration trend | 30-45 days |
| Support ticket pattern | Leading (contextual) | Frustration signals | 15-30 days |
What product usage metrics actually predict churn?
Six leading indicators from product data, ranked by predictive strength. Each one tells you something different about account health — and none of them require a survey.
1. Login frequency decline
The most basic and most reliable signal. If an account that used to have 25 active users per week now has 8, something changed. You don’t need machine learning to figure this out.
The key is measuring against the account’s own baseline, not a global average. An account with 5 users logging in 3x/week is healthy. An account with 200 users where only 12 log in weekly is in trouble — even though 12 is higher than 5 in absolute terms. Relative decline is the metric.
Track it as a percentage: (current weekly active users / trailing 30-day average weekly active users). When that ratio drops below 0.7, you have a churn risk.
2. Feature adoption drop-off
Accounts don’t churn from your product all at once. They churn feature by feature. First they stop using the advanced reporting. Then they stop using the integrations. Then they’re only using the basic dashboard once a week. Then they’re gone.
Feature adoption drop-off — especially on sticky features, the ones that are hard to replace — is a strong signal. If an account stops using the feature they bought your product for, the renewal conversation is going to be painful.
Measure it as: (features actively used this month / features used in peak month). A healthy account maintains 70%+ of its peak feature adoption. Below 50% is a red flag.
3. Support ticket pattern changes
A spike in support tickets isn’t always bad — it can mean the account is trying to go deeper. But a specific pattern is a strong churn predictor: increasing volume + increasing severity + decreasing resolution satisfaction.
The inverse is also a signal, and this is the one people miss: when an account that used to submit support tickets stops submitting them entirely. That often doesn’t mean everything is fine. It means they’ve given up. Silence from a previously active account is louder than complaints.
4. Engagement velocity (trend direction)
Raw engagement numbers lie. An account with high engagement might be declining. An account with moderate engagement might be growing.
Engagement velocity is the rate of change — the first derivative of your engagement metric. Is this account’s usage going up, flat, or down? And how fast?
Calculate it week-over-week: ((this week’s events - last week’s events) / last week’s events). Smooth it over 4 weeks to remove noise. Three consecutive weeks of negative velocity in an account that used to be stable is a strong churn predictor.
5. Breadth-of-use contraction
This is the metric most CS teams miss because it’s hard to calculate with user-level analytics tools.
Breadth-of-use measures how many different people in the account are using the product across how many different features. It’s a matrix: users x features. When that matrix shrinks — fewer people using fewer things — the product is becoming a single-point-of-failure tool, dependent on one or two power users.
Single-threaded accounts churn at 2-3x the rate of broadly-adopted accounts. If one person leaves the company, the account leaves with them.
6. Time-to-value delays
For newer accounts, how long it takes to reach their first meaningful milestone is a predictor of long-term retention. Accounts that haven’t achieved their primary use case within the first 30 days churn at dramatically higher rates during year one.
This metric is most useful during onboarding but remains relevant when accounts adopt new features. If they activated a new module and still aren’t using it meaningfully 3 weeks later, they’re going to deactivate it — and start questioning the overall value.
How do you combine these into a health score?
Weighted scoring with clear thresholds. Don’t overcomplicate this.
A health score should take your leading indicators, weight them by predictive strength, and output a simple number that your CS team can act on. Here’s a practical framework:
| Signal | Weight | Green (healthy) | Yellow (at risk) | Red (critical) |
|---|---|---|---|---|
| Login frequency vs baseline | 25% | >85% of baseline | 60-85% | <60% |
| Feature adoption retention | 20% | >70% of peak | 50-70% | <50% |
| Engagement velocity (4-wk avg) | 20% | Positive or flat | -5% to -15% | Below -15% |
| Breadth-of-use (users x features) | 20% | >70% of peak | 40-70% | <40% |
| Support signal (composite) | 10% | Normal pattern | Volume spike or silence | Spike + severity increase |
| Time-to-value / milestone progress | 5% | On track | Delayed | Stalled |
Score each signal 0-100 within its category, multiply by weight, sum them. Accounts above 75 are green. Between 45 and 75 are yellow. Below 45 are red.
The weights aren’t sacred — adjust them for your product and your customer base. But start here. This framework, even roughly calibrated, will outperform NPS at predicting churn on day one.
What mistakes do teams make when building churn prediction?
Tracking global averages instead of per-account baselines. If you compare every account to the same benchmark, you’ll flag small accounts that are perfectly healthy and miss large accounts that are declining from a high baseline. Each account is its own control group.
Over-indexing on a single metric. Login frequency alone misses accounts where a small team logs in daily but has stopped using core features. Feature adoption alone misses accounts where usage is broad but shallow. The composite matters.
Ignoring the time dimension. A snapshot of today’s metrics tells you where an account is. The trend over 4-8 weeks tells you where it’s going. Direction matters more than position. An account at 60% health and climbing is safer than an account at 80% health and falling.
Building models before having data hygiene. If your event tracking is inconsistent, if accounts aren’t properly attributed, if your Segment implementation has gaps — no model will save you. Get the data clean first. Predict later.
How does AccountLens surface churn signals automatically?
AccountLens is an open-source product analytics platform that gives B2B Customer Success teams account-level health scores, feature adoption data, and churn signals. It’s built specifically to solve the problem this post describes: turning raw product events into actionable, per-account health intelligence.
Here’s what it does concretely:
Automatic baseline calculation. AccountLens computes each account’s behavioral baseline from their historical usage. When an account deviates from its own normal, that deviation is flagged — no manual threshold configuration required.
Composite health scoring. It combines login frequency, feature adoption, engagement velocity, breadth-of-use, and support signals into a weighted health score per account. You see green, yellow, and red at a glance. You can drill into any component to understand why.
Trend detection. AccountLens doesn’t just show you today’s health score. It shows you the trajectory. A 4-week trendline on every metric, per account, so your CS team can see the direction before the destination becomes obvious.
Churn risk alerts. When an account crosses from green to yellow, or yellow to red, your team gets notified. No dashboards to check. The signal comes to you.
It connects to your product data via Segment, attributes events to accounts using your existing group/identify calls, and runs under the MIT license. Self-host it. Your data stays yours. No $100K/yr platform required.
Frequently Asked Questions
How often should we recalculate health scores?
Daily. Health scores based on weekly or monthly calculations miss rapid declines. An account can go from healthy to critical in 10 business days — if you’re recalculating monthly, you’ll catch it at the next renewal meeting when it’s already too late. Daily recalculation with 4-week smoothing gives you responsive signals without noise.
What’s the minimum data history needed to predict churn?
You need at least 8-12 weeks of product usage data per account to establish a reliable baseline. Before that, you’re guessing. For new accounts, lean on time-to-value metrics and onboarding milestone completion instead of behavioral baselines that haven’t been established yet.
Should we weight all accounts equally in our churn model?
No. A $500K ARR account and a $10K ARR account should trigger different response levels. Most teams apply an ARR multiplier to their health score priority queue — not to the score itself, but to the urgency of the response. Red + high ARR = immediate executive attention. Red + low ARR = automated playbook.
Can product usage data replace customer surveys entirely?
It shouldn’t. Product usage tells you what accounts are doing. Surveys and conversations tell you why. But product usage should be the primary signal for churn prediction, with surveys as supplementary context. If you had to pick one, pick the behavioral data. People lie on surveys — usage logs don’t.