Omniscope Custom Views › survivalcurve

Survival Curve

How long do customers stay? How long do machines last? Survival curves answer "time until" questions correctly, including the records that have not ended yet, and show whether the difference between groups is real.

Line and scatter visokio-agents

Open the demo in Omniscope Download demo.ioz Sample data: subscriptions.csv Source on GitHub

Items tagged visokio-agents are community examples built by Visokio's agents, to extend Omniscope's core blocks and views with popular, specialist and more unusual use cases, and to show what anyone, people or agents, can build on Omniscope. They are tested by automated tests and were run on a real Omniscope server. They were not reviewed by Omniscope's core team, so they are not on a par with the core blocks and views, which have years of manual, functional and unit tests behind them. About

How long do customers stay? How long do machines last? Survival curves answer "time until" questions correctly, including the records that have not ended yet, and show whether the difference between groups is real.

Live: illustrative subscription customers by plan. Monthly plans churn steadily; annual plans drop at each renewal. Hover for the share still active at any point, click a curve or row to select its customers.

The problem it solves

Retention, attrition and failure questions all share a trap. At any moment many customers are still subscribed, many employees still employed, many machines still running, so their final tenure is unknown. Averaging the tenures of those who have left understates how long people stay; ignoring the ones still active throws away most of the data. Survival analysis, and the Kaplan-Meier curve in particular, is a standard way to use both, and it is routine in medicine, engineering and subscription businesses.

The Survival Curve view does it inside an Omniscope report from a start date and an end date (blank while still active), or a duration and an event flag. In the illustrative subscription data above, half of monthly subscribers have left after about five months, family plans last over a year, and annual plans hold almost everyone until the first renewal, when about a third leave. The log-rank test in the panel confirms the plans differ by far more than chance. Switch to the share ended and compare acquisition channels:

Live: cumulative churn by acquisition channel, with the log-rank test in the panel.

Where it earns its place

The examples below are illustrative.

Question Start and end Compare by
Subscription churn Subscription start and cancellation Plan, channel, cohort, price point
Employee attrition Hire date and leaving date Department, grade, manager, location
Reliability and warranty Install date and failure date Model, supplier, batch, site
Credit and collections Loan start and default or repayment Product, segment, region
Customer journeys First visit and conversion Campaign, source, landing page
Healthcare operations Referral and treatment Pathway, provider, priority

How to use it in Omniscope

  1. Bring the records into a workflow with a start date and an end date (blank while still active), or a duration and an event flag.
  2. Connect it to a Report block, add a view and choose Survival Curve.
  3. Set Start and End (or Duration and Event flag) and optionally Compare.
  4. Choose whether to show the share still active or the share ended.
  5. Click a curve to select its records; filter other views (region, period) to re-estimate the curves for that slice.

Why do this in Omniscope

Data and options

A start and end date per record (end blank while active), or a numeric duration with an optional event flag.

Option What it does
Start, End Date fields; blank End means still active
Duration, Event flag Alternative input: time and whether the event happened
Compare One curve per value (up to 7 plus Other)
Time unit Automatic, days, weeks, months or years
Show Share still active or share ended
Confidence bands 95% intervals around each curve

Tested with 300,000 records in 12 groups.

Tested

Hovering shows each group at that point in time
Hovering shows each group at that point in time
Running on the Omniscope server
Running on the Omniscope server

Reference

Fields it reads

NameTypeWhat it does
StartFIELDWhen each record started, e.g. subscription start, hire date, install date
EndFIELDWhen it ended (churn, leaving, failure); leave blank while still active
DurationFIELDAlternative to Start and End: time to the event or to the last observation
Event flagFIELDWith Duration: whether the event happened (1, true, yes); 0, false, no or blank mean still active
CompareFIELDOptional: one curve per value, e.g. Plan, Channel, Cohort

Options

NameTypeWhat it does
Time unitCHOICEUnit of the time axis when using Start and End
ShowCHOICESurvival curve, or its complement (cumulative churn or failure)
Confidence bandsTOGGLEShade the 95% confidence interval of each curve

Third-party libraries