Case study · Pet retail

A loyalty program that paid for itself

Before Welli existed, this team ran the business — one of the largest online pet retailers in Latin America. Food, litter and medication: the most predictable repeat-purchase category in retail. The loyalty program was built here, on a segmentation model, and it is the piece of that decade we are asked about most.

Every month a full RFM rebuild, from 2018 to 2022
5 × 5 recency and frequency buckets, with value sizing the reward
85% of contact-centre contacts were outbound, not order-taking

Pet food runs out on a schedule. A category that predictable should retain almost by itself, and the business did have repeat buyers — but it treated the customer base as one list. Every promotion went to everyone, which meant a large share of every discount went to people who were going to reorder that week regardless.

The cost of that is invisible. It shows up as a healthy top line and a margin nobody can explain.

An RFM model — recency, frequency and monetary value — rebuilt every month, and used to stop describing customers by what they had spent and start describing them by what they were about to do. The thresholds were set on the reorder cycle of the category rather than on calendar quarters, so a customer forty days past a thirty-day bag was lapsing, not merely quiet.

The loyalty program was then designed against those segments rather than against a flat rate. A reward is a discount you have agreed to give forever, so each segment got the one that changed its behaviour and nothing more: real value where a lapsing high-value buyer could be brought back, a light touch where the customer would reorder anyway, and no spend at all where the margin could not carry it. The segments most worth saving were not emailed — the contact centre, staffed by veterinarians, called them.

Enrolment was never the metric. Each segment’s reward was costed against the contribution that segment actually produced, and the whole model was recomputed monthly because customers move between segments constantly — which is exactly what a program written once cannot see.

That monthly rebuild ran from 2018 until the business wound down in 2022. It is the part of this we would defend hardest: a loyalty program is not a launch, it is a standing cost, and the only thing that keeps it honest is recomputing who deserves it.

RFM is a rules engine, and rules are a description of the past. The same segmentation today would be a propensity and churn model — predicting which customer is about to lapse rather than noticing that they have, and predicting what the pet needs next rather than what the household bought last. The roadmap already pointed there when the business closed. That is the version we build for clients now.

How the segments were cut

Recency against frequency, five buckets each. Value does not name a segment — it sizes the reward inside one.

Champions Loyal New At risk Cannot lose Dormant Recency Recent Long ago One order Many orders Frequency

What each segment got

Champions
Early access and the reorder reminder. No discount — they were already coming back.
Loyal
A reward sized to what the segment carried, reviewed as they moved.
New
A second-order nudge on the category’s own reorder cycle.
At risk
The real money went here: a lapsing high-value buyer is the only one a discount changes.
Cannot lose
Called, not emailed. The veterinary contact centre took these by hand.
Dormant
One attempt, then nothing. The margin could not carry a second.

Method as it ran. Segment thresholds were set on the category’s reorder cycle, not on calendar quarters.

A loyalty program is a discount you have agreed to give forever. The only question is whose behaviour it changes.

More case studies


Send us a month of your data. We'll tell you where it's going.

Start a conversation