Everything so far is about finding customers: the store, the offer, the ads. Each new customer costs you something. A returning customer, though, you've already paid for once: their second order comes in with no new ad spend.
The example for the whole article: a whole-bean coffee store (a made-up example). A 250 g (about 9 oz) bag makes about 30 cups, so it lasts a month at one cup a day. The customer orders, gets the coffee in 2 to 3 days and reaches the bottom of the bag a month later. 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 the basics:
- The delivery time you promised is kept. A package that arrives on time is the first promise kept. See set up shipping.
- The product matches the photos. That's what your test order with your supplier is for.
- You answer quickly to questions and problems. A well-handled problem often builds more trust than an order with none.
- Returns are simple, if something's wrong.
After the purchase: help before you sell again
The moment after purchase is when your customer pays the most attention to your brand. Use it to help, 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." How-to, care instructions, something that confirms they made the right call. Another 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," while 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. Under Post-purchase:
- "Thank customers after they purchase": an email after the first and second purchase;
- "Upsell customers after their first purchase";
- "Win back customers": a message after a set amount of time since the last order, sent when the customer joins a segment (the "Customer joined segment" trigger).
Two limits. These automations only go to customers subscribed to email marketing, so the consent you collect at checkout matters. And they count toward the 10,000 free emails a month included with the Basic, Grow, Advanced and Plus plans (then $1 per 1,000 emails up to 300,000), except abandoned checkout, which is always 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: a discount code, a QR code for a review, a referral offer? The sharpest answer in the thread: "two asks on one piece of paper usually gets you neither." One card, one ask.
For a product people rebuy quickly, like coffee, that's the code for the next bag. For a belt people keep for years, the same thread suggests a code to give a friend instead: "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, and the next one will also take 2 to 3 days to arrive. The two shipping times cancel out: count the usage time from the order date, and subtract a week so the customer has time to reorder.
Reminder day = usage time − one week. For the coffee: 30 − 7, so a reminder around day 21.
The other rhythms:
- Products that go together: after the main product, the accessory or the refill. For coffee, the filter or the grinder. 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: a reminder before the holidays, or on the purchase anniversary if it was a gift.
- One-time purchases (furniture, an appliance, a belt): 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, or use Shopify Flow.
The second-order offer, only for one-time buyers
The second order is often the hardest to get. But a public code, slipped into every package or shown on the site, 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: 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."
The answer in Shopify: a customer segment, and 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: 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, and leaves as soon as they place a second order, or after 8 weeks.
2. The discount. In Discounts > Create discount, pick an amount off the order, then:
- Eligibility: Customer segments, and 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).
3. Sending it. The day 21 email gives the code, the day 45 email reminds them it's about to expire. Announce a deadline that matches the segment: 8 weeks after the order. Try it with a test customer before you send it.
How much to offer? The same logic as your first offer: whatever costs you least for the strongest feeling of a good deal (see build an offer that converts). For the coffee store, a small free bag of another origin introduces a second product, where a percentage only lowers the price.
On r/shopify, a merchant who advises against loyalty apps suggests this bare-bones version: "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 and compare their second-order rate with everyone else's. That's how the merchant who started 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. In Analytics > Reports, filter the category to Customers and open RFM customer analysis.
RFM stands for recency (days since the last order), frequency (number of orders) and monetary value (total spent). Each customer gets a score from 1 to 5 on each of the three, compared with the other customers of your store: 5 means 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.
Two limits. Scores are relative to your store: with a few dozen customers, a customer changes group with every order, and simple segments (number of orders, last order date) tell you more. And the predicted spend tier filter (high, medium, low) is only 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, in Analytics > Reports, 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, so 140 ÷ 1,000 = 14% of your customers have bought again at least once.
Don't confuse it with the New vs returning customers report, which counts who ordered, period by period: a promotion month inflates new customers, a quiet month pushes up the returning share. A merchant on r/shopify makes the same distinction between "the percentage of orders from existing customers" and "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, and the 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? On r/shopify, when someone asked "what is a good returning customer rate Shopify?", answers ranged from "20-40% is the range people throw around" to 55% for a fashion store and 87% for another. Nearly all of them concluded there is no universal number: a product that runs out gets far more repeat buyers than a blender. Benchmark against yourself, cohort by cohort.
Loyalty programs: when they're worth it
Points, tiers, rewards: the Shopify App Store has dozens of loyalty apps. 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 who installed a well-known loyalty app said it "felt more like a full blown project than just adding a simple feature": rewards, conditions and flows to set up, for a price they found high.
- For brands whose customers buy every 3 to 6 months, another explains that 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: "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": do the math on what you're giving away.
A program is worth it when your customers naturally buy again, you have enough of them for the reward to motivate, and the reward fits 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: early access or a discount for 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, or 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: 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 because it "gives people a reason to come back without feeling like you're constantly putting products on sale," as long as it expires so people actually use it.
The store credit 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: customers can't use part of it;
- 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 the price at your order volume, 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: "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:
- auto-billed subscriptions, weekly, monthly or yearly;
- percentage, fixed amount or "Buy X get Y" discounts;
- from their customer account, customers can skip a delivery, cancel or resume their subscription;
- 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. One finds it "so so basic": customers can't add or remove items. Another reports that on renewals it silently switches to the cheapest shipping option, so if you offer several, check with a test order. Specialized apps cover more cases, at a price several merchants find too steep for a small store.
What it does for your profitability
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, and so does every bag after that.
On r/ecommerce, a consumables brand asked whether to aim for a more profitable first order. The most direct answer: what matters is a customer's value over time against what they cost you, and "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 the first purchase, which helps you scale your ads while staying profitable. To read that cost per customer in your campaigns: read your ad campaign numbers.
No store yet? You can generate it with Scale Ova from your product, look at it and change it for free, and only pay when you publish it on Shopify.
FAQ
How do I retain customers in ecommerce?
What's an example of a customer retention strategy?
What's the repeat purchase rate formula?
What's a good returning customer rate on Shopify?
How do I find repeat customers in Shopify?
When should I send a replenishment email?
Do I need a Shopify loyalty app?
Can I run a loyalty program on Shopify without an app?
Shopify store credit vs gift cards: what's the difference?
Is the Shopify Subscriptions app free?
Sources
- Customer segmentation, Creating customer segments, Shopify segment filters and Predicted spend tier, Shopify Help Center, accessed September 24, 2026
- Customers reports (returning customers, one-time customers, cohort analysis, RFM analysis), Shopify Help Center, accessed September 24, 2026
- Percentage and fixed amount discounts, Shopify Help Center, accessed September 24, 2026
- Marketing automations, Creating marketing automations and Shopify Messaging email pricing, Shopify Help Center, accessed September 24, 2026
- Store credit, Shopify Help Center, accessed September 24, 2026
- Shopify Subscriptions, Shopify Help Center, and the app listing on the Shopify App Store, accessed September 24, 2026
- r/shopify threads accessed September 24, 2026: Did a loyalty program increase repeat purchases for your Shopify store?, How are you handling loyalty/rewards apps - built-in, third-party, or skipping it entirely?, anyone else feel like loyalty apps are way more work than they should be?, Loyalty app?, what is a good returning customer rate Shopify?, We need to talk about the native Shopify Subscriptions app
- r/ecommerce threads accessed September 24, 2026: Retention strategies that actually change repeat -purchase behaviour, Creative strategies for customer retention, Post Purchase Offer for Leather brand, Anyone using cashback or store credit to actually drive repeat orders?, Would you optimize for cheaper CAC or a more profitable first order in a consumables business?




