Example · churn · public data

Save revenue before it leaves

Walk the build: see the data, mark the target, train a model, catch the miss pattern, rebalance, train again, then put both screeners to work.

01 · Data

Start with customer history you can see

Public telecom records from a Kaggle churn benchmark. One row per customer: tenure, services, billing, and outcomes. Same shape as a CRM or billing export.

ContractInternetTenureMonthlyChurn
One yearFiber optic9 mo$65.6No
Month-to-monthFiber optic13 mo$98Yes
Month-to-monthFiber optic3 mo$83.9Yes
Two yearDSL58 mo$78.35No
Month-to-monthFiber optic18 mo$78.2No

02 · Target

Highlight what we want to protect

The Churn column is the label: the outcome we already know from the past. That is the revenue signal. Everything else is context the model can use before a customer is gone.

Target label

Churn = Yes / No

Predict Yes early enough that retention can still save the account, and the revenue attached to it.

goal / ranked save list
Ranked customer save list from EasyDeploy AI

03 · First model

Train a baseline model on the natural mix

EasyDeploy searches pipelines on the raw training data and keeps a strong performer. Fast to get a first screener with a real pipeline, report, and holdout scores.

04 · Errors

Notice what the baseline misses

Accuracy can look fine while the model still misses nearly half of real churners. Those misses are revenue that was about to be lost and never made the save list. The training mix was skewed toward customers who stayed, so the model learned the majority class too well.

Missed churners on holdout

48%

Almost 1 in 2 at-risk customers never reached retention.

Training class mix

~2.8 stayed : 1 churned

Rare outcomes get under-learned unless you rebalance training.

05 · Rebalance

Balance classes, then train again

Rebalance training so churn and retained customers are equally represented. Keep the holdout in the real-world mix so the score stays honest. EasyDeploy runs a second search and returns another production-ready model quickly.

Before and after class balancing for churn training data

Before: 4,139 stayed vs 1,495 churned. After balancing training: 1:1. Holdout stays unbalanced on purpose.

Missed churners now

17%

Same untouched holdout. Far more at-risk revenue makes the save list.

06 · Use both

Match the screener to the save motion

Both models are useful. Pair each ranked list with a different technique so spend and effort track how sure you are that revenue is about to leave.

Precision lane · baseline

High-certainty saves

Misses more churners (48%), but when it flags an account, confidence is higher. Reserve this list for promotions, discounts, or other costly interventions when you are very sure revenue is about to be lost.

Best when a false alarm wastes real budget.

Coverage lane · rebalanced

Wider early outreach

Catches more at-risk revenue (17% misses). Use this broader list for light check-ins: a status call, a success touchpoint, or a simple how-are-things outreach before anyone needs a heavy save offer.

Best when an extra check-in is cheap compared with losing the account.

Try it on your revenue at risk

Bring a labeled CSV. Train a baseline, catch the miss pattern, rebalance, train again, then route both screeners so your team can save revenue before it is lost.

Free tier included. No credit card required.