Skip to content

Multi-Source Churn Detector

FieldValue
Namemulti-source-churn-detector
Categoryreporting
Complexityadvanced
Tagscustomer-health, churn-detection, multi-source, llm-scoring, conditional-routing, postgres-state, s3-storage
Authorrandybias
Min Version0.1.0

Aggregate usage, support, billing, and survey signals to score customer health and detect churn risk. Fetches data from four parallel sources, normalizes into a common signal format, uses AI to score health, stores scores, and fans out to real-time alerts and weekly reports.

fetch-usage ────┐
fetch-tickets ──┤ ┌→ route-alerts
fetch-billing ──┼→ normalize-signals → score-health → store-scores ─┤
fetch-surveys ──┘ └→ generate-weekly-report
NodePurpose
fetch-usageFetch product usage metrics from analytics API
fetch-ticketsFetch support ticket data
fetch-billingFetch billing data from Stripe
fetch-surveysFetch customer survey responses
normalize-signalsNormalize all data sources into a common signal format
score-healthAI-powered customer health scoring
store-scoresPersist health scores to Postgres and S3
route-alertsRoute churn risk alerts to Slack based on severity
generate-weekly-reportGenerate weekly customer health summary report
  • manual
  • cron — daily at 8:00 AM (0 8 * * *)
ServiceTypeRequired
Analytics APIExternalYes
Support APIExternalYes
Stripe APIExternalYes
Survey APIExternalYes
Anthropic APIExternalYes
Slack webhookExternalYes
tentacular-postgresExoskeletonYes
tentacular-rustfsExoskeletonYes
KeyDefaultDescription
timeout300sPer-node timeout
retries1Retry count per node
accounts[all]Account filter (list of IDs or “all”)
analytics_api_basehttps://api.example.com/analyticsAnalytics API base URL
support_api_basehttps://api.example.com/supportSupport API base URL
stripe_customer_prefixcus_Stripe customer ID prefix
  • analytics.api_key — Analytics API key
  • support.api_key — Support API key
  • stripe.api_key — Stripe API key
  • survey.api_key — Survey API key
  • anthropic.api_key — Claude API key for health scoring
  • slack.webhook_url — Slack webhook for alerts and reports
Terminal window
tntc scaffold init multi-source-churn-detector
tntc scaffold init multi-source-churn-detector my-custom-name
tntc scaffold info multi-source-churn-detector

Scaffold source: quickstarts/multi-source-churn-detector/