Classification Threshold Lab

Model Fitting Decision Thresholds

Discover why the default 50% decision cutoff almost never maximises profit in marketing. Set error costs and revenue, drag the threshold, and watch net profit rise — or fall — in real time.

👨‍🏫 Professor Mode: Guided Learning Experience

New to classification thresholds? Enable Professor Mode for step-by-step guidance through finding the profit-maximising threshold and understanding when the formula breaks down!

OVERVIEW & LEARNING OBJECTIVES

Most classification models output a probability score — the likelihood a customer will churn, a lead will convert, or a transaction is fraudulent. Turning that score into a decision requires picking a threshold. By default, analysts use 0.50. That is almost always wrong.

When acting on a false alarm costs budget and missing a real event costs revenue, the profit-maximising threshold shifts — sometimes dramatically. This lab shows you where it goes and exactly why.

🎯 What You'll Learn
  • The 50/50 myth: See how net profit at T = 0.50 compares to the profit-maximising threshold.
  • Concrete payoffs: Understand how false-positive costs, false-negative costs, and revenue each pull T* in different directions.
  • The profit curve: Visualise net profit across all possible thresholds — the peak reveals the optimal threshold.
  • The formula — and its limits: Learn the simple derivation, and discover when real data disagrees with it (calibration).
  • The marketing reality: Customer models are routinely miscalibrated — using the empirical peak is almost always safer than the formula alone.

💡 Why This Matters: Churn models, lead-scoring systems, fraud detectors — every binary classifier in marketing has asymmetric error costs. Defaulting to 0.50 leaves money on the table in every single one.

📚

Use a Case Study

Select a case study above to load data and see the business context.

📤

Upload Your Data

Drag & Drop scored data file (.csv, .tsv, .txt, .xls, .xlsx)

Needs columns: predicted_prob (0–1 score) and actual_outcome (0 = negative, 1 = positive).

No file uploaded.

👆 Load a case study or upload your own scored dataset to begin the analysis.