RevenueFlows AI
Profit & Analytics -$12.50 what each July customer still owes you at month 3 (hypothetical store)

Cohort Analysis for Shopify: See Which Customers Pay Back

Your average order value went up three months in a row. Your newest customers are still the worst you've ever bought. Cohort analysis is how you catch it.

Part of the guide Ecommerce Profit Analytics: Profit Per Product, Step by Step →
A founder in a dark navy room studying three glowing bars on a screen, the newest bar shorter than the others and lit orange.

Here's a hot take. The worst month in your store's history might be the one that looked the best on your dashboard.

The cohort analysis Shopify builds into your admin is how you find out. You group customers by the month they first bought, then track how much each group spends over the following months. Then you put one more number next to it: what you paid to get each of those customers. Now you can see whether the customers you bought in July are paying you back, or quietly losing you money while your averages say everything is fine.

Shopify already gives you the report for free. Most founders never open it. And the ones who do usually look at retention rate, which answers the wrong question.

Why do averages hide your worst customers?

Averages blend every customer you've ever had into one number. Your loyal 2024 buyers prop up your weak 2026 buyers, and the dashboard never tells you which is which.

Run the math on a store like this (a hypothetical). A skincare brand. Average first order went from $58 in March to $61 in May to $64 in July. Up three months straight. The founder reads that as "our new customers are better."

They're worse. Much worse.

Because while average order value crept up, the ad account was scaling into colder audiences. Acquisition cost went from $34 a customer in March to $41 in May to $52 in July. And the July customers aren't coming back like the March ones did.

You can't see any of that in an average. You can only see it when you line the months up side by side at the same age.

An average tells you how the store is doing. A cohort tells you which customers are paying for it.

How do you run cohort analysis in Shopify?

Four steps. You can do this in about 20 minutes.

  1. Open Analytics, then Reports, and find Customer cohort analysis.
  2. Switch the metric to amount spent per customer.
  3. Note each month's spend at month 0, 3 and 6.
  4. Multiply by contribution margin and subtract acquisition cost.

The report lives in Shopify's customers reports. Cohorts are grouped by the date of the first order. The metric menu lets you pick number of customers, retention rate, gross sales, net sales, average order value or amount spent per customer. You can change the interval to weeks, months or quarters, and narrow the cohort by first-order sales channel, marketing channel or product. Sales and average order value were added to the grid back in January 2023, per Shopify's changelog.

Step 4 is the one Shopify can't do for you. The report has no idea what you spent on ads. That's the gap the Polar Analytics cohort guide points out too: the native report doesn't include ad spend or blended acquisition cost. So you bring that number yourself, from your ad accounts, one month at a time.

What does a customer cohort analysis actually show you?

Here's the skincare store again (still hypothetical), with cumulative revenue per customer by acquisition month.

That's a $17 gap between March and July. On revenue alone, July doesn't look like a disaster. It looks like a slightly softer month.

