Ecommerce Customer Retention: How to Measure It, and What Most Brands Get Wrong

David Lopes

TL;DR

  • Ecommerce customer retention measures whether the customers you already paid to acquire come back and buy again. It is a property of a cohort, not of a calendar month, which is why a single blended retention rate can fall in a period when every individual cohort actually improved.
  • Three different metrics get called retention: retention rate, repeat purchase rate and repurchase rate. They answer different questions and can sit twenty points apart on the same data. Five mechanical failures then corrupt the number further, including growth dilution, cohorts counted as zeros before their window has elapsed, cohorts older than your identity data reading as artificially loyal, and subscription renewals logged as active repurchases.
  • Polar makes retention measurable instead of arguable. Retention cohort tables let you switch between retention rate, customers, LTV and LTV:CAC on one grid, with calendar or rolling period baselines, so you compare cohorts at equal age rather than at the same moment. LifetimeID stitches sessions across devices and browsers, so a returning customer is not miscounted as a new one. And because acquisition and retention sit in the same model, you read the payback period directly instead of estimating it.

Search for guidance on ecommerce customer retention and you will find six well-ranked guides that agree on almost everything except the arithmetic. Four of them publish a formula for the retention rate. Two of those formulas are the same metric written differently, one is a different metric wearing the wrong label, and the fourth page skips the formula and gives you the lifetime value equation instead. The benchmarks they quote range from 25% to 40% without any of them saying over what period.

That is not a rounding disagreement. It means most brands are comparing their retention number against a benchmark that was calculated a different way. This guide covers the three metrics that get called retention, the five specific ways an ecommerce retention number ends up wrong, and how to read a cohort table so that the number you report is one you can defend.

What ecommerce customer retention actually measures

Ecommerce customer retention measures whether the customers you already paid to acquire come back and buy again. That is the whole idea, and it is worth stating plainly because the metrics built on top of it drift quickly.

The important structural point is that retention is a property of a cohort, not of a calendar month. A group of customers who first bought in March has a retention curve: some share of them return in April, more by June, more by the following March. The curve belongs to the March cohort and it keeps developing for as long as that cohort exists.

Most reporting collapses that curve into a single number for the business, which is where the trouble starts. A single blended retention rate averages a customer who bought last week with one who bought three years ago, and the average moves whenever the mix of the two changes. It can fall in a month where every individual cohort improved.

Retention rate, repeat purchase rate and repurchase rate are three different metrics

These three get used interchangeably in ecommerce writing, including by pages currently ranking for this term. They answer different questions and they will not match each other.

Customer retention rate asks: of the customers I had at the start of a period, what share did I still have at the end. It is a period measure and it treats your customer base as a population that leaks.

Repeat purchase rate asks: of the customers acquired in a given cohort, what share have bought at least twice. It is a cohort measure, it starts at zero by definition, and it only ever climbs as the cohort ages.

Repurchase rate asks something narrower: of the customers who bought a specific product, what share bought that same product again. It is a product measure, and it is the right one for consumables and refills where the question is whether a particular item earns a reorder.

A brand that reports its repeat purchase rate as its retention rate is not making a small error. The two numbers can sit twenty points apart on the same data, and they move in response to different things.

MetricWhat it measuresQuestion it answersWhen it misleads you
Customer retention rateShare of the customers you held at the start of a period who are still customers at the endIs my customer base leakingDuring fast acquisition growth, when new customers who have not had time to return drag the rate down
Repeat purchase rateShare of one acquisition cohort that has bought two or more timesDo the customers I acquire come backWhen compared across cohorts of different ages, since younger cohorts have had less time to repeat
Repurchase rateShare of buyers of one product who bought that same product againDoes this product earn a reorderWhen read as a whole-business number, since it ignores customers who came back for something else
Churn rateThe inverse of retention rate over the same periodHow fast am I losing customersIn non-subscription ecommerce, where there is no cancellation event and churn is inferred from silence

The retention rate formula, and why published versions disagree

The standard customer retention rate formula, the one Shopify and Funnel both publish, subtracts newly acquired customers before dividing, so that acquisition does not inflate the result:

Retention rate = ((Customers at end of period minus customers acquired during period) / Customers at start of period) x 100

