Ecommerce Cohort Analysis: How to Understand Repeat Customers
How to run ecommerce cohort analysis: define cohorts, read a retention table, compare acquisition channels and offers, and turn results into retention work.
Quick answer
Ecommerce cohort analysis groups customers by when, or how, they first bought, then tracks each group's repeat orders and revenue over time. Build a table with first-order month in rows and months since first order in columns, filled with repeat purchase rate or cumulative revenue per customer. Read across rows for a cohort's lifecycle and down columns to compare cohorts at the same age. Then cut cohorts by acquisition channel, first product and discount use to see which customers come back, and use the results to shape retention and acquisition spend.
Why Cohorts Beat Averages
An overall repeat purchase rate mixes customers who bought last week with customers from two years ago. When you acquire many new customers, the average falls even if retention hasn't changed. Cohorts fix this by comparing customers at the same stage of their relationship with you.
How to Read a Cohort Table
The diagram above shows the standard layout. Each row is a cohort, such as customers whose first order was in a given month. Each column is time since that first order. Month 0 is 100% by definition. The table forms a triangle because recent cohorts haven't reached later months yet.
| Direction | What it shows |
|---|---|
| Across a row | How one cohort behaves over its lifetime |
| Down a column | Whether newer cohorts retain better or worse at the same age |
| Along a diagonal | Calendar effects: a sale or season affecting all cohorts at once |
Choose the Metric
| Metric | Answers |
|---|---|
| Retention / repeat rate | What share of the cohort ordered in that month (or by that month)? |
| Cumulative revenue per customer | How much has each customer spent in total so far? |
| Cumulative margin per customer | How long until acquisition cost is recovered? |
| Orders per customer | How often do they buy? |
| Active customers | How many are still buying? |
Pro tip
Decide whether cells show “ordered in this month” or “ordered at least once by this month”. The two look very different and are often confused.
Building One
You need three fields per order: a customer identifier, the order date and the order value (net of refunds if possible).
- Find each customer's first order date; that sets their cohort
- For each order, calculate months since the customer's first order
- Count distinct customers (or sum revenue) per cohort per month
- Divide by the cohort's size to get rates or per-customer values
- Exclude test orders and staff purchases; handle refunds consistently
Cohorts in Shopify
Shopify's customer cohort analysis report groups customers by the date of their first order and lets you switch the metric between number of customers, customer retention rate, gross sales, net sales and average order value (Shopify Help Center). Shopify also offers RFM customer analysis reports. For cuts the report doesn't support, export orders and build the table in a spreadsheet or BI tool. See Shopify analytics.
Cuts That Reveal the Most
| Cohort by | What you learn |
|---|---|
| Acquisition channel | Which channels bring customers who come back |
| First product or category | Which products create repeat customers |
| Discount on first order | Whether discount-acquired customers return at full price; see offers and discounts |
| Subscription vs one-time | How subscribers compare, including after cancellation |
| Market or country | Whether delivery or pricing affects repeat behavior |
Growing sales but not repeat customers?
ZSpace analyses your cohorts and designs the post-purchase and reorder experience around what the data shows.
Turning Cohorts Into Action
Cohort patterns point to specific retention work.
| Finding | Response |
|---|---|
| Steep drop after the first order | Improve onboarding, product education and post-purchase communication |
| Repeat orders cluster at a predictable interval | Time replenishment reminders or subscription offers to it |
| Discount cohorts rarely return | Rethink first-order discounts; test other risk-reducers |
| One first product retains far better | Lead acquisition with that product |
| Newer cohorts retain worse | Check product quality, delivery, or a change in audience |
Link to Acquisition Economics
Plot cumulative margin per customer by cohort against acquisition cost. The month where the line crosses is the payback point. Channels whose customers pay back slowly may still be worth it if those customers keep buying; channels whose customers never return need a different case. For D2C brands, where acquisition is expensive, this belongs in every D2C CRO plan.
Designing for Repeat Purchase
Analysis only helps if the experience supports coming back: easy reordering, useful accounts, clear subscription management, and communication that helps customers get value from the product. See D2C repeat purchase UX.
Cohort Types Beyond Acquisition Month
Acquisition-month cohorts are the default, but other groupings answer different questions. Group customers by first product category to see which entry products lead to repeat buying, by acquisition channel to compare the customers each channel brings, by first-order discount to see whether promotions attract loyal buyers, and by market or device. Behavioural cohorts (customers who created an account, joined loyalty or subscribed in their first month) show whether those behaviours go with better retention, though not necessarily cause it.
| Cohort by | Question answered |
|---|---|
| Acquisition month | Are newer customers better or worse than older ones? |
| First product category | Which entry products lead to repeat orders? |
| Acquisition channel | Which channels bring customers who stay? |
| First-order discount | Do promotions attract loyal or one-time buyers? |
| Market or region | Does retention differ by market? |
| Early behaviour (account, loyalty) | Which early actions go with retention? |
Revenue Cohorts and Payback
Customer retention counts people; revenue cohorts track money. For each cohort, sum net revenue (after refunds) or contribution margin per customer in each month since acquisition, and plot the cumulative figure. Compare it with acquisition cost for the same cohort to see the payback period: how many months until cumulative margin covers the cost of acquiring the customer. Payback by channel is often more useful for budget decisions than first-order return on ad spend. See customer lifetime value and ecommerce attribution.
Reading Cohorts After a Change
Cohort tables are one of the best ways to see whether a change worked: a new loyalty programme, a packaging improvement, a switch in acquisition mix. Mark the change on the table and compare cohorts acquired just before and just after at the same age. Be careful with seasonality (holiday cohorts often behave differently) and with other changes happening at the same time. Where possible, pair cohort comparison with a holdout. See retention analytics and churn analysis.
Pitfalls
- Guest checkouts splitting one customer into several
- Cohorts too small to trust
- Comparing young cohorts with old ones on cumulative totals
- Mixing “in month” and “by month” retention
- Ignoring refunds and returns
- Missing seasonality: a holiday cohort behaves differently
Want retention you can measure and improve?
Talk to ZSpace about retention and CRO analysis, account and reorder UX and Shopify implementation.
Conclusion
Cohort analysis shows whether customers come back, which ones and when. Build the table, pick a clear metric, compare cohorts at the same age, cut by channel, product and offer, and turn patterns into retention work and smarter acquisition. For the wider measurement plan, see ecommerce analytics and ecommerce KPI dashboard.
For related guides, see ecommerce customer segmentation.
Common questions
Grouping customers by a shared starting point, usually the month of their first order, and tracking how each group behaves over time: how many order again, how much they spend and how quickly.