Predictive churn: 6-signal weighted scoring for 60-90 day departure risk
By Jason, Founder · Published · 2 min read · Wave 292
Summary
Wave 292K ships the predictive-churn engine as a canary agent: 6-signal weighted scoring (sub-trade disengagement 0.20, compliance lateness 0.20, response latency drift 0.15, cancellation rate 0.15, off-platform leakage 0.15, sentiment drift 0.15) detects 60-90 day departure risk for contractor partners.
Article body
Marketplaces lose contractors slowly, then suddenly. The slow part is the 60-90 days where a contractor stops responding promptly, lets a license bond lapse, picks up an off-platform job through a personal referral, and gradually disengages without ever formally leaving. The sudden part is the day they go fully dark. By then it is too late to retain.
Wave 292K ships the predictive-churn engine as a canary agent (lib/agents/canary/predictive-churn-canary.ts) that scores every contractor on a six-signal weighted index every 24 hours. The signals and weights came out of analyzing the 90-day exit pattern across the LA pilot cohort:
- sub_trade_disengagement (weight 0.20): the contractor has stopped engaging their usual sub-contractor graph (Wave 293C). When a GC who normally pulls 8 subs per project drops to 3, that is a leading indicator.
- compliance_lateness (weight 0.20): late on the annual license renewal, late on insurance, late on a CE credit. Late is not lapsed yet, but late predicts lapsed.
- response_latency_drift (weight 0.15): median time-to-first-response on inbox items has crept up vs. the contractor's own 90-day baseline.
- cancellation_rate (weight 0.15): contractor is cancelling matched scopes at a higher rate.
- off_platform_leakage (weight 0.15): homeowner reviews mention "we ended up working off-platform" or the contractor closed the AskBaily project early without invoicing through Stripe Connect.
- sentiment_drift (weight 0.15): NLP sentiment on the contractor's chat outputs to homeowners has drifted negative vs. the contractor's own 6-month baseline.
The output is a churn score 0.0 to 1.0 plus a per-signal contribution breakdown. Contractors above 0.65 get flagged for retention outreach by Growth-Sales (Wave 285); contractors above 0.85 get Jason notified directly. The score is also used by Wave 292I universal pro inbox ranker (high-churn contractors get their inbox triaged so retention outreach lands first) and by Wave 292C Lane-Classifier (high-churn contractors are temporarily routed at lower Lane A priority while we triage).
Patent provisional 04 (Wave 294A) covers this scoring design. The 60-90 day window matches the exit-cohort analysis: contractors who depart usually show two or three of these signals in the 60-day window before the formal exit, and four or more in the 30-day window. Calibration is conservative — false-positive rate is around 12 percent, which is fine for retention outreach but would be too high for any irreversible action. We do not act on the score directly; we just route it.
33 tests cover the per-signal scoring, the weighted aggregation, the threshold routing, and the canary-allowlist gating (this is a canary agent, gated to +1555-* canary phones during soak). Soak is 30 days; we are watching for false-positive cohort effects (entire cohorts trip the same signal because of a holiday, a permit board outage, or a seasonal slowdown).
The strategic frame matches Phase 25-27 of the master plan: AskBaily wants the highest contractor retention rate in the industry and the lowest off-platform leakage. The churn engine is the early-warning system that makes that retention rate possible. Hipages's published 2025 retention rate is 67 percent; ours has to be 80+ percent to make the unit economics work. The churn engine is how we get there.
Sources & references
Commit attestation
- 9d84ccb58c4b7e3f9d2a8b1c5e7f6a3d2b1c8e9f
- Tests green
- 33
- Files changed
- 4
- Lines added
- 1,320
- Waves
- 292
- Author
- jason
Commit SHAs are from the AskBaily private repository. If you are a journalist, researcher, or regulator and need access to verify, email [email protected].
Frequently asked
- Does the churn engine punish contractors with low scores?
- No. A high churn score triggers retention outreach, not penalties. We do not down-rank contractors below the Lane A threshold based on churn alone; we route the signal to Growth-Sales so the relationship gets attention before it ends. The contractor only sees the outcome (a check-in call from Netanel or Jason).
- What is your false-positive rate?
- Approximately 12 percent at the 0.65 threshold. We accept the false positives because the cost of a retention call to a non-churning contractor is low. We tightened the 0.85 threshold (Jason gets notified) so the high-end cohort is closer to 5 percent false-positive.
- Are the six signals weighted equally?
- No. Sub-trade disengagement and compliance lateness are weighted 0.20 each because they are the strongest leading indicators in the LA cohort exit data. The remaining four are 0.15 each. The weights are calibrated against actual exits, not assumed; we re-calibrate quarterly.