Take a brand that starts a quarter with 4,000 customers, acquires 1,200 during it, and ends with 4,400. Ending customers minus new customers is 3,200. Divided by the 4,000 you started with, that is a retention rate of 80%. Skip the subtraction and you would report 110%, which is the arithmetic telling you that you have measured acquisition rather than retention.

The version Yotpo publishes, repeat customers divided by initial customers, is a legitimate formula. It is just the formula for repeat purchase rate. When a guide prints it under the heading "retention rate", every reader who follows it produces a number that is not comparable to the benchmark printed two paragraphs above. Saras Analytics skips the retention formula altogether and gives the lifetime value equation in its place, which answers a different question again.

The practical defence is to write your definition down before you calculate anything, including the period length and whether you subtract new customers. Two analysts at the same brand will otherwise produce two different retention rates from the same Shopify export and both will be arithmetically correct.

What counts as a good ecommerce retention rate

The guides currently ranking for this term answer that question three different ways. Saras Analytics quotes 25% to 30% for general ecommerce and 40% to 60% for subscription. Yotpo puts the ecommerce average at 30% to 40%. Shopify cites 28% as the average repeat customer rate. Those numbers are not wrong, but they are close to unusable as published, because not one of them travels with the two facts that determine it: the length of the window and whether subscriptions are counted.

A brand selling a product with a natural ninety day replenishment cycle will show a low repeat rate at thirty days and a healthy one at one hundred and twenty. Nothing about the business changed between those two readings. The window did. A brand with a third of its revenue on subscription will beat a non-subscription peer on repeat rate by a wide margin without having earned a single additional purchase decision, because renewals count as repeats.

Useful reference points therefore need at least four qualifiers: the metric, the window, the subscription treatment, and the category purchase cycle. Anything quoted without those is a directional signal at best.

Why one benchmark cannot travel between two brands

Consider two brands with identical customer behaviour. One measures repeat purchase rate at ninety days including subscription renewals. The other measures customer retention rate over a calendar quarter with renewals stripped out. The first will report a materially higher number. Neither is lying, and neither result tells you anything about which brand retains customers better.

This is why the most valuable comparison is nearly always your own cohorts against each other, not your business against an industry figure. Cohort against cohort holds the definition constant, which is the only thing that makes the difference interpretable.

Five ways an ecommerce retention number goes wrong

These are mechanical failures, not judgement calls. Each one produces a number that looks reasonable, sits on a dashboard for months, and points in the wrong direction.

1. Snapshot metrics mix cohort maturities

A blended, point in time retention rate pools customers of every age. When the mix shifts, the number moves for reasons that have nothing to do with customer behaviour. This is the most common failure because it is the default output of most reporting: one number, current period, no cohort dimension. The fix is to stop treating retention as a single figure and read it as a set of cohort curves.

2. Growth dilutes a blended retention rate

Acquire aggressively and your blended retention rate falls, mechanically, because you have added a large group of customers who have not yet had time to buy again. The brands most likely to conclude that their retention is collapsing are the ones acquiring fastest. Cohort reporting separates the two effects: each cohort's curve is unaffected by how many customers arrived after it.

3. Right-censored cohorts get counted as zeros

A cohort acquired forty days ago cannot have a ninety day repeat rate yet. The question has not had time to resolve. If your table renders that cell as 0% rather than leaving it blank, every recent cohort drags the average down and the trend line slopes downward for purely structural reasons. A correctly built cohort table leaves the cell empty until the window has actually elapsed.

4. Left-censored cohorts read artificially new

The mirror image, and much less well known. If your customer identity data only reaches back eighteen months, a customer who first bought two years ago looks like a first time buyer on the date your data begins. Their cohort will show a suspiciously strong repeat rate, because their genuine first purchase is invisible and their second purchase is being counted as their first return. Cohorts that predate your identity coverage should be flagged as partial history and excluded from trend comparisons rather than quietly averaged in.

5. Subscription renewals inflate repeat behaviour

An auto-renewal is a billing event, not a purchase decision. Counting renewals inside repeat purchase rate means the metric measures your churn-management and dunning quality rather than whether customers actively chose to come back. Both are worth measuring, separately. Where the underlying data carries only first-order context, no filter applied afterwards can reach the second or third order inside the window, so this often has to be solved when the metric is built rather than at read time.

