Building a Loyalty Program That Increases Repeat Purchase Rate
Most points-based loyalty programs fail to move repeat purchase rate. Here's the structure, math, and tier design that actually changes buying behavior.
A points program that gives 1 point per dollar and redeems at 100 points for $5 off changes almost nothing about how customers behave. It’s a receipt decoration. If you want a loyalty program to actually lift repeat purchase rate, it has to change the math a customer runs in their head at the moment they’re deciding whether to buy from you again or from a competitor. That’s a much higher bar than most brands set, and it’s why the majority of ecommerce loyalty programs sit at 2-4% active participation while quietly costing 1-3% of revenue in discounts.
Start with the number you’re actually trying to move
Before designing anything, pull your current repeat purchase rate — the percentage of customers who buy a second time within a defined window, usually 90 or 180 days depending on your category. A skincare brand with a 45-day repurchase cycle should look at a 120-day window; a furniture brand might use 12 months. If you don’t already have this number, this is where the project starts, not with tier names or point values.
Segment that number by first-order AOV and acquisition channel. In a project I’ve seen work at a DTC supplement brand, customers acquired through influencer content had a 38% repeat rate at 90 days, while customers acquired through branded search had 61%. Averaging those together into one “repeat purchase rate” and designing one program for both groups misses that the influencer-acquired cohort needed a different intervention — education and habit formation — while the branded-search cohort just needed a nudge to reorder before they ran out.
A loyalty program is not a single lever. It’s a bundle of mechanisms, and different mechanisms fix different leaks. Points fix nothing if the leak is “customer forgot they liked the product.” Tiers fix nothing if the leak is “price is the only reason they bought once.” Diagnose the leak first.
The three mechanisms that actually work, and the one that doesn’t
Points programs work when the redemption threshold aligns with natural repurchase timing, not when it’s arbitrary. If your average customer reorders every 60 days and spends $50 per order, structure points so a meaningful reward unlocks right around the second or third order — not at $500 of cumulative spend that takes 18 months to reach. Sephora’s Beauty Insider works because redemption thresholds are tuned to realistic spending patterns within a single year, not stretched into abstraction.
Tiered status works when tiers unlock access, not just discounts. A customer who hits VIP status and gets early access to drops, a dedicated support line, or free shipping with no minimum will defend that status by continuing to buy, because losing it feels like a real loss. A customer who hits VIP status and gets “10% off instead of 5%” doesn’t defend anything — they just compare your 10% against a competitor’s flash sale and go wherever the number is bigger. Status needs to feel earned and defensible, not transactional.
Subscription or replenishment programs work when the product has a genuine consumption cycle — coffee, skincare, pet food, supplements. These aren’t loyalty programs in the traditional sense, but they’re the single strongest repeat-purchase mechanism available to consumable brands, and most brands under-invest in them relative to points programs because points feel more like “a program” and subscription feels like “just a discount for auto-ship.” Flip that assumption. A well-structured subscription with flexible skip/pause options will beat a points program on repeat rate almost every time for consumable categories.
What doesn’t work: generic percentage-off punch cards (“buy 10, get 1 free”) for anything other than genuinely commoditized, frequent-purchase categories like coffee shops. For ecommerce with considered purchases and gaps of weeks or months between orders, punch cards lose all psychological weight — customers forget they’re three purchases in in the first place.
Design the second purchase, not the program
The single highest-leverage moment in any loyalty program is the gap between purchase one and purchase two, because that’s where the largest percentage of customers is lost. A customer who’s bought twice is dramatically more likely to buy a third time than a first-time buyer is to buy a second time. So the program should be front-loaded to accelerate that first repeat purchase, not back-loaded with rewards that only pay off after five orders.
Concretely: give a meaningful, immediately usable incentive tied to the customer’s next order, delivered inside a window that matches their consumption cycle. For a skincare brand with a 45-day cycle, an email at day 35 with “Your [product] usually runs low around now — here’s 15% off your next order, good for 10 days” converts far better than a generic loyalty point balance sitting unused in an account customers rarely log into.
I’ve seen this reframing — from “loyalty program” to “second-purchase acceleration” — lift 90-day repeat rate by 6-9 percentage points on its own, before any tier structure gets added on top. The tier structure then exists to keep third, fourth, and fifth purchases coming, but the program has already done its most important job by that point.
Sequence the build in this order, not all at once
Brands routinely try to launch points, tiers, subscription, and referral simultaneously; the launch takes six months, ships with bugs across every mechanism at once, and nobody can tell which piece drove the repeat-rate change because everything shipped together. Build in this order instead:
- Second-purchase acceleration emails/SMS first — no new platform required, just segmentation and timing logic against existing consumption-cycle data. Ship this in weeks and measure its effect in isolation.
- Subscription/replenishment, if the category supports it — the next highest-leverage mechanism, and measurable independently since it applies to a specific subset of SKUs.
- Tier structure — layer this in once the first two are stable, since tiers sustain third-plus purchases, which only matters once second purchases are already being captured.
- Points mechanics and gamified elements — build last. Weakest direct link to repeat-rate lift on its own, and easiest to bolt onto an existing tier structure rather than build around.
Launching in this order also solves attribution: each mechanism goes live with a clean before/after cohort, so when repeat rate moves, you know which piece moved it instead of guessing after a big-bang launch.
Tier structure that survives contact with real customers
A three-tier structure is almost always the right number. Two tiers doesn’t create enough aspiration; four or more creates decision paralysis and dilutes what each tier means. Structure it like this:
- Entry tier — automatic on account creation or first purchase. Low-friction perks: birthday reward, early access to sale previews, free shipping over a modest threshold.
- Mid tier — reached at a spend threshold calibrated to roughly 2.5-3x your median order value, so a customer who’s made two or three purchases naturally lands here. Perks should include something that costs you little in unit economics but feels valuable: priority customer service response times, exclusive SKUs, or a surprise gift on qualifying orders.
- Top tier — reached at 6-8x median order value, reserved for genuinely high-value customers, ideally under 10% of your loyalty base. This tier should include experiences money can’t easily buy elsewhere: first access to new product lines, direct line to the founder or product team, invitations to in-person or virtual events.
The mistake most brands make is setting mid-tier thresholds so high that fewer than 15% of enrolled customers ever reach them. If almost nobody experiences the aspirational tier, it does nothing for retention — it’s invisible. Model your thresholds against actual purchase distribution data, not round numbers that feel impressive in a slide deck.
The math you have to run before launch
Loyalty programs cost real money, and the ROI case has to be explicit or finance will (correctly) kill the program at the first budget review. Model three numbers before launch:
- Incremental repeat rate lift you’re targeting, expressed as a percentage point change, not a vague “improve retention” goal.
- Cost per rewarded order, meaning the average discount or perk value redeemed per order, weighted by expected redemption rate (not every enrolled member redeems every reward — realistic redemption rates run 20-40% for most reward types).
- Contribution margin per repeat order, so you can calculate whether the incremental orders generated by the program cover the cost of running it.
A rough version: if your median order contributes $22 in gross margin, and a loyalty-driven second purchase costs you $4 in redeemed rewards on average, the program needs to generate enough incremental repeat purchases to clear that $4 cost many times over through the lifetime value those customers create — because a customer who buys a second time is now meaningfully more likely to buy a third, fourth, and fifth time without any further incentive. The program pays for itself in the second-purchase acceleration alone if the downstream repeat behavior holds, which is why measuring cohort behavior for 6-12 months post-launch matters more than judging the program on redemption volume in month one.
Walk the arithmetic on a base of 1,000 first-time buyers. At a baseline 40% 90-day repeat rate, 400 buy again unassisted. If second-purchase acceleration lifts that to 47% (a 7-point lift, consistent with the range cited above), you’ve generated 70 incremental repeat orders. At $22 margin per order minus the $4 average reward cost, that’s $18 net margin per incremental order, or $1,260 in the first 90 days from that single cohort — before counting the third or fourth purchase those 70 customers go on to make, which is typically where the bulk of lifetime value accrues. Run this model separately per acquisition cohort, since the earlier example showed a 23-point gap in baseline repeat rate between influencer- and search-acquired customers; blending them will understate the return on the channel that needs the program most.
The common failure mode: reward inflation that erodes margin quietly
The most common way a working loyalty program stops working isn’t customer disengagement — it’s reward inflation creeping in through customer service escalations. A VIP customer complains their tier perk wasn’t honored, support offers a bigger discount to smooth it over, and that bigger discount becomes the unofficial new normal for anyone who complains, regardless of tier. Over 12-18 months, the effective average discount rate climbs well past what the program was modeled on, without anyone deciding to raise it — it just accretes complaint by complaint.
The fix is a hard rule: log and review customer service exceptions to loyalty rewards monthly, with a named owner checking whether exceptions are trending up and why. A disproportionate share of exceptions on one tier or reward type signals the reward itself is mis-specified — usually the redemption threshold or perk value — rather than a cue to keep quietly discounting around it. Brands that skip this review tend to discover, a year or two in, that actual cost per order has drifted 40-60% above the modeled figure, making the program look like it’s failing on ROI when the real issue was unmonitored exception creep.
Segment the program by customer value, quietly
Not every customer needs the same nudge, and the best loyalty programs make invisible adjustments based on customer behavior rather than visible tier names alone. A customer who’s shown high price sensitivity — always waiting for sale periods, cart-abandoning until a discount code appears — responds to percentage-off mechanics. A customer who’s shown low price sensitivity but infrequent purchase timing responds better to reminder-based mechanics tied to consumption cycles, not discounts, because discounting a customer who was already going to buy at full price is pure margin erosion.
This means your loyalty program’s backend should support conditional logic: different email sequences, different reward types, and sometimes different reward sizes for different behavioral segments, all sitting under the same customer-facing tier structure. Most loyalty platforms (Smile.io, Yotpo, LoyaltyLion) support this level of segmentation even if most brands never turn it on. Turning it on is usually the difference between a program that lifts repeat rate by 3 points and one that lifts it by 10.
Edge cases that break a standard program design
A few situations don’t fit the default structure above and need a deliberate exception rather than forcing them into the same rules as everyone else:
- High-AOV, low-frequency categories (furniture, mattresses, major appliances) where a customer might genuinely buy once every several years. A repeat-purchase loyalty program is close to meaningless here; the better mechanism is referral, since the realistic path to more revenue from a happy customer is them sending someone else, not buying again.
- Marketplace or multi-brand catalogs, where “repeat purchase” might mean a different category the second time. Cumulative-spend tiers still work, but consumption-cycle reminder emails don’t, since there’s no single product cycle to anchor timing to. Use purchase-frequency percentile against your own base instead of a fixed calendar window.
- Clearance-driven acquisition, where a large share of first-time buyers came in on a steep introductory discount. This cohort’s baseline repeat rate is often structurally lower regardless of loyalty mechanics — segment it out of the primary cohort analysis rather than letting it drag down your read on organically-acquired customers.
- Gift purchases, where the purchaser isn’t the person who’ll ever buy again — the recipient might be. Consider a mechanism, like a card insert with a personal signup code, that lets the actual product user enroll independently of who paid.
Measure it like a retention initiative, not a marketing campaign
The instinct after launch is to check enrollment numbers and redemption counts. Those are vanity metrics for this purpose. The metric that matters is cohort-based: take customers who made their first purchase in the month before the program launched, and customers who made their first purchase in the month after, and compare their 90-day and 180-day repeat purchase rates directly. If the post-launch cohort doesn’t show a statistically meaningful lift within two full cohort cycles, the program’s mechanics need revisiting — more likely the second-purchase timing than the tier structure, since that’s where the largest failure point usually lives.
Run this cohort comparison quarterly, not just once at launch. Loyalty program effectiveness decays as customers habituate to the reward structure, and the brands that sustain lift over multiple years are the ones that refresh reward types and perks on a regular cadence — new tier perks twice a year, refreshed birthday rewards, occasional surprise-and-delight elements outside the published program rules. A loyalty program that never changes eventually becomes wallpaper, and repeat purchase rate quietly reverts to baseline.
