Case study · Data science · Lifecycle

We stopped asking what to send — and started asking who it's worth sending to.

Blasting the whole list is easy, and quietly expensive. We built an ML approach that predicts who's likely to click, calculates the expected profit of each send, and only sends when it pays — with score-based segmentation so every message earns its place.

ClientHigh-volume ecommerce retailer · undisclosed

You can spend a career perfecting the subject line and still lose money on the send. The bigger, less glamorous lever isn't what you say — it's deciding whether a given person is worth saying it to at all.

Here is how we turned "send to everyone" into "send where it's worth it" for a high-volume retailer: a click-probability model, a one-line profit formula that decides who makes the cut, and machine-learning segmentation that keeps itself current as people's behavior changes.

The client & the brief

A big list, mailed on hope

The client is a high-volume ecommerce retailer with a large, hard-won subscriber base — and the very human habit of mailing all of it, often, because reach feels free. It isn't. Every extra send to someone who won't act costs a little margin, a little deliverability, and a little goodwill; do it enough and revenue-per-send drifts down while unsubscribes drift up.

The brief was to send smarter, not more: stop spending sends — and sender reputation — on people they don't move, and concentrate on the ones a message is genuinely worth reaching. Which meant answering a question the team had never put a number on: who is this send actually worth sending to?

Send where it pays. Skip where it doesn't.

How we work

Predict, decide, segment — then measure

We're a senior CRM collective with a data-science bench, and we measure against a control so a result is a result. The approach here has three moving parts, in order: predict how likely each person is to click, decide whether the send is profitable for them, and segment the base so the top, the middle, and the passive are each handled on their own terms.

None of it required a new platform — the models and the decision logic run against the data the client already had.

Move 1 · Predict

A click-probability model, per person, per send

The foundation is a gradient-boosting model that reads a subscriber's behavioral history — recency, frequency, past opens and clicks, browsing and purchase signals — and returns a single number: the probability that this person clicks this send. That number, P(click), is the raw material for every decision that follows.

1

Behavioral features

Recency, frequency, engagement history, and on-site signals — the traces that actually predict a click.

2

Gradient-boosting model

A model tuned to rank who's likely to engage, retrained on fresh behavior so it never goes stale.

3

A click score

One probability per person, per send — the input the profit decision is built on.

Move 2 · Decide

NEP — the profit of a single send

A high click probability is not, by itself, a reason to send — a cheap click on a low-margin order can still lose money once you count the cost of sending. So we put a number on the actual economics of each send with a simple formula: Net Expected Profit (NEP). If it's positive, the send is expected to make money and it goes; if it's negative, it doesn't.

NEP = Pclick × CR→purchase × AOV × Margin Costsend

Send when NEP > 0 — when a send is expected to earn more than it costs. Everything below the line is noise you're paying to send.

What the variables mean
Pclickthe model's predicted probability of a click
CR→purchasehow often a click becomes a purchase
AOVaverage order value
Margincontribution margin on the order
Costsendthe cost of the send itself
One customer · illustrative
Pclick0.12
CR→purchase0.09
AOV$185
Margin35%
Costsend$0.02
Expected profit / send≈ $0.68

Run that decision across the whole base and the list sorts itself: the sends worth making rise to the top, and the ones quietly losing money simply don't go out.

Move 3 · Segment

Score the base, and treat each tier on its own terms

NEP decides a single send; segmentation shapes the whole relationship. Using the same model, we score every subscriber on engagement — a simple 1-to-10 scale — and split the base into three tiers, each with its own strategy. The point isn't a label; it's that the top, the middle, and the passive deserve genuinely different treatment.

How we segment with machine learning

One engagement score, three strategies — recalculated every cycle.

← High score · activeLow score · passive →

Top audience

The most engaged, with a high probability of converting — happy to hear from you and quick to respond to almost anything.

How to use them
  • Test new products and features
  • A/B test new content and formats
  • Cross-sell and upsell
  • Limited-run and early-access offers

Middle audience

Engagement runs hot and cold. They respond to relevance — which is exactly where personalization earns its keep.

How to use them
  • Personalize the subject line to their interests
  • Dynamic content — items drawn from their history
  • Optimize send time to when they read
  • Recommend and help, rather than hard-sell

Passive audience

Low probability of converting. Frequent contact here erodes reputation and annoys — the fastest way to hurt the whole program.

How to use them
  • Minimal contact — only when it counts
  • Suppress if there's still no response
  • Try winning them back on another channel
  • Keep them out of tests — they distort the read

The core principle: the tiers are recalculated every cycle. A subscriber can migrate up or down as their behavior changes, and the strategy adapts automatically — rewarding rising engagement, and easing off exactly where attention is fading.

The results

Fewer sends, cleaner list, more profit per send

Sending only where the expected profit is positive doesn't just lift revenue — it protects the list. The sends that used to quietly lose money simply stopped going out, and the ones that remained worked harder.

Sends below break-even
~1 in 4~0
NEP < 0 removed
Revenue per send
+34%
Same list, smarter targeting
Send volume
−38%
Fewer, better-aimed sends
Unsubscribe rate
0.40%0.17%
Less fatigue

Read this honestly. The method is the substance — a click model, the NEP decision, and continuously-rescored segmentation. The figures above are program-level and depend entirely on the business's real margin, order value, and send cost, so we treat the approach as the headline and scope any single number to the account it came from.

The outcome

A list that gets healthier the more you use it

  • Predict — a gradient-boosting model gives a click probability for every subscriber and every send, retrained on fresh behavior.
  • Decide — the NEP formula turns that probability into a profit call, so a send only goes out when it's expected to earn more than it costs.
  • Segment — a 1-to-10 engagement score routes the top, middle, and passive to strategies that fit them — recalculated so people move between tiers on their own merits.
  • Compounding — because the passive are rested rather than hammered, deliverability and reputation recover — which lifts everyone else's results too.
  • How — built on the data and platform the client already ran, measured against a control, with the team coached to keep the models fed.

Kept honest: the durable win is the decision framework — predict, price, segment — not any one number. NEP is only as good as the margin and cost figures behind it, so we build it with the client's real economics and re-check it as those change.

Who this is for

If you're mailing everyone because reach feels free

Situation 01

You're a high-volume sender

A big list, mailed broadly and often. The easy growth is gone, and every extra send costs a little more than it returns.

Situation 02

Fatigue is showing

Unsubscribes creeping up, deliverability slipping, revenue-per-send drifting down. You need to send less, and better.

Situation 03

You want profit-based decisions

You'd rather send on expected profit than on gut feel — and you have the data to model it, if someone builds the engine.

Send where it pays

If you're mailing your whole list on hope, book a 20-minute look and we'll show you what a profit-based send strategy would change.

Book a 20-minute look