Store creation

Ecommerce Customer Retention: Post-Purchase Emails, Replenishment Reminders, the Second-Order Offer, RFM Segments, Repeat Purchase Rate and Loyalty Programs

Vincent Fredet·Founder of Scale Ova
Updated on ·18 min read
Ecommerce Customer Retention: Post-Purchase Emails, Replenishment Reminders, the Second-Order Offer, RFM Segments, Repeat Purchase Rate and Loyalty Programs

From the store to the ads, everything so far has been about finding customers. And each new customer costs you something. A returning customer is one you've already paid for once. Their second order comes in with no new ad spend.

One example runs through the whole article, a whole-bean coffee store (a made-up example). A 250 g (about 9 oz) bag makes about 30 cups. At one cup a day, it lasts a month. The customer orders and gets the coffee in 2 to 3 days. A month later, they reach the bottom of the bag. All of retention fits in that calendar.

First: a happy customer

No email will make a disappointed customer buy again. Before any retention technique, check these basics:

  • The delivery time you promised is kept. A package that arrives on time is the first promise kept. To get it right, see set up shipping.
  • The product matches the photos. Your test order with your supplier is there to check exactly that.
  • You answer quickly when customers have questions or problems. A well-handled problem often builds more trust than an order with none.
  • Returns are simple when something's wrong.

After the purchase: help before you sell again

Right after the purchase, your customer pays more attention to your brand than at any other moment. Use that moment to help them, not to sell again right away.

On r/ecommerce, one merchant puts it this way: "First touchpoint after purchase shouldn't sell anything, it should add value to what they already bought." That can be a how-to or care instructions. The goal is to confirm they made the right call.

Another merchant connected a jewelry brand's Klaviyo and Shopify data, customer by customer. The welcome flow "had the best conversion numbers by every email metric, but those customers almost never came back." Meanwhile, a post-purchase flow she thought was underperforming "was quietly producing her best repeat buyers."

For the coffee store, the sequence looks like this, in days after the order (example):

Day The email
Delivery Thanks, and the right dose
Day 10 Storing and grinding
Day 21 Reorder reminder and offer
Day 45 Last reminder of the offer

In Shopify, the Shopify Messaging app comes with ready-made automations. These are the ones under Post-purchase:

  • "Thank customers after they purchase" sends an email after the first and second purchase;
  • "Upsell customers after their first purchase";
  • "Win back customers" sends a message a set amount of time after the last order. It goes out when the customer joins a segment (the "Customer joined segment" trigger).

These automations have two limits. They only go to customers subscribed to email marketing, so the consent you collect at checkout matters. They also count toward the 10,000 free emails a month included with the Basic, Grow, Advanced and Plus plans. Beyond that, Shopify charges $1 per 1,000 emails up to 300,000. Abandoned checkout emails always stay free. For a finer sequence, like one reminder per product, use the Shopify Flow app or your email tool. The sequences are covered in detail in email marketing for a small store.

The note in the package

A leather belt maker asked on r/ecommerce what to print on their thank-you card. They were torn between a discount code, a QR code for a review and a referral offer. The sharpest answer in the thread was that "two asks on one piece of paper usually gets you neither." So one card gets one ask.

For a product people rebuy quickly, like coffee, that's the code for the next bag. A belt is different, since people keep it for years. For a belt, the same thread suggests a code to give a friend instead, because "a belt buyer isn't rebuying for a year or two but they will hand a card off."

Remind at the right moment: timing the replenishment email

Every product has its own rhythm. For products that run out, you can calculate when to send the reminder.

The bag of coffee lasts about 30 days from delivery. The next one will also take 2 to 3 days to arrive, so the two shipping times cancel out. Just count the usage time from the order date. Then subtract a week so the customer has time to reorder.

Reminder day = usage time − one week. For the coffee, 30 − 7 gives a reminder around day 21.

Other products follow other rhythms:

  • Products that go together. After the main product comes the accessory or the refill, like the filter or the grinder for coffee. It's average order value, spread over time. On r/ecommerce, one merchant notes that "even simple things like people who bought this usually go for this next worked better than broad campaigns."
  • Gifts. Send a reminder before the holidays, or on the purchase anniversary if it was a gift.
  • One-time purchases (furniture, an appliance, a belt). Lean on referrals and new products in your range rather than a reminder.

