◆ CASE STUDY · 14 — SCENARIO PLANNER
Pull the lever. See the future.
A WLS-based acquisition + churn forecaster for a media house — marketing pulls the levers, the forecast updates live. Trained in Databricks, served on EC2.
WLS
Weighted least squares
Acq+Churn
Models trained
Live
Lever-driven forecast
10 wks
MVP to production

— 01 / THREE SCENARIOS
One model. Three futures.
Optimistic, base, pessimistic — three paths from the same point today. The cone of uncertainty narrows as marketing locks the levers it controls.
— 02 / VARIATION INPUTS
Pull a lever. Watch the curve.
Marketing controls real levers — ad spend, price, churn buffer. The same underlying model recomputes the forecast in real time.
AD SPEND+62%
$680K / mo
Baseline · $420K
PRICE POINT+15%
$14.99
Baseline · $12.99
CHURN RATE−33%
2.4%
Baseline · 3.6%
DISCOUNT WEIGHT+100%
Promo · 20%
Baseline · 10%
FORECAST UPDATES LIVE · daily-driver, not quarterly report
— 03 / WHY WLS
Recent matters more than old.
Weighted Least Squares puts more weight on recent observations than ancient history. Markets shift; the model shouldn't average you back to 2019.
WEIGHT
Recency-weighted
Last 6 months weighted at 1.0; observations from 2 years ago weighted at 0.15. Decay tuned to historical volatility.
ROBUSTNESS
Outlier-resistant
COVID-era anomalies don't pull the line. Pandemic months re-weighted at 0.3×, restoring fit stability.
FIT
+19% MAPE vs OLS
Mean absolute percentage error 19% lower than ordinary least squares on held-out 2024 data.
— 04 / TRAIN → SERVE
Databricks trains. EC2 serves.
Raw Data
Acq · churn · ad spend
Feature Eng
Lags · seasonality
WLS Train
Databricks · Python
Validate
Hold-out · MAPE
EC2 Serve
Lever API · live
Dashboard
Marketing console
— 05 / IN PRODUCTION
Daily-driver, not quarterly report.
Live
Lever-driven re-forecast
WLS
Acq + churn models
+19%
MAPE lift vs OLS
10 wks
MVP to live
"Variation knobs drive the same underlying model. The forecast updates live as marketing pulls the levers — which is what turned the tool from a quarterly report into a daily-driver."
— On the design call that changed the brief
— 06 / BUILT WITH
The toolkit.
Databricks
Python
WLS
AWS EC2
— NEXT CASE STUDY