Repeat Purchase Rate: Formula, Benchmarks, How to Raise It
Repeat purchase rate is the share of customers who bought more than once. Get the formula, two worked examples, Shopify steps, and benchmarks with methods.

Repeat purchase rate is the share of your customers who have bought from you more than once. If 200 of your 1,000 customers placed two or more orders, your repeat purchase rate is 20%.
The number looks simple and then stops matching. One dashboard says 18%, another says 26%. Usually nothing is broken: each figure uses a different window, denominator, or customer definition. This guide gives you the formula, two ways to calculate it with worked numbers, the Shopify reports to use, and the benchmarks that say how they were measured.
Quick Answer
Repeat purchase rate = customers with 2 or more orders / total customers x 100, over a stated window. Calculate it by period (customers who ordered twice within a quarter) or by cohort (first-time buyers who ordered again within 90 days), and use the same method every time. A study of 1,500+ Shopify stores reports a 22.5% median, one agency's 365-day dataset reports an 18.8% aggregate, and category changes the picture: in that agency dataset, consumables ran 30 to 40% while durables ran 10 to 15%. In Shopify, the Returning customers and One-time customers reports give the all-time version, and Customer cohort analysis gives the cohort view.
Check your own number. The free retention check works out your repeat purchase rate and what a few points of lift are worth, in your browser and without a signup.
Table of Contents
- Repeat purchase rate vs retention rate and churn
- Repeat purchase rate formula
- How to calculate repeat purchase rate: two methods
- How to find repeat purchase rate in Shopify
- Repeat purchase rate benchmarks
- Repeat purchase rate by industry
- How to raise repeat purchase rate
- Where Tranthor fits
- FAQ
Repeat Purchase Rate vs Retention Rate and Churn
Four metrics get used as if they were one. They are not, and mixing them is the fastest way to compare the wrong numbers.
| Metric | Question it answers | Formula | Example |
|---|---|---|---|
| Repeat purchase rate | What share of my customers have ordered more than once? | Customers with 2+ orders / total customers | 200 / 1,000 = 20% |
| Second purchase rate | Of one cohort of first-time buyers, how many placed order two within a set window? | Cohort customers with a second order / cohort customers | 71 / 420 = 16.9% |
| Customer retention rate | Of a group of earlier customers, how many ordered in a later period? | Group customers who ordered in the period / group customers | 31 / 420 = 7.4% in month 6 |
| Churn rate | Of that same group, how many did not order in the period? | 1 minus retention rate | 92.6% in month 6 |
Second purchase rate is a cohort metric that only looks at order number two, and it has its own guide: what a second purchase is and how to calculate the rate. Repeat purchase rate is wider. It counts anyone with a second, third, or tenth order.
Retention and churn work differently. Shopify's Customer cohort analysis defines customer retention rate as the percentage of customers in a cohort who placed an order in a given period. For a whole customer base, Shopify publishes (E minus N) / S x 100, where S is customers at the start of the period, E is customers at the end, and N is new customers acquired during it.
That is the catch. A customer who buys every three months looks "churned" in the two months between orders. Without a subscription or cancellation event, churn only means something once you define lapsed relative to the product's reorder cycle. The Shopify win-back email guide shows how to set that window by vertical.
Repeat Purchase Rate Formula
Repeat purchase rate = customers with 2 or more orders / total customers x 100
The formula is easy; the inputs are where stores disagree. Fix three things first:
- Who counts as a customer. Use unique customers with at least one paid order. Drop test, cancelled, and fully refunded orders. If one person checks out as a guest with two email addresses, a customer-ID count treats them as two people and understates repeat behavior.
- What you count. Customers, not orders. A customer with five orders is one repeat customer, not five.
- Which window you use. A quarter, a cohort window, or all history. This changes the answer more than anything else.
How to Calculate Repeat Purchase Rate: Two Methods
Method 1: The period method
Take every customer who ordered during a period, then ask how many of them ordered at least twice inside that same period.
| Q3 2026 customers | Customers |
|---|---|
| Ordered once | 820 |
| Ordered twice | 140 |
| Ordered 3 or more times | 40 |
| Total customers who ordered | 1,000 |
Period repeat purchase rate = (140 + 40) / 1,000 = 18%
The period method is quick and works from any order export. Its weakness is that it only sees behavior inside the window. A customer who bought in June and again in October is a one-time buyer in both Q2 and Q3, even though the store has a repeat customer. Short windows understate the rate in categories with long buying cycles.
Method 2: The cohort method
Group customers by when they first ordered, then follow each group for the same length of time. Use this method to learn whether a change in your retention work moved behavior.
| First-order month | First-time buyers | Placed a 2nd order within 90 days | Rate |
|---|---|---|---|
| January 2026 | 420 | 71 | 16.9% |
| February 2026 | 380 | 72 | 18.9% |
| March 2026 | 450 | 67 | 14.9% |
| Total | 1,250 | 210 | 16.8% |
Cohort repeat purchase rate = customers with a 2nd order inside 90 days / first-time buyers in the cohort
Every customer in a cohort gets the same time to come back, so a gap between cohorts (March against February) reflects behavior, not how long each group had to reorder. When the cohort is first-time buyers and the event is "ordered again within the window," this is exactly the second purchase rate. It is the same measurement, not a competing one.
Same store, three answers
Run all three views on one store and you get three numbers. None of them is wrong.
| View | Question | Window | Result |
|---|---|---|---|
| Period | Of Q3 buyers, how many ordered 2+ times in Q3? | One quarter | 18% |
| Cohort | Of Jan to Mar first-time buyers, how many ordered again? | 90 days from first order | 16.8% |
| All-time | Of every customer ever, how many have 2+ orders? | All history (1,300 of 5,000) | 26% |
These numbers are illustrative, built to show how the method changes the answer. Pick one view as your headline, write the window beside it, and never compare it to a number measured another way.
How to Find Repeat Purchase Rate in Shopify
Shopify has no report named "repeat purchase rate." It has several that answer neighboring questions, and the definitions differ.
- Open the customer reports. In your Shopify admin, go to Analytics, then Reports, and filter the list to the Customers category.
- Get the all-time rate from two reports. The Returning customers report lists customers with two or more orders. The One-time customers report lists customers with exactly one. Set the date range to your store's full history, export each report to CSV, count the rows, and divide returning by returning plus one-time. Shopify counts a customer as returning from their full order history, not only the report's timeframe.
- Get the cohort view from Customer cohort analysis. Rows are cohorts by first-purchase month. Set the metric to Customer retention rate, and use the Intervals menu to group by week, month, or quarter. The Period 0 column captures returning orders placed by the cohort's customers in the same period as their first order.
- Do not add up the period columns. Cohort retention rate counts customers who ordered in each period. A customer who orders in months 1 and 3 appears in both columns, so they do not sum to a cumulative repeat rate.
- Get a windowed rate from an order export. For the period method (customers with 2+ orders in the last 90 days), export orders to a spreadsheet and count orders per customer ID for that range.
Why the "returning customer rate" is a different number
Shopify's Analytics overview lists a returning customer rate in its Sales section. Shopify's field reference defines it as returning customers divided by all customers who placed orders, and a returning customer is one whose order history already includes at least one order.
That describes the mix of this period's buyers, not repeat behavior. A customer who first bought in 2025 and buys once in Q3 2026 counts as returning in Shopify for Q3. Under the period method above, that same customer is a single-order customer. After a big acquisition push, the returning customer rate falls even if more existing customers are reordering. Read it as an acquisition-mix signal, and use cohorts for repeat behavior.
Repeat Purchase Rate Benchmarks
Most pages that list a "good" repeat purchase rate give a range with no sample, window, or method behind it. Three sources below say how they measured. The first two publish a repeat purchase rate; the third is a different metric, included to show why numbers collide.
| Source | Sample | Figure | Method as stated | Limits |
|---|---|---|---|---|
| Little Stream Software, Shopify data study (2024 in its URL) | 1,500+ Shopify stores; aggregate, non-personal data; incomplete, fake, and test stores removed where possible | 25% average, 22.5% median, 1.8 orders per customer; about 68% of stores between roughly 10% and 40% | "Full" rate across all sequenced orders; the author's glossary defines it as customers with two or more orders | No time window, no category split, no publication date on the page |
| BS&Co, DTC agency report (February 2026) | 156,110 customers, 10+ verticals, brands managed by one agency; brand count not disclosed | 18.8% aggregate; brand range 7.1% to 44.2% | Customers with 2+ orders in a 365-day lookback; weighted by customer count | One agency's portfolio; repeat-buyer counts differ between sections without explanation |
| Shopify Help Center, analytics field reference | Not stated | "Most stores display 20-40%" for returning customer rate | Returning customers / customers who ordered in the period | Different metric; no sample or method behind the range |
Why the numbers disagree
The three sources do not contradict each other. They measure different things, for structural reasons:
- Window. Little Stream counts across all order sequences with no stated window, so old customers have had years to reorder. BS&Co looks back 365 days. A longer window gives a higher rate.
- Weighting. Little Stream reports a per-store average and median. BS&Co weights by customer count, so large brands carry more of the aggregate, and if they repeat less than small ones they pull it down. A per-store median and a customer-weighted aggregate can differ by several points on the same underlying data. This is an inference from how each source describes its method, not something either source states.
- Metric. Shopify's 20 to 40% describes the mix of a period's buyers. It is not a share of customers with two or more orders.
A store at 20% could be above, at, or below "average" depending on which source you pick. The useful comparison is your own rate, measured one way, trending up.
Repeat Purchase Rate by Industry
Category shapes repeat behavior, which is why a single store-wide benchmark misleads. BS&Co is the only source above that breaks its data out by vertical with a stated method.
| Vertical group (BS&Co) | Range across brands | Typical |
|---|---|---|
| Consumables (supplements, food and beverage, spirits, disposables) | 22% to 44% | 30% to 40% |
| Fashion (apparel, beauty and luxury, jewelry) | 10% to 17% | 12% to 17% |
| Durables and general retail (home decor, general retail) | 7% to 18% | 10% to 15% |
Read this with three cautions. It is one agency's portfolio, so it skews toward the brands that agency serves. BS&Co notes that its apparel reorder data may include exchanges processed as new orders, which would inflate that figure. And the grouping is theirs: beauty sits inside "fashion" here, which not every retention team would do.
The direction is the part worth keeping: products people run out of get reordered more than products people keep for years. Little Stream's author guesses the same about subscription and consumable stores, though that study has no category split to prove it.
None of the sources above cover MENAP stores, and we have not seen a benchmark for the UAE, Saudi Arabia, or Egypt that discloses its sample and method. Until one exists, do not import a US or European number as your target. Calculate your own cohort rate by first-order product category and compare it to itself quarter over quarter.
How to Raise Repeat Purchase Rate
The rate is a ratio, so there are two ways to move it. Add repeat buyers to the numerator, or stop adding one-time buyers to the denominator who were never going to return. The second gets ignored. A heavy first-order discount can bring in customers with no intent to reorder, which drags the rate down even if your retention work is good.
| Lever | What it changes | Read next |
|---|---|---|
| Time order two before the buyer goes quiet | Cohort rate in the first 30 to 90 days | Second purchase campaign for Shopify |
| Match the message to the product the buyer actually bought | Reorder and cross-sell rate | Repeat purchase campaign examples |
| Reach buyers who passed their normal reorder window | Late repeat orders from lapsed customers | Shopify win-back email campaign |
| Judge repeat buyers by value, not count | Whether a higher rate is worth more | Customer lifetime value for ecommerce |
Two habits keep you honest. First, report the rate by first-order channel and first-order discount, because blended numbers hide the segments that do not come back. Second, when a campaign launches, hold out a comparable group that does not receive it. A rising rate alone cannot tell you whether the campaign or the season caused it.
Where Tranthor Fits
Tranthor is an autonomous CRM for ecommerce retention. It reads your Shopify order history, finds the repeat-purchase moment for a customer, and drafts the campaign. Every playbook starts in review: the first run drafts for your approval, and auto-send stays off until you have approved a run. Limits you set (contact frequency, spacing, daily send cap, discount cap) are enforced at send time, and where a holdout is configured, it reports lift against it. The overview is in AI CRM for ecommerce.
You do not need it to calculate the rate. The formulas above work from a spreadsheet.
Sources: Shopify customer reports, Shopify analytics field reference, Using the Shopify Analytics overview dashboard, Shopify customer retention rate formula, Little Stream Software Shopify data study, Little Stream repeat purchase rate glossary, BS&Co repeat purchase rate benchmarks.
Frequently asked questions
What is repeat purchase rate?
Repeat purchase rate is the percentage of customers who have placed more than one order with your store. If 200 of your 1,000 customers have ordered two or more times, your repeat purchase rate is 20%. State the time window next to the number, because the rate changes with it.
How do you calculate repeat purchase rate?
Divide the number of customers with two or more orders by your total number of customers, then multiply by 100. Count unique customers, not orders. You can run it over a period (such as one quarter), over a cohort of first-time buyers (such as 90 days after order one), or across all history.
What is a good repeat purchase rate?
There is no universal good number. A study of more than 1,500 Shopify stores found a 22.5% median and 25% average, while one agency's 365-day dataset found 18.8% in aggregate. Category matters: consumables sit well above durables. Measure your own rate on a fixed window and aim to improve it.
What is the difference between repeat purchase rate and customer retention rate?
Repeat purchase rate counts customers who have ordered more than once. Customer retention rate takes a group of earlier customers and asks how many ordered again in a later period. Retention is measured per period, so it can look low in months between a customer's normal orders.
Is Shopify's returning customer rate the same as repeat purchase rate?
No. Shopify defines returning customer rate as returning customers divided by all customers who placed orders in the period, where a returning customer already has an earlier order. It reflects how many of this period's buyers had bought before, so it rises and falls with new-customer volume.
How do I find repeat purchase rate in Shopify?
In Shopify admin, go to Analytics, then Reports, and filter to Customers. Set the date range to your full history, count the Returning customers and One-time customers reports, and divide returning by the total for an all-time rate. Use Customer cohort analysis for cohort retention, or export orders for a windowed rate.
Keep reading

Shopify CRM: What Shopify Covers and When You Need More
Shopify CRM explained: Shopify is not a full CRM, but it has customer profiles, segments and email, SMS and WhatsApp campaigns. See when you need more.

First-Time Buyer Retention Campaigns: 7 Plays for Ecommerce
Turn new customers into repeat buyers with first-time buyer retention campaigns for education, replenishment, cross-sell, review, loyalty, and win-back timing.

Repeat Purchase Campaign Examples for Ecommerce Retention
Seven repeat purchase campaign examples for ecommerce teams, including replenishment, cross-sell, second purchase, win-back, VIP, and churn-risk flows.