Skip to main content
A prediction tells you how likely or how much for each contact. A decision turns that into action: who to contact, in what order, and how far down the list to go — given your budget and goals.
“Decision” is the combination and optimisation of one or more model scores into a contact list. (Not to be confused with content recommendations, which is a separate recommender feature for your CMS.)

Why scores aren’t enough on their own

Ranking by a single score is a good start, but the best campaigns combine signals and account for cost:

Combine signals

Multiply propensity × expected amount to rank by expected revenue, not just likelihood — a contact who’ll probably give a little may be worth less than one who’ll possibly give a lot.

Account for cost

Every contact costs money. Past a point, mailing more people lowers profit. The decision finds where to stop.

Decision configurations

A decision configuration is a reusable recipe — a named pipeline of steps that you define once and re-run each time you need a fresh contact list. Because the same configuration runs before every edition of a campaign, results are consistent and comparable across mailings. Each time you execute a configuration it produces a decision run: a timestamped, labelled contact list ready to export or review.

What a decision does

1

Brings scores together

It pulls in the relevant model scores for your population — for example DM propensity plus expected amount from a recent prediction execution.
2

Computes a decision value

It combines them into a single ranking metric. The most common combination is expected revenue:
Expected revenue = Propensity score × Expected donation amount
This ranks each contact by what they’re likely to generate, not just how willing they are.
3

Optimises the volume

Using a profit curve — expected income minus cost as you contact more people — it identifies the volume that maximises return and where you break even.
4

Segments and labels

It can split the ranked list into named segments (e.g. high-potential, standard), reserve a slice for testing under-explored contacts, and hold out a control group to measure impact.
5

Produces the final list

The output is a ranked, labelled contact list ready to export to your CRM, mailing house, or other tool.

Segments

A decision can split the contact list into named groups based on score thresholds or rules: Segment names and thresholds are configurable per decision.

The profit curve, in plain terms

Imagine ordering every contact best-first. As you add more, total income keeps rising but each extra contact adds cost and brings a less-likely contact. Plot profit against volume and you get a hump: profit climbs, peaks, then falls.

Optimal volume

The peak — contact this many for maximum profit.

Break-even

The point past which extra contacts cost more than they bring in.

Confidence band

A range around the peak — the curve is often flat on top, so nearby volumes are about as good.
The curve is built from historical calibration data: past mailings where you know who was contacted, what they gave, and what their score was at the time. Allyy bins contacts by score, estimates the incremental value of each score band, and projects the curve forward. The better your historical data, the more reliable the volume recommendation.
The model-evaluation dashboards let you explore exactly this with a cost-per-letter input and an as-is vs optimised comparison — see Model evaluation dashboards.

Control group

A control group is a randomly sampled slice of the eligible population that is withheld from contact. After the campaign you can compare their actual behaviour against the contacted group to isolate the uplift — the effect of mailing itself, not just the natural behaviour of likely donors. You can size the control group in several ways: Experiment arms are useful when you want consistent group membership — the same contact will always land in the same arm across re-runs, making longitudinal measurement reliable.

Exploration quota

Over time, a model that only ever contacts the top-scored contacts stops learning about the rest of the audience. The exploration quota (also called reserve) deliberately includes a small number of lower-scored or under-contacted contacts in each contact list. This serves two purposes:
  1. Cold-start fairness — new or lapsed contacts get occasional exposure rather than being permanently excluded.
  2. Model improvement — their responses (positive or negative) feed back into future training, keeping the model calibrated across the full contact base.
A typical configuration might reserve 10% of the contact volume for exploration, drawn randomly from contacts below a score threshold.

Next

Exporting decisions