Retention measurement diagnostic: symptom to fix
SymptomRetention rate falls every month your new customer count rises.
Cause and fixGrowth dilution of a blended rate. Move to cohort curves, which are unaffected by later arrivals.
SymptomThe most recent three cohorts always look like your worst ever.
Cause and fixRight-censoring counted as zero. Leave cells blank until the window has fully elapsed.
SymptomYour oldest cohorts show implausibly strong repeat rates.
Cause and fixLeft-censoring. Flag cohorts predating your identity data as partial history and exclude them.
SymptomRepeat rate is far above category norms and barely moves month to month.
Cause and fixSubscription renewals inside the metric. Rebuild it with subscription charges stripped out.
SymptomA cumulative retention curve goes up, then down.
Cause and fixDouble counting. A cumulative curve cannot fall. See the check below.

The arithmetic check that catches a broken retention metric

There is one test worth running on any cohort report before you make a decision with it, and it takes about a minute.

A cumulative retention curve can only rise or flatten. It can never fall. The reason is definitional: the cumulative curve answers "has this customer come back by month N", and once a customer has come back, they cannot un-return. Month 6 must be greater than or equal to month 5 for every cohort, always.

So open your cohort table, pick any row, and read left to right. If the numbers rise and then dip, the metric is double counting: it is almost certainly counting a customer once for each period in which they ordered, rather than once from the period they first came back. That single defect typically overstates a cumulative repeat rate by several points, and it is invisible unless you look for the dip.

A second check on the same table: the acquisition period column should read 100% for every cohort, because by definition every customer in a cohort made a purchase in the period they were acquired. If it does not, your cohort assignment and your order attribution disagree with each other.

Both checks are worth running whenever a retention number changes unexpectedly, and both are faster than debugging the pipeline.

How to read a cohort table

A cohort table is the standard instrument for ecommerce customer retention, and it is simpler than it looks. Rows are acquisition cohorts, usually the month, quarter or year in which a group of customers placed their first order. Columns are periods elapsed since that first order. Each cell holds one metric for one cohort at one age.

Read across a row and you see one cohort ageing. Read down a column and you compare cohorts at the same age, which is the comparison that actually controls for maturity. The triangular shape is expected: recent cohorts have fewer filled cells because they have not lived long enough, and those cells should be blank rather than zero.

The metric in the cells is a choice, and it changes the question. Retention rate and customer counts tell you how many came back. Lifetime value, gross margin and LTV:CAC tell you what they were worth. Reading value metrics rather than counts is usually the faster route to a decision, because a cohort that retains slightly worse but spends considerably more is a cohort you want more of.

Calendar periods versus rolling windows

There are two defensible ways to bucket the columns and they answer different questions.

Calendar periods set month 0 as the acquisition month and align every cohort to the calendar. This makes seasonality visible: a promotional November shows up in the same column for every cohort, so you can see it. The cost is that a customer acquired on 28 November has almost no month 0 in which to return.

Rolling windows measure from each customer's own first order date, so month 1 means the thirty days after that specific purchase. This gives a cleaner read on genuine repeat timing and is the better basis for questions about replenishment cycles. The cost is that calendar events smear across columns.

Neither is correct in general. Use calendar periods for reporting and seasonality, rolling windows for behavioural questions about how quickly customers come back. Just do not compare a number produced one way against a number produced the other.

What a cohort table answers that a single rate cannot

Once retention is cohort-shaped, several questions become answerable that a blended rate simply cannot address.

Which acquisition channels bring customers who come back. Split cohorts by the channel that acquired them and the differences are often larger than the differences between your creative tests. Two channels can deliver the same cost per acquisition and produce customers worth twice as much over a year. That is a budget decision hiding inside a retention report, and it is only visible if acquisition data and retention data sit in the same model.

Which first product creates repeat buyers. Group cohorts by the product in the first order and you get gateway product analysis. Some entry products reliably produce loyal customers and some produce one purchase and silence, and the pattern rarely matches which product sells most. This changes what you promote to cold traffic, which is a more durable lever than any lifecycle email.

Where cumulative value crosses acquisition cost. Put lifetime value and customer acquisition cost on the same cohort grid and you can read the payback period directly: the column where cumulative value per customer passes what you paid to acquire them. That number, rather than a retention percentage, is what tells you how hard you can afford to push acquisition. It is also the number most often estimated when it could be measured, and our view on retention and LTV reporting starts from exactly that grid.

