Who Should You Persuade?
Most models predict who will convert. That is the wrong question for a marketing budget. What you actually want is who converts only because you reached them, the incremental lift, not the raw likelihood. This is an uplift model: it estimates the causal effect of sending an email on each customer, using T-learner and X-learner meta-learners validated with the Qini curve. It runs on a real randomized experiment, the Hillstrom email dataset of 64,000 customers.
causal-uplift/train.py to populate it with values learned from real data.
Score a customer
Describe a customer and the model estimates their visit probability with and without the email, entirely in your browser. The gap between the two is the uplift: the part the email actually caused.
Uplift modeling exists to find the top-left box. Targeting by raw likelihood keeps paying to reach Sure Things and, worse, pokes Sleeping Dogs.
Does the model actually rank uplift?




Charts appear after you run train.py (it writes them into public/uplift/).
How it works
- A real experiment. Customers were randomly assigned to receive an email or not, so a simple difference in visit rates is already an unbiased causal effect. Randomization is what makes the uplift identifiable.
- T-learner. Two models are fit: one on the treated group, one on the control group. The predicted uplift for a customer is the difference between what each model says, P(visit | emailed) minus P(visit | not emailed).
- X-learner. A stronger challenger that imputes each customer's individual treatment effect and models it directly, which helps when the treated and control groups are unbalanced. Reported alongside as a Qini benchmark.
- Qini curve. Accuracy is meaningless here (you never see both outcomes for one person). Instead the model is judged on whether ranking customers by predicted uplift captures more incremental visits per email than random, which is exactly what a Qini curve measures.
- Decision. Each customer lands in one of four quadrants. The budget goes to Persuadables, and Sleeping Dogs get left alone.