
Cohort Analysis
Retention cohort analysis
Build purchase cohorts with a clear return rule, compare customers at equal elapsed time, and investigate changes without treating inactivity as proof of churn.
Retention cohort analysis follows customers who started at a comparable point. It asks how many make a qualifying purchase after the same elapsed time. For a retailer, that starting point is often a first completed purchase. The method separates a change in repeat buying from a change in new-customer numbers, but it does not explain why anyone returned or did not.
Set the question before drawing the grid
Choose the customer group, starting purchase, return event and follow-up period. Example: “Of customers whose first qualifying order was in March, what share made another qualifying purchase within six months of their own first order?”
Compare that rate only once every included customer has had the full six months to return. The numerator is the number who purchased again under the stated rule; the denominator is the eligible first purchasers.
Decide whether a return means another order anywhere in the store, another purchase in the original category, or a suitable substitute. Record how cancellations, refunds, exchanges and subscription deliveries are treated. A replacement for a faulty order should not silently become evidence of fresh demand.
Keep the rule stable across cohorts. If it changes, mark a break in the series.
A calendar month is a convenient cohort group, but it is not always the right buying window. A consumable and a durable item offer different opportunities to repeat. Where the interval is uncertain, do not label every quiet customer lost.
Define your cohort question
- Choose the customer group
- Choose the starting purchase (e.g., first completed purchase)
- Choose the return event (another order, same category, or substitute)
- Choose the follow-up period (e.g., six months)
- Decide how cancellations, refunds, exchanges and subscription deliveries are treated
- Keep the rule stable across cohorts
Compare customers at the same age
Put first-purchase periods in rows and elapsed periods since purchase in columns. Read down one elapsed column to compare cohorts at the same age. Read across a row to see when members of one cohort purchased again.
| View | Question it answers | Main caution |
|---|---|---|
| Repeat purchasers in each interval | Who bought during that particular week or month? | A customer may appear in several intervals. |
| Customers who have bought again by an elapsed point | Who has made at least one qualifying repeat purchase so far? | This is cumulative, not a purchase in that particular interval. |
| Repeat orders or net sales | How much activity came from the cohort? | A few frequent or high-spending buyers can dominate the figure. |
Show the cohort size and returning-customer count alongside a percentage. In a hypothetical cohort, the number of eligible first purchasers who return within the stated window, divided by the eligible first-purchaser count, gives the repeat-purchaser rate. It says nothing by itself about why other customers did not buy.
Leave future intervals blank rather than entering zero. For a fixed window measured from each customer’s first purchase, exclude people until their full window has elapsed. Check the reporting cut-off, time zone and whether a refund recorded later can change an earlier order’s status.
Three ways to read a cohort grid
- Repeat purchasers in each intervalWho bought during that particular week or month? Caution: A customer may appear in several intervals.
- Customers who have bought again by an elapsed pointWho has made at least one qualifying repeat purchase so far? Caution: This is cumulative, not a purchase in that particular interval.
- Repeat orders or net salesHow much activity came from the cohort? Caution: A few frequent or high-spending buyers can dominate the figure.
Check what the reporting tool counts
Shopify’s customer reports include a Customer cohort analysis report, alongside measures such as average order count and average order totals. Check the report’s settings and definitions against your own completed, relevant purchase rule.
Before using a chart for a decision, state its population, starting event, return event, elapsed interval and calculation. If any of those are unclear, resolve the definition first.
Distinguish cohorts from period reports
Shopify’s New vs returning customer report answers a different question from an elapsed-time cohort table. It groups first-time and returning customers by a selected time unit, such as a week or month, rather than comparing each first-purchase cohort at the same age.
In that report, a first-time customer is someone who placed their first order with the store. A returning customer is someone whose order history already includes at least one order. These labels describe customer status in the report; they do not, by themselves, show how long it took a customer to buy again.
The selected reporting timeframe does not necessarily limit the order history used for customer status. Shopify’s customer reports use the new customers’ entire order history: a customer first ordering in November can appear as returning in a November report if their second purchase was made in December. Check this behaviour before interpreting a period summary as a same-window repeat rate.
Customer reports can also include average order count and average order totals. These describe order frequency and order value, respectively; neither is interchangeable with the share of eligible customers who made a repeat purchase. Keep the measure’s meaning beside the chart when sharing results.
Cohort table vs New vs returning report
- Elapsed-time cohort tableCompares each first-purchase cohort at the same age (elapsed time since first purchase).
- New vs returning customer reportGroups first-time and returning customers by a selected time unit (e.g., week or month), not by elapsed time since first purchase.
Check report access and freshness
In Shopify admin, customer reports are available under Analytics > Reports. The Category filter can narrow the reports list to Customers, making it easier to locate the relevant view before checking its settings.
Shopify notes that customer reports might not display all store activity from the past 12 hours. The New vs returning customer report is an exception: its data is up to date, give or take a few seconds, and reopening or refreshing a report can display newer data. When reviewing a small change, record which report was used and when it was refreshed.
Accessing and checking Shopify customer reports
- Go to Analytics > Reports in Shopify admin
- Use the Category filter to narrow to Customers
- Customer reports might not display all store activity from the past 12 hours
- New vs returning customer report data is up to date (give or take a few seconds); reopening or refreshing can show newer data
Investigate a difference, then choose a response
When a cohort appears weaker, check whether its first-order product mix, order size, acquisition route or buying season changed. Check identity matching and missing sales channels. Compare like product groups and equivalent elapsed follow-up before treating the difference as a retention problem.
Then inspect order and service histories for plausible explanations. Complaints, stock gaps or changed offers may suggest where to look. Cohort patterns are observational: a difference between groups does not establish its cause.
An apparent fall caused by missing linked orders calls for data repair. A change concentrated in one first-purchase category calls for a closer category review. A suspected effect of a reminder or offer calls for a suitable comparison group. Keep the cohort definition and reporting cut-off with the result so the next review can reproduce it.
Investigating a weaker cohort
- Check first-order product mix, order size, acquisition route and buying season
- Check identity matching and missing sales channels
- Compare like product groups and equivalent elapsed follow-up
- Inspect order and service histories for complaints, stock gaps or changed offers
- Choose responsedata repair, category review or comparison group
In this guide
- Building cohorts from a meaningful first purchaseDefine the first qualifying purchase, resolve identity and order-status edge cases, and document a cohort start date that colleagues can reproduce.
- Comparing retention across acquisition sourcesAssign a consistent acquisition source, compare mature first-purchase groups and account for product mix before interpreting repeat-purchase differences.
- Reading cohort curves without confusing seasonality with churnCheck elapsed time, calendar season, curve calculation and cohort maturity before calling a drop in repeat purchasing churn.



