What is a customer health score formula?
A customer health score formula turns usage into one 0-100 number. FirstDistro's Signal Stack is Health Score = (Activity × 0.35) + (Engagement × 0.20) + (Milestones × 0.15) + (Recency × 0.30). Recency uses a 7-day half-life. Higher scores mean lower churn risk.
Normalize each signal to 0-100 first. Then weight and sum.
The Signal Stack
Health Score = (Activity × 0.35) + (Engagement × 0.20) + (Milestones × 0.15) + (Recency × 0.30)
- Activity
- Meaningful recent usage (35% of the product formula)
- Engagement
- Session depth, interaction quality, and usage breadth (20%)
- Milestones
- Onboarding completion, feature activation, and expansion behaviors (15%)
- Recency
- Time since last meaningful interaction, with 7-day exponential decay (30%)
Activity is the volume signal. Engagement is depth. Milestones are cumulative wins. Recency decays with a 7-day half-life, so recent usage counts more than older bursts.
When CRM data exists, keep product signals at 85% and add CRM at 15%. For what the number means and the score bands, see customer health score. For the save plays after a drop, see how to reduce SaaS churn.
Frequently asked questions
Should I use weighted or unweighted health scores?
Start unweighted for a first pass. Move to weighted once you know which metrics predict churn in your product. Activity and recency usually matter more than milestones, so equal weights often mis-rank accounts.
How often should I recalculate health scores?
Daily or real time. Weekly or monthly spreadsheets miss accounts that go quiet for two weeks and never come back. Automated scoring updates as events arrive.
Can I include CRM data in my health score formula?
Yes. When CRM data exists, product signals stay 85% of the score and CRM is 15%. CRM health blends contact depth, activity recency, and deal health.