Intelligence & Services → AI & Insights

Propensity Scores

Per-customer likelihood scores — to convert, to churn, to upgrade — computed from Predictive Models and served alongside the profile for use in activation.

High-Level Design

Propensity Scores turn a trained model into a per-customer number activation can act on.

Data Source
Data Sources
Every touchpoint and business system
→
Ingestion
Ingestion Layer
SDKs, connectors, protocols
→
Processing
Predictive Models
Supplies the trained scoring model
→
Foundation
marts.ml_features
Per-customer feature vector at scoring time
→
Intelligence
Propensity Scores
Batch + on-demand scoring, Azure DB for PostgreSQL
→
Activation
Real-time Activation, Reverse ETL
Scores drive audience segmentation and CRM sync

💼 Business Context

  • Turns a model's raw prediction into a concrete, usable number — 'this customer has a 78% churn risk' — that marketing and support can act on directly
  • Improves campaign efficiency by targeting the customers most likely to respond, rather than blasting an entire segment
  • Owned by Data Science, consumed operationally by Marketing and Support

🔌 Technical Overview

A daily batch job scores every active customer's feature vector through the relevant Predictive Model (churn, conversion, upgrade), writing results to marts.propensity_scores, with an on-demand scoring path through the same .NET Core Analytics/AI API for customers who need a fresher score (e.g., immediately after a high-signal event). Scores are surfaced through the Profile API so any consumer already reading profile data gets propensity alongside it without a separate integration.

Score Types

Churn risk Conversion propensity Upgrade/upsell propensity Next-best-action

💾 Propensity Score Record

{
  "customer_key": "cust_004821",
  "churn_risk": 0.78,
  "conversion_propensity": 0.12,
  "scored_at": "2026-08-02T02:00:00Z",
  "model_version": "churn_risk_v4"
}

🔗 Integration Points

  • Predictive Models — supplies the trained model each score type is computed from
  • Profile API — surfaces scores alongside profile reads
  • Real-time Activation — segments audiences by propensity threshold for campaigns
  • Reverse ETL / CDP Sync — pushes scores into CRM so sales/support see them in their native workflow

🧰 Services Consumed

  • Owning microservice — Cxos.Intelligence.Api (see the Full Application Service Map)
  • Database — Azure Data Explorer/Kusto (scoring time series) + Azure Database for PostgreSQL

⚠️ Non-Functional Considerations

  • Scale: daily batch scoring covers the full active customer base; on-demand scoring is reserved for high-value, low-volume triggers to control cost
  • Latency: batch scores are available by start of business; on-demand scores return in under 200ms
  • Reliability: a scoring job failure holds the prior day's scores rather than serving nulls, so downstream campaigns degrade gracefully rather than breaking
  • Security/Privacy: propensity scores are treated as PII-derived data and inherit the same access controls as the profile they are attached to

🎯 Enterprise Example

Marketing targets a win-back campaign at customers with churn_risk above 0.7 and conversion_propensity above 0.3 simultaneously — a segment that used to require a manual data-science pull now refreshes automatically every morning as part of the standard audience sync.

← Back to AI & Insights