Now run it through contribution margin. Say this store keeps 50% of revenue after product cost, shipping, payment fees and returns. (If you've never worked out yours, the contribution margin breakdown walks through every line.)

Cohort Acquisition cost Revenue by month 3 Contribution by month 3 Paid back?
March $34 $96 $48.00 Yes, +$14.00
May $41 $92 $46.00 Yes, +$5.00
July $52 $79 $39.50 No, -$12.50

Here's the math. July customers spent $79 by month 3. Half of that is $39.50 of contribution. They cost $52 to acquire. Every July customer still owes the store $12.50.

And if the store bought 1,150 customers in July, that's 1,150 x $12.50 = $14,375 sitting in a hole, during the same month the average order value hit a record high.

That's the polarity. A cohort is either a machine that pays you back, or a loan you made to strangers. The average can't tell you which.

Should you worry if your newest cohort looks worse?

Sometimes no. I'll be honest, I've watched founders panic over a cohort that was just too young. Actually, scratch "just." Young is the whole story.

A cohort that's six weeks old hasn't had time to reorder. Comparing it to a cohort that's nine months old is comparing a seedling to a tree. That's why the table above stops at month 3 for everyone. Always compare at the same age: month 3 against month 3, month 6 against month 6.

Three other traps worth checking before you act:

If the cohort is old enough, big enough, and still trailing while acquisition cost climbed, that's real. You're buying worse customers. Retention flows won't save you from that. They'll just slow the bleeding.

Retention fixes customers who drift away. It can't fix customers who were never going to stay.

Can AI read your cohorts for you?

Partly, and it's getting better fast.

Since October 2025, Shopify's Sidekick can turn plain-English questions into analytics reports, writing the ShopifyQL query for you and remembering follow-up questions. So you can ask something like "amount spent per customer by first-order month for the last 9 months" without learning the query language. The help page also offers projections of future spend per customer, though Shopify notes they need around 24 months of store data and aren't guaranteed.

What AI still can't do is know your acquisition cost per month or your real margin. Feed it those two numbers and it's useful. Skip them and it will happily report rising revenue while the cohorts lose money. If you want a dedicated app that joins ad spend to cohorts automatically, our Lifetimely vs Peel comparison covers which one fits your order volume. And once you know which cohorts pay back, RFM analysis tells you which customers inside them to chase.

How do you make new cohorts pay back faster?

Two levers. Spend less to get each customer, or get more from each customer sooner. Most founders only pull the second one (more emails, more upsells, a subscribe and save option), and it's the slower lever.

The first lever lives on your product page. Acquisition cost is cost per click divided by conversion rate. Watch what happens.

Same skincare store, still hypothetical. Clicks cost $1.30. Conversion rate is 2.5%. So each customer costs $1.30 / 0.025 = $52. That's the July number. Conversion rate 2.5%, average order value $64, so revenue per visitor is $1.60. On 10,000 visitors, that's $16,000.

Now lift conversion rate to 3.3% with the same clicks and the same $64 average order value. Acquisition cost drops to $1.30 / 0.033 = $39.39. Revenue per visitor goes to $2.11. On the same 10,000 visitors, that's $21,120.

And the July cohort? $39.50 of contribution by month 3 against a $39.39 acquisition cost. Paid back. Same ads, same customers, same retention. The only thing that moved was the page.

For a sense of what a page rebuild can do, here's a real one. A bedding brand went from a 1.0% conversion rate and a $125 average order value (revenue per visitor $1.25) to 3.5% and $231 (revenue per visitor $8.10). On 10,000 visitors, that's $81,000 instead of $12,500, a 6.5x lift. See the full case study numbers. Real client numbers, not typical results, and not a promise of what your store will do.

There's an old Bain line founders love: lift retention by as little as 5% and profits can rise by as much as 95%. Maybe. But I'd rather you never need the rescue. A page that converts cheaper customers in the first place makes every cohort start in the black.

What to do next

Open the cohort report today and write down one number: amount spent per customer at month 3 for your three most recent mature cohorts. Then put each month's acquisition cost beside it. If the newest row trails while cost climbed, start with the page your ads send people to. For the full profit picture behind this, the ecommerce profit analytics guide and the LTV to CAC ratio breakdown are the next two reads.


Book Your Profit Audit

If your newest cohorts cost more and pay back slower, the cheapest fix is usually a page that converts more of the clicks you're already buying. Book a free profit audit and we'll show you where your page is leaking, then how to rebuild a high-converting product sales page in less than 15 minutes.

Book Your Profit Audit →

Or go here to check it out → revenueflows.ai

P.S. Your average order value can hit a record the same month your customers start losing you money. Line up the cohorts before you scale the ads.

Frequently asked questions

What is cohort analysis on Shopify?

Cohort analysis groups customers by the month of their first order and tracks what each group spends afterward. Shopify's built-in Customer cohort analysis report does this by default, so you can compare your March customers to your July customers at the same age instead of blending everyone into one average.

Where is the cohort analysis report in Shopify?

In the Shopify admin, go to Analytics, then Reports, filter the category to Customers, and open Customer cohort analysis. You can switch the metric to amount spent per customer, change the interval to weeks, months or quarters, and filter cohorts by first-order sales channel or product.

How do you calculate payback by cohort?

Take each cohort's cumulative spend per customer, multiply it by your contribution margin to get profit per customer, then compare that to what you paid to acquire each customer that month. The month where contribution passes acquisition cost is the payback month.

Why are my newer customers worse than older ones?

Usually because you scaled ad spend into colder audiences, leaned on discounts, or both. Compare cohorts at the same age, such as month 3 against month 3. If the newest cohort trails while its acquisition cost climbed, the problem is the customers you're buying, not retention.

How big does a cohort need to be to trust it?

Big enough that a handful of orders doesn't swing the line. In my experience a cohort of a few dozen customers is noise. If your monthly cohorts are small, group by quarter until each one holds a few hundred customers.

The Revenue Per Visitor Dispatch

One revenue-per-visitor playbook. Every Tuesday.

Join 7,000 plus Shopify and Amazon founders getting the one tactic we tested this week: what worked, what flopped, and exact dollar impact.