Two shoppers can visit the same retailer on the same day and be offered different discounts. The allocation is calculated from what each has done previously and what the retailer expects them to do next.

Discounts go where they change an outcome

A discount given to someone who would have bought anyway costs the retailer margin and gains nothing, so promotional budget is directed at shoppers whose decisions are uncertain.

Lapsed customers, abandoned baskets and first-time visitors are the groups most likely to be moved by an offer, and they receive the strongest ones.

Loyal, frequent buyers often see the least generous offers precisely because their behaviour is already reliable.

Behaviour is the main input

Retailers hold purchase history, browsing patterns, email engagement and basket abandonment records, and each contributes to a prediction about a given shopper.

The prediction estimates how likely a purchase is without intervention, and the offer is sized against that gap rather than against the value of the goods.

None of this requires knowing anything about a shopper personally. It works from patterns in recorded actions alone, which is why the offers can feel oddly well judged and oddly mistimed in roughly equal measure.

Segmentation shows up as inconsistency

Because offers are assigned by segment, the same shopper can see different prices across devices, or lose an offer after signing in.

Signing in identifies a returning customer and can move someone out of the acquisition segment, which occasionally removes a first-visit discount.

The effect is not a fault. It is the system recognising which group a visitor belongs to and adjusting accordingly.

Public codes serve a different purpose

Broad codes advertised openly are not about targeting at all. They exist to drive traffic, support a seasonal event or clear a category quickly.

These are budgeted as marketing spend with a known cost per order, and their generosity reflects the campaign rather than the individual.

The two systems run alongside each other, which is why a public code sometimes beats a personalised one and sometimes does not.

How a shopper can respond

Abandoning a basket occasionally produces a follow-up offer, though retailers vary in whether they use that tactic and how quickly they act.

Comparing the personalised offer against any public code is worth the moment it takes, since the systems are separate and the better one is not predictable.

Where a retailer allows both, the combination is usually blocked at checkout, and which one applies is set by rules written long before the order was placed.