For a single-product store, the "Win back customers" automation is enough. It goes out a set amount of time after the last order, which you can match to this calculation. If your products have different rhythms, create one segment per product with the products_purchased filter. Shopify Flow works too.

The second-order offer, only for one-time buyers

The second order is often the hardest to get. The reflex is to slip a public code into every package or show it on the site. But that code also goes to your regulars, who would have bought again without a discount. On r/ecommerce, a merchant testing store credit points to the same trap. For them, the hard part isn't handing out the reward. It's knowing whether it creates extra orders "instead of rewarding customers who would have bought again anyway."

In Shopify, the answer takes two settings. You create a customer segment, then a discount limited to that segment.

1. The segment. In Customers > Segments, click Create segment and write the query:

number_of_orders = 1
AND last_order_date <= -21d
AND last_order_date >= -56d

In plain words, this keeps customers who have placed exactly one order, between 21 and 56 days ago (3 to 8 weeks). A Shopify segment updates on its own. A customer joins it 3 weeks after their order. They leave as soon as they place a second order, or after 8 weeks.

The Shopify segment editor: the segment One order, 3 to 8 weeks ago groups 86 customers with the query number_of_orders = 1 and a last order between 21 and 56 days ago
The example segment: 86 customers who have ordered only once, 3 to 8 weeks ago.

2. The discount. In Discounts > Create discount, pick an amount off the order. Then set these two fields:

  • Eligibility: Customer segments, then the "One order, 3 to 8 weeks ago" segment;
  • Maximum discount uses: Limit to one per customer. Shopify tracks it by email address or phone number.
The Shopify discount page: eligibility is set to the customer segment One order, 3 to 8 weeks ago and the discount is limited to one use per customer
Eligibility limited to the segment, one use per customer.

3. Sending it. The day 21 email gives the code, and the day 45 email reminds them it's about to expire. Announce a deadline that matches the segment, which is 8 weeks after the order. Before you send it, try it with a test customer.

How much to offer? Follow the same logic as your first offer. Look for whatever costs you least for the strongest feeling of a good deal (see build an offer that converts). For the coffee store, give a small free bag of another origin. It introduces a second product, where a percentage only lowers the price.

On r/shopify, a merchant advises against loyalty apps. They suggest this bare-bones version instead: "a flat % discount on second purchase via klaviyo + a 'VIP' segment that gets early access to new drops. no points, no tiers, no app."

Measure the effect. To know whether the offer really creates orders, keep a small group that doesn't get it. Then compare their second-order rate with everyone else's. That's how the merchant behind the store credit thread separated "true lift from people who'd have reordered anyway."

Shopify RFM segments: know who to reach out to

Shopify already sorts your customers for you. In Analytics > Reports, filter the category to Customers and open RFM customer analysis.

RFM stands for recency, frequency and monetary value. Recency counts the days since the last order. Frequency counts orders, and monetary value is the total spent. Each customer gets a score from 1 to 5 on each of the three, compared with the other customers of your store. A score of 5 means they're in the top 20%. Shopify turns that into 11 groups and suggests what to do with each:

  • Champions (very recent purchase, many orders, highest spend): exclusive deals, early access to new products, a referral program.
  • Loyal: higher-value products, review requests.
  • Active: recommendations, loyalty programs.
  • New and Promising: onboarding, replenishment reminders. That's the coffee customer on day 21.
  • Needs attention: limited-time offers based on what they've already bought.
  • Almost lost: helpful resources, discounts on popular products.
  • At risk (good history, no recent purchase): personalized messages, an offer too good to miss.
  • Previously loyal: new products and launches.
  • Dormant: newsletters, a re-engagement campaign.
  • Prospects (no orders yet): a welcome email with a first-purchase offer.

Click a group, then Preview segment. Shopify opens the segment editor with the matching filter, for example rfm_group = 'AT_RISK'. You can then target that segment with an email or a discount, just like the second-order offer.

This report has two limits. Scores are relative to your store. With a few dozen customers, a customer changes group with every order. Simple segments based on order count or last order date tell you more at that stage. The predicted spend tier filter (high, medium, low) only becomes available once your store has made more than 100 sales.

Measure it: repeat purchase rate and retention

Shopify defines a returning customer as a customer who places an order when their order history already includes at least one. Two reports give you the full lists. You'll find them in Analytics > Reports, under the Customers category:

  • Returning customers: customers with at least two orders;
  • One-time customers: customers with exactly one.

Your repeat purchase rate comes from those two numbers:

Repeat purchase rate = returning customers ÷ (returning customers + one-time customers) × 100

Example: 140 returning customers and 860 one-time customers give 140 ÷ 1,000 = 14%. That's the share of your customers who have bought again at least once.

Don't confuse it with the New vs returning customers report. That one counts who ordered in each period. A promotion month inflates new customers, and a quiet month pushes up the returning share. A merchant on r/shopify makes the same distinction. They separate "the percentage of orders from existing customers" from "the percentage of first-time buyers who ever purchase again."

The most accurate number is the cohort. The Customer cohort analysis report groups customers by the month of their first order. Its Metric menu shows the customer retention rate month after month. Compare cohorts at the same age. If June customers buy again more in month 2 than March customers did, whatever you changed in between is working.

What's a good rate? Someone on r/shopify asked "what is a good returning customer rate Shopify?" The answers start at "20-40% is the range people throw around." Others cite 55% for a fashion store and 87% for another. Nearly all of them conclude there's no universal number. A product that runs out gets far more repeat buyers than a blender. So benchmark against yourself, cohort by cohort.

Loyalty programs: when they're worth it

The Shopify App Store has dozens of loyalty apps built on points or tiers. But a program doesn't create loyalty. It rewards customers who already come back. Here's what merchants on r/shopify say:

  • "If you have a repeat purchase item they work. If you're selling a blender or something that's designed to last a while, not so much."
  • "Skip it until repeat purchase is actually a problem." The same merchant adds that the well-known apps "sit on the cart and the account page and they add weight you dont need on a small store."
  • A merchant installed a well-known loyalty app and said it "felt more like a full blown project than just adding a simple feature." Everything had to be set up, from rewards to flows, for a price they found high.
  • Another talks about brands whose customers buy every 3 to 6 months. Those customers "never accumulate enough points to feel rewarded before they forget the brand exists."
  • Another merchant only saw points redeemed once they started reminding customers on WhatsApp. For them, "the loyalty app itself matters way less than whether people even remember they have points."
  • A consultant who turns around money-losing brands says one of the first things they fix is "the loyalty points that are sitting on the balance sheet." So do the math on what you're giving away.

A program is worth it when your customers naturally buy again. You also need enough of them for the reward to motivate. And that reward has to fit in one sentence. "$5 off for every $50 spent" says more than points to convert.

Without an app: what Shopify already does

  • A discount limited to a segment, like the second-order offer. For example, give early access or a discount to your RFM Champions.
  • The "Welcome VIP customers" automation in Shopify Messaging. By default, a customer joins the VIP segment after their third order and $1,000 USD or more spent in total. They also join if they're tagged VIP. Adjust the threshold to your order value.
  • The "Celebrate customer birthday" automation, with a discount code. You need the customer's birth date, which the Shopify Forms app can collect.
  • Store credit. It's a balance tied to the customer's account, which you issue from their profile. Shopify lists it as a reward for loyalty or referral programs. On r/ecommerce, one merchant prefers it to discounts. In their view, it "gives people a reason to come back without feeling like you're constantly putting products on sale." It just needs to expire so people actually use it.

Store credit comes with conditions:

  • the customer has to be signed in to their customer account (new customer accounts, not legacy accounts) or pay with Shop Pay;
  • it only works on the online store, POS and Shop;
  • the full balance applies at once, with no partial use;
  • less than $15,000 USD per customer account;
  • expiration is set each time you issue credit (check the laws where you sell);
  • for stores created on or after May 12, 2025, the part paid with store credit is charged third-party transaction fees, unless you're on Shopify Plus with Shopify Payments.

If you still go with an app, compare its price with your order volume. Also check where it shows up in your store, and whether it reminds customers about their points.

Subscriptions: when the product runs out

For a product people buy every month, one merchant on r/shopify goes further. In their words, "if your product naturally drives repeat purchases (consumables, replenishment, supplements), you don't need loyalty, you need a subscription."

The Shopify Subscriptions app is free and made by Shopify. Here's what it does:

  • auto-billed subscriptions, weekly, monthly or yearly;
  • percentage, fixed amount or "Buy X get Y" discounts;
  • customers can skip a delivery, cancel or resume their subscription from their customer account;
  • customers are billed the day after the subscription is due, at 10:00 am in your store's time zone;
  • bundles aren't compatible, and your theme must support sections and blocks.

For the coffee store, a monthly subscription to the 250 g bag with a small discount replaces the day 21 reminder.

Merchants point out its limits too. One finds it "so so basic," because customers can't add or remove items. Another reports that on renewals it silently switches to the cheapest shipping option. If you offer several, check with a test order. Specialized apps cover more cases. Several merchants still find their price too steep for a small store.

What it does for your profitability

Here's a worked example (made up). A new customer costs you $15 in ads, and a bag leaves you $9 in margin. So the first order costs you $6. The second one brings in $9, minus the second-order offer. Every bag after that brings in the same.

On r/ecommerce, a consumables brand asked whether to aim for a more profitable first order. The most direct answer said what matters is a customer's value over time against what they cost you. It added that "if your repeat rate is strong, a break-even (or slight loss) first order is totally fine because you profit in reorders."

The more a customer is worth over time, the more you can afford to pay for their first purchase. That's what helps you scale your ads while staying profitable. To read that cost per customer in your campaigns, see read your ad campaign numbers.

No store yet? You can generate it with Scale Ova from your product. You can look at it and change it for free, and you only pay when you publish it on Shopify.

FAQ

How do I retain customers in ecommerce?
Keep your promises first (delivery time, quality, service). Then help customers use the product in the days after the purchase. Remind them when they need it. And keep a second-order offer for people who have bought only once. A loyalty program comes after that, once customers already buy again.
What's an example of a customer retention strategy?
Take a whole-bean coffee store. On delivery, it sends a thank-you email with the right dose, then storage tips on day 10. The reorder reminder comes on day 21, with a code limited to the "one order, 3 to 8 weeks ago" segment. The last reminder goes out on day 45. Customers who buy again are then offered a monthly subscription.
What's the repeat purchase rate formula?
The formula is returning customers ÷ (returning customers + one-time customers) × 100. In Shopify, both numbers come from two reports under Analytics > Reports. Returning customers lists people with at least two orders, and One-time customers lists people with exactly one.
What's a good returning customer rate on Shopify?
There's no universal number. A product that runs out gets far more repeat buyers than an appliance people keep for years. Merchants often quote 20 to 40%. The most useful comparison is still your own cohorts at the same age, in the Customer cohort analysis report.
How do I find repeat customers in Shopify?
Go to Analytics > Reports and filter the category to Customers. You'll find five useful reports there:
  • Returning customers;
  • One-time customers;
  • New vs returning customers;
  • Customer cohort analysis;
  • RFM customer analysis.
When should I send a replenishment email?
Send it about a week before the usage time runs out, counted from the order date. The shipping times of the first package and the next one cancel out. For a bag of coffee that lasts a month, that's around day 21.
Do I need a Shopify loyalty app?
Not at first. Until customers buy again naturally, an app adds cost and setup for little effect. Start with the second-order offer and emails. Test an app once repeat orders are a real part of your revenue.
Can I run a loyalty program on Shopify without an app?
Yes, a simple one. You can limit discounts to segments, like your RFM Champions. The Welcome VIP customers automation in Shopify Messaging and a birthday code add to that. Store credit can work as the reward. You get no points or tiers, but nothing to install.
Shopify store credit vs gift cards: what's the difference?
Store credit is tied to the customer's account. The customer has to be signed in or pay with Shop Pay. The credit works on the online store, POS and Shop. Its expiration is set each time you issue it. Gift cards instead have one expiration setting for the whole store. For stores created since May 12, 2025, the part paid with store credit is charged third-party transaction fees. Shopify Plus stores using Shopify Payments are the exception.
Is the Shopify Subscriptions app free?
Yes, it's free and made by Shopify. It handles weekly, monthly or yearly subscriptions and their discounts. It doesn't handle bundles, and your theme must support sections and blocks.

Sources