Customer Health Score
A configurable, rule-based Customer Health Score (0–100) for CDP contacts, composed of up to five weighted components — Field Attributes · Engagement · Conversion · Support Interaction · Satisfaction (CSAT) — recomputed on a daily schedule and surfaced as a score + client-defined label band (default Healthy / Neutral / At-risk) on the Customer Index and Customer Detail.
Evolves the earlier Customer Signal Label discovery (Hot/Warm/Cold, label-only) into a transparent numeric score. Grounds the scoring model in existing Qontak data (CDP custom fields, conversations, WhatsApp calls, deals, tickets, CSAT) rather than a black-box ML model. MVP: one active health-score configuration per client.
Scope Changes
Engineering surfaces this initiative touches (controlled vocab). Aggregate of the PRDs below.
- Backend —
contact-service:health_scorefields on the contact doc, a company-scopedhealth_score_configcollection, a daily recompute job, and per-contact aggregation of engagement/conversion/support/CSAT signals;qontak.com: per-contact aggregate signals (deal won-count/size, ticket count/priority, CSAT avg, call count) exposed to CDP. - Frontend —
qontak-customer-fe: score-config admin UI (components on/off, metrics, thresholds, labels), Customer Index score column + filter, Customer Detail score breakdown. - Data — daily per-contact aggregation of conversation / call / campaign / deal / ticket / CSAT signals feeding the score.
- Design — Figma for the config builder + score display (TBD).
PRDs
- prd-customer-health-score.md — Phase 1: Rule-Based Scoring Engine (MVP)