
How YuppTV detects churn intent early enough to change the outcome
+18%
retention · measured against a randomised holdout
In short
YuppTV's cancellations were decided long before the cancel button. Markin reads the drop in viewing depth, catalogue fit and payment friction that precedes it, and acts while the outcome is still changeable, lifting retention 18% on treated cohorts against a randomised holdout.
Results
Every decision carries a control group+18%
Retention on treated cohorts
vs randomised holdout, full measurement window
-27%
Involuntary churn
payment-failure recoveries handled as a decision, not a dunning sequence
+9%
ARPU
from plan fit, not from price increases
Anonymised range across Markin deployments in large B2C bases, read over a full measurement window. It is not an industry benchmark and not a forecast for your base.

At a glance
- Industry
- Streaming / OTT
- Markets
- Global diaspora audience
- Base
- Millions of subscribers across plan tiers
- Motions live
- Churn prevention, plan fit, dunning, win-back
- Stack
- Warehouse, product events, Braze, Recurly, contact centre
- First measured lift
- Week 7
The challenge
YuppTV knew its churn rate to the decimal and could do almost nothing about it. The model flagged subscribers as high risk in the last week of the cycle, when the decision had already been made and the only lever left was a discount.
The real signal was earlier and quieter: viewing depth dropping on the content that drove the original subscription, a shift to shorter sessions, a failed card left unresolved, a plan carrying channels nobody in the household watched.
Those signals lived in different systems, moved constantly, and needed a different action each time. A retention campaign treats them all as one audience and pays for the ones who were never going to leave.
What Markin did
Data and context, intelligence, action01 / Data & context
Viewing, billing and support in one view
Markin reads playback events, catalogue metadata, plan history and payment state directly from YuppTV's systems, so intent signals are evaluated together instead of one dashboard at a time.
02 / Intelligence
Intent, not a risk score
Rather than scoring everyone weekly, the intelligence layer forms hypotheses about why a specific household is disengaging, sizes each one and proposes an action that matches the cause: catalogue, plan, price or payment.
03 / Action
The cheapest action that works
Content recommendations, plan moves, card updates and, only when nothing else clears the bar, a retention offer. Every action runs against a holdout, so YuppTV can see what a discount actually bought.
Experiments that ran
Hypothesis to measured lift| Hypothesis | Segment | Action | Channel | Measured lift |
|---|---|---|---|---|
| Subscribers disengage when the content that acquired them ends | Households with a 40%+ drop in weekly viewing depth | Catalogue re-onboarding around adjacent titles, no offer | Push + in-app row | +11% retention |
| Involuntary churn is a decision problem, not a dunning problem | Failed payments with high engagement | Card update timed to a viewing session, retry scheduled around payday | In-app + SMS | -27% involuntary churn |
| Some cancellations are plan mismatch, not intent to leave | Subscribers using one third of their tier | Downgrade offered before cancel, upgrade to those over-consuming | Account + email | +9% ARPU |
| Blanket save offers pay for subscribers who would have stayed | High-risk flags with stable viewing | Withhold the offer, measure against control | None | Discount spend cut, retention unchanged |
How it rolled out
Week 0
Signals connected
Playback, billing and support data connected read-only. Historical cancellations replayed to find the signals that actually precede them.
Week 3
First motion live
Catalogue re-onboarding goes live on the disengagement signal, with a holdout on every decision.
Week 7
First readable lift
Retention reads +11% on the treated cohort. Blanket save offers are retired for failing to beat control.
Week 12
Four motions in production
Churn prevention, plan fit, dunning and win-back running continuously, with results read against control weekly.
In their words
“We stopped paying to keep subscribers who were never leaving, and started reaching the ones who were.”
Retention Lead, YuppTV
The stack Markin worked with
No migration, no new system of recordQuestions buyers ask about this case
How is this different from a churn prediction model?
A score tells you who is at risk. It does not tell you why, what to do about it, or whether the action worked. Markin forms a hypothesis per household, picks the cheapest action that addresses the cause and proves it against a holdout.
How was the YuppTV result measured?
Every decision carries a randomised holdout. The lift quoted is the difference between the treated cohort and that control group over a full measurement window, not a before-and-after comparison.
Did they have to move their data to Markin?
No. Markin reads from the warehouse, CDP and product events already in place. Nothing is copied into a new system and nothing is locked in.
Which team ran it day to day?
The existing growth team. Markin does the analytical work, a streaming team of that size would need a dedicated data-science pod to produce, and routes every action into the tools they already operate.
How long until the first measurable lift?
A first motion goes live in about 30 days and the first statistically readable result lands inside the following six weeks. Scaled impact typically reads at 90 days.