Why retention measurement belongs next to acquisition data

Retention is usually owned by whoever owns the email and SMS platform, and so it usually gets measured there. That creates two problems that no amount of reporting effort inside the marketing tool can fix.

The first is coverage. An email platform sees the customers who are on a list and reachable. It cannot see the customer who bought twice, never subscribed, and is perfectly retained. Retention measured inside a messaging tool is retention among the email-reachable, which is a subset that gets less representative as your business grows. These platforms also tend to attribute generously, claiming conversions that would have happened without the send, which inflates the apparent contribution of retention marketing specifically.

The second is identity. A returning customer who comes back on a different device, in a different browser, or from a different network will be counted as a new customer unless something is stitching those sessions together. That error is doubly expensive: it inflates your new customer count and deflates your retention rate at the same time, from a single cause. Identity resolution is unglamorous infrastructure, and it sets a ceiling on how accurate any retention number above it can be.

Both problems point the same way. Retention data needs to live in the same model as acquisition data, keyed to a stable customer identity, or the two halves of the unit economics can never be reconciled.

Setting up ecommerce customer retention measurement you can trust

A short sequence, in the order that matters.

Write the definition down first. Name the metric, the window, and whether new customers are subtracted and subscriptions included. Put it next to the number on the dashboard. Most retention disputes are definition disputes wearing a disguise.

Move from one rate to cohort curves. Group by acquisition period, track elapsed periods, and compare cohorts at equal age rather than at the same moment in time.

Handle both censoring problems explicitly. Blank, never zero, for windows that have not elapsed. Partial-history flags on cohorts older than your identity data, and exclude them from trends.

Separate active repurchase from renewal. Build one version of the metric with subscription charges stripped out. Keep the other. They answer different questions and you will want both.

Run the monotonicity check. Any cumulative curve that falls is broken. Check it before the number reaches a slide.

Attach acquisition cost. Retention without CAC is a percentage. Retention with CAC is a payback period, and only one of those tells you what to do next.

Getting to the point where these are answerable in one place, rather than reconciled across a spreadsheet, an email platform and an ad account, is mostly a data modelling problem rather than a reporting one. It is the same foundation that makes cohort analysis for ecommerce practical to run every week, and the same foundation that lets you spot customers at risk of churning while there is still time to act. Fix the measurement first. The tactics are easy to choose once the number is honest.

FAQ

Published benchmarks cluster between 25% and 40%, but the figure is only meaningful alongside the window it was measured over, whether subscription renewals are included, and your category's natural replenishment cycle. A ninety day repeat rate and a thirty day repeat rate on the same brand can differ by twenty points or more. Compare your own cohorts against each other before comparing yourself to an industry number.
Ecommerce contributes to customer retention mainly by making customer behaviour measurable at the individual level. Every order carries a customer identifier, a timestamp, a product mix and an acquisition source, which means retention can be measured by cohort rather than estimated. That granularity is what allows a brand to see which channels and which first products produce customers who come back, rather than only how many came back overall.
Subtract the customers acquired during the period from the customers you had at the end of it, divide by the customers you had at the start, and multiply by 100. The subtraction is the step most often skipped, and skipping it turns the metric into a measure of acquisition instead. A brand starting with 4,000 customers, acquiring 1,200 and ending with 4,400 has a retention rate of 80%.
Use cohort based repeat purchase rate with subscription charges excluded, measured over a window matched to your replenishment cycle. Without a cancellation event there is no clean churn signal in non-subscription ecommerce, so retention has to be inferred from whether a cohort returns within a defined window rather than from whether anyone cancelled.
Most often because a blended retention rate is being diluted by growth. New customers who have not yet had time to buy again enter the denominator immediately, so the rate falls mechanically as acquisition accelerates, even when every individual cohort is improving. Switching to cohort curves separates the two effects and usually resolves the apparent contradiction.

Table of contents

Make strategic decisions in minutes

See every metric that matters, in one place.

Book a demo

Ecommerce Benchmark

4,000+ brands, refreshed weekly.

See the benchmark

Frequently asked questions

Ready to stop guessing and start growing?

Make strategic decisions in minutes, not weeks.

Book a demo