CAC Payback Period for Shopify: How to Calculate It
How to calculate CAC payback period for a Shopify store using contribution profit, with first-order and cohort payback worked side by side in one spreadsheet.
Quick answer: CAC payback period is the number of months it takes for the profit a new customer generates to cover what you spent to win them. Use contribution profit (net sales minus product cost, shipping, payment fees and refunds), not revenue. Work it out two ways: first-order payback (first-order contribution divided by CAC) and cohort payback (the month a group of customers’ running contribution per customer passes CAC). There is no single standard formula, so write down yours and use it the same way every month.
A cost per customer on its own tells you very little. A store paying A$60 to acquire a customer can be in good shape or in trouble, depending on how quickly that A$60 comes back as profit. That timing is what the CAC payback period measures, and for a small brand it is a cash question before it is a profitability question.
This guide walks through the calculation for a Shopify store, using one illustrative spreadsheet that shows the first-order view and the cohort view side by side. Every number in the worked examples is made up to show the arithmetic. None is a benchmark, and none comes from a real store. It also covers why a healthy-looking LTV to CAC ratio can still leave a small brand short of cash, and what actually moves the payback period.
What CAC payback period measures, and what it does not
CAC stands for customer acquisition cost: what you spend to get one new customer. The payback period is how long it takes for that customer to hand back the same amount in profit.
Two large platforms define it in nearly the same words but with different inputs, and that matters for your spreadsheet. As at 30 October 2026:
- Shopify’s blog article on the CAC payback period gives the formula as customer acquisition cost divided by average monthly gross profit per customer, which gives the answer in months. It defines gross profit as revenue minus the cost of goods sold and other direct costs, and its example treats manufacturing, packaging and shipping as those costs. Its worked example is a CAC of $100 and $25 of gross profit per customer per month, which gives 4 months.
- Stripe’s resource page on the CAC payback period divides CAC by monthly profit per customer, and defines that as monthly revenue per customer minus the monthly costs of serving that customer, such as support and service costs.
So the formula is not fixed. One divides by gross profit, the other by revenue less cost to serve, and neither tells you which costs a Shopify store should count. Stripe also says the metric should be read alongside customer lifetime value. Neither page gives a benchmark I would build a budget on: Stripe’s page offers general ranges without naming a study, and Shopify’s article gives no target. I am not going to hand you a “good” number. The right one is the payback your cash can carry, and I show how to find it further down.
What the metric does not tell you:
- Whether the customer is worth having. A customer who pays back in 4 months and never returns is a different asset from one who pays back in 10 months and buys for years. Payback is speed, not value; customer lifetime value covers value.
- Whether you can afford to repeat it. A long payback with a good ratio can still empty your bank account. That is the second half of this guide.
- Anything about recent cohorts. They have not had time to repeat-buy, so their payback is partly a forecast.
Step 1: Work out CAC, and the number of new customers
CAC is acquisition spend divided by the number of new customers it brought in, over the same period.
CAC = acquisition spend in a month ÷ new customers acquired in that month
Three decisions here are easy to get wrong.
Acquisition spend. Stripe’s page says CAC should include all marketing and advertising expenses, sales team costs and other direct costs of acquiring new customers over a set period. Shopify’s example counts advertising and marketing spend. For a Shopify store, the usual list is ad spend, acquisition agency or freelancer fees, creative production, influencer fees or gifted product, and software that exists only to acquire customers. Make the call once, write it at the top of the sheet and keep it fixed. Our post on what counts as CAC for a Shopify store goes through the grey areas.
New customers, not orders. If you divide by orders you will understate CAC, because returning customers place orders too. Use first-time customers from your Shopify customer data for the same month. If you use platform-reported purchases instead, remember platforms count differently from Shopify, and the gap can be large. Why Meta can show more sales than Shopify explains why.
Blended or by channel. Blended CAC divides all acquisition spend by all new customers, including the ones who arrived free through search, email or word of mouth. That is the number your bank balance cares about. Channel CAC divides one channel’s spend by the customers attributed to it, which is only as reliable as your attribution. ROAS, MER and blended CAC covers when to use which. For the payback calculation, I would start with blended, because it does not depend on attribution being right.
Our worked example (Store A, illustrative): A$12,000 of acquisition spend in the month, 200 new customers. CAC = A$60. Use figures that exclude GST throughout, so your revenue, costs and CAC are on the same basis.
Step 2: Use contribution profit, not revenue
This is the step that changes the answer most.
Revenue per customer is the easy number to find, so it is the one many calculators use. But you do not pay back acquisition spend with revenue. You pay it back with what is left after the cost of the product and of getting it to the customer. Here is the definition I use. It is my working definition, not a Shopify or Stripe term:
Contribution profit per order = net sales (after discounts, excluding GST) minus product cost, shipping and packaging you pay, payment fees, and an allowance for refunds and returns.
It is measured before the acquisition spend itself, and before fixed costs such as wages, rent and software. It answers one question: how much does this order contribute towards covering acquisition and overheads?
Store A’s per-order sums, all illustrative and in A$:
| Line | First order | Repeat order |
|---|---|---|
| Net sales (ex GST, after discounts) | 80.00 | 85.00 |
| Product cost | 28.00 | 30.00 |
| Shipping and packaging | 9.00 | 9.00 |
| Payment fees | 2.60 | 2.80 |
| Refunds and returns allowance | 3.00 | 3.20 |
| Contribution profit | 37.40 | 40.00 |
A few practical notes on where these come from:
- Product cost. Shopify’s profit reports calculate gross profit as net sales minus the cost you have recorded for each item, and report profit only for products and variants that had a cost recorded when they sold. The same page says the cost-per-item field holds a static value, so it can drift from what you actually paid. Fill in cost per item before relying on the report, and check what it leaves out before treating its gross profit as your contribution. As at 30 October 2026, the help page does not mention payment fees, and it lists shipping costs only in its profit margin by order and by market reports, not in the product and variant reports.
- Shipping and packaging. Use what you pay, not what you charge. If you charge customers for shipping, count the charge in net sales and your carrier bill here.
- Payment fees. Take them from your payment provider’s statement or Shopify’s reports, as an average per order. Buy-now-pay-later fees go here too.
- Refunds and returns. A small allowance per order based on your last few months is fine.
The same store, three lenses. Here is why the choice of profit measure matters. Store A, CAC A$60, with the repeat-purchase pattern from Step 4:
| Measure of “profit” | First order | When CAC is recovered |
|---|---|---|
| Revenue (net sales) | 80.00 | On the first order |
| Margin after product cost only | 52.00 | Month 3 |
| Contribution profit | 37.40 | Month 9 |
(The middle row uses net sales minus product cost only: 80 minus 28 is 52 on the first order, and 85 minus 30 is 55 on a repeat order.) Revenue says Store A pays back instantly. Margin after product cost only says month 3. Contribution profit says month 9. All three are arithmetically correct, and only contribution profit describes the cash that stays in the business.
Step 3: First-order payback
First-order payback asks whether the first purchase alone covers acquisition.
First-order payback ratio = contribution profit on the first order ÷ CAC
Store A: 37.40 ÷ 60.00 = 0.62. The first order recovers about 62% of CAC. A$22.60 per customer is still out, which across 200 customers is A$4,520 of unrecovered cash from this month’s cohort.
You need no cohort data for this. It is one division, and it is the first number to look at if your products are bought once or rarely (furniture, equipment, a one-off gift) or if you have little repeat history. A ratio of 1.0 or more means each new customer covers their acquisition cost on the first order, so acquisition spend does not tie up cash (stock you paid for earlier still does). Shopify’s article quotes Ridge’s CEO saying the brand had to be first-purchase profitable because there was no lifetime value in the business, which is exactly this situation.
If the ratio is below 1.0, the first order does not cover acquisition. That is not automatically a problem, since many consumable and replenishment brands run that way on purpose. It means the rest of the answer depends on repeat purchases that you have to verify, not assume. That brings us to cohorts.
Step 4: Cohort payback
A cohort is a group of customers who made their first purchase in the same period, say everyone who bought for the first time in January. Cohort payback follows that group forward and asks in which month their running total of contribution profit per customer passes CAC.
It uses what customers actually did, month by month, instead of an average that assumes profit arrives evenly.
The spreadsheet. One row per month since the first order, and these columns:
- Months since first order (0 is the month of the first purchase).
- Repeat orders per customer that month (the cohort’s repeat orders divided by the customers in the cohort).
- Contribution profit per customer that month (repeat orders × contribution per repeat order, plus the first order in month 0).
- Running total of contribution profit per customer.
- Running total minus CAC. The month this turns positive is the payback month.
Store A’s inputs (illustrative). The first order contributes A$37.40. Repeat orders per customer in months 1 to 12 are 0.06, 0.08, 0.09, 0.07, 0.06, 0.06, 0.05, 0.05, 0.05, 0.04, 0.04 and 0.04 (so 6 repeat orders per 100 customers in month 1, and so on). Each repeat order contributes A$40.00. CAC is A$60.
The result:
| Months since first order | Running contribution per customer (A$) | Against CAC of A$60 |
|---|---|---|
| 0 | 37.40 | 22.60 still to recover |
| 1 | 39.80 | 20.20 still to recover |
| 2 | 43.00 | 17.00 still to recover |
| 3 | 46.60 | 13.40 still to recover |
| 4 | 49.40 | 10.60 still to recover |
| 5 | 51.80 | 8.20 still to recover |
| 6 | 54.20 | 5.80 still to recover |
| 7 | 56.20 | 3.80 still to recover |
| 8 | 58.20 | 1.80 still to recover |
| 9 | 60.20 | Recovered (0.20 ahead) |
| 12 | 65.00 | 5.00 ahead |
Cohort payback for Store A is month 9. For the 200 customers in the cohort, that is A$12,000 spent, A$7,480 back from first orders, and A$12,040 cumulatively by month 9.
Compare with the single-formula answer. If you apply the usual formula and average contribution over the first 12 months, including the first order, Store A’s average is 65.00 ÷ 12 = A$5.42 a month, and 60 ÷ 5.42 gives about 11 months. The formula’s result depends on which window you average and whether the first order goes in. The cohort table has no such choice to make, which is the best argument for building it.
Getting real cohort numbers out of Shopify
Shopify’s Customer cohort analysis report is the place to start. As at 30 October 2026, Shopify’s help page describes it like this:
- Customers are grouped into cohorts by the date of their first order, one cohort per row.
- You can change the metric to number of customers, customer retention rate, gross sales, net sales, average order value or amount spent per customer, and view it as a heatmap or a retention curve, grouped by week, month or quarter.
- Under Cohort definition you can narrow to customers by first-order attributes: sales channel, marketing channel, marketing type, product name and subscription. That lets you compare customers from different marketing channels, if your tagging supports it.
- The table includes a “period 0” column that captures repeat orders made in the same period as the first order.
- Cohort figures reflect each customer’s full order history, not only orders in the selected timeframe, and the report may not include the last 12 hours of activity.
- Projections are available only with “Amount spent per customer” selected, are based on the store’s previous 24 months of data, and Shopify says they are not a guarantee of future sales. If you do not have 24 months of data, the toggle does not appear. The help page I read does not say which Shopify plans include the report, so check in your admin under Analytics, then Reports.
To turn it into a payback table:
- Pick one cohort that is at least 9 to 12 months old and filter it to match how you acquire customers.
- Set the metric to amount spent per customer, with monthly intervals. Check whether each column is a month’s spend or a running total before you add anything up.
- Multiply by your contribution margin to turn spend into contribution. A simple version is to use the contribution percentage from Step 2: Store A’s repeat order is 40.00 on 85.00, about 47%. It is an approximation, because discounts and product mix change by order.
- Take the first-order contribution from your own per-order numbers, since the cohort’s first-order column mixes everyone’s baskets.
- Compare the running total with the CAC you calculated for that cohort’s month, not today’s CAC.
Treat projections as a cross-check only.
Two traps. A cohort acquired in a sale month (Black Friday, say) will usually have a lower first-order contribution because of discounts, so label it before applying its curve to a normal month. And the newest cohorts have not had time to repeat: use older cohorts for the shape of the curve and the newest cohort’s own first-order numbers as today’s starting point.
Why a healthy ratio can still starve a small brand
The usual companion to payback is the LTV to CAC ratio. Stripe’s page cites 3 to 1 or higher as its benchmark for the ratio, without naming a study. I will not tell you it is a rule. But suppose your ratio does look healthy. Does that mean you can afford to spend?
Not necessarily, and the arithmetic shows why. This is a second illustrative store, Store B:
- CAC is A$60, and the store acquires 200 new customers a month, so acquisition spend is A$12,000 a month.
- The first order contributes A$15 (a discounted first order, say).
- After that, each customer contributes A$3 a month, flat, for five years.
Lifetime contribution over those five years (60 months) is 15 + (3 × 60) = A$195, so the ratio is 195 ÷ 60 = 3.25 to 1. On paper, healthy. Payback is the month when 15 + 3n reaches 60, which is month 15.
Now the cash. Store B spends A$12,000 every month and earns contribution from every cohort it has acquired so far. After N months of spending, the running net cash from acquisition (contribution earned, minus acquisition spend, before any fixed costs) works out to N × (300N − 9,300) dollars. In round numbers:
| Months of spending A$12,000 | Net cash from acquisition (A$) |
|---|---|
| 3 | -25,200 |
| 6 | -45,000 |
| 9 | -59,400 |
| 12 | -68,400 |
| 15 | -72,000 |
| 18 | -70,200 |
| 24 | -50,400 |
| 31 | 0 |
The low point is about A$72,000 out, around months 15 and 16, and the store only gets back to zero in month 31. Every figure is before rent, wages, software and stock holding. And contribution profit already counts the cost of the product, which a store typically has to pay for before it is sold, so the real position can be worse than the table.
Compare Store A, whose contribution ratio is only 65 ÷ 60 = 1.08 over 12 months (a much shorter horizon, so not a like-for-like comparison) but whose payback is month 9. At A$12,000 a month, the same cohort arithmetic puts its low point at about A$20,700 out. Store B’s ratio looks far better, yet it needs more than three times the cash to run the same spend.
Store B is not a bad business. If those customers really do contribute A$3 a month for five years, it may be an excellent one. But a ratio does not say how much cash you need to get there or whether you can survive the wait. A ratio over a long horizon assumes you are still trading at the end of it; payback tells you how long your bank account has to carry the risk.
Setting a payback ceiling you can fund
The useful question is not “what is a good payback period?” It is “how many months of unrecovered acquisition cash can this business carry?” Here is how I would answer that, in order:
- Work out the cash hole. Build the Store B style table for your own numbers: your monthly acquisition spend, your first-order contribution, your cohort curve. Find the lowest point and how many months it lasts.
- Compare it with cash you can really commit. Not your revenue, and not your balance on a good day. Include stock orders, GST and tax payments that are coming, and the owner’s pay. Whether to fund the gap from savings, supplier terms or borrowing is a decision for you and your accountant.
- Set the ceiling from that, not from a benchmark. If the hole at current spend is bigger than the cash you can commit, either spend less, shorten the payback, or accept slower growth. Scaling spend on a long payback makes the hole deeper before it gets shallower.
- Re-run it when anything changes: CAC, shipping costs, discount depth or repeat rate.
If you have little repeat history, plan on first-order payback and treat repeat purchases as upside until a cohort has been through its likely repeat window. It is slower, but it does not depend on a curve you have not seen.
What moves payback, and what to check first
Back to Store A, with the same spreadsheet and one change at a time. These are illustrative, each calculated on its own, and not predictions for any store:
| Change (one at a time) | Payback month | Months saved |
|---|---|---|
| None (baseline) | 9 | n/a |
| CAC down 20%, from A$60 to A$48 | 4 | 5 |
| First-order contribution up A$8, to A$45.40 | 6 | 3 |
| Repeat order rate up 25% | 7 | 2 |
| Every repeat order arrives one month sooner | 8 | 1 |
In this example, the biggest effects come from the front end: what each new customer costs and what the first order leaves behind. Repeat purchases matter, but moving them a month earlier saves only a month. That will not hold for every store, so run your own numbers.
Cost per customer is partly a conversion question. If a visit costs you money, CAC depends on how many visits turn into buyers. As pure arithmetic, if every visit costs A$1.20 and 2% of visits buy, the cost per new customer from clicks alone is 1.20 ÷ 0.02 = A$60. At 2.5% it is A$48. Run that through Store A’s table and payback moves from month 9 to month 4, assuming the extra buyers behave like the existing ones, which is not a given. It is the sort of change covered in our post on growing Shopify revenue without more ad spend, and Shopify conversion rate explains how to measure your baseline first.
First-order margin is a pricing and offer question. Discount depth, bundles, free-shipping thresholds and shipping cost all show up in first-order contribution, on exactly the order that is supposed to start the payback.
Repeat purchases are a retention question. Email, SMS, subscriptions and loyalty sit here. We do not run ads or email at Prism3, so for that side of the curve you need whoever manages your email, and the cohort table is how you will know whether their work is moving it.
Measurement comes before all of them. If your spend, new-customer count or attribution is off, CAC is off, and so is the payback month. The paid, organic, conversion and email pieces fit together as one system, covered in how a DTC growth system fits together. If CAC is rising and lifetime value is not keeping up, read what to do first when CAC is high and LTV is low, and see the Shopify unit economics spreadsheet for the wider sheet this calculation lives in.
Key takeaways
- CAC payback period is the time it takes a new customer’s profit to cover what you spent to acquire them. It is a cash measure as much as a profit one.
- The formula is not standard: Shopify’s article divides by gross profit, Stripe’s by revenue less cost to serve. Define yours, including which costs go into CAC, and keep it fixed.
- Use contribution profit (net sales minus product, shipping, payment fees and refunds, excluding GST), not revenue. In the worked example, revenue said the first order paid back and contribution said month 9.
- Run first-order payback and cohort payback side by side. The gap between them is the repeat-purchase curve you have to verify.
- Shopify’s Customer cohort analysis report groups customers by first-order date. Check whether its figures are per period or running totals before you add them up.
- A healthy-looking LTV to CAC ratio does not tell you how much cash you need. In the illustrative example, a 3.25 to 1 ratio came with a cash low point of about A$72,000.
- Set your payback ceiling from the cash you can commit, not from a benchmark.
FAQs
What is CAC payback period?
It is the number of months it takes for the profit from a new customer to cover the cost of acquiring them. Shopify’s article and Stripe’s page both describe it that way, and both express it in months. They differ on what counts as profit, so write down your own definition.
How do you calculate CAC payback period for a Shopify store?
Divide your CAC by the contribution profit a customer generates per month. A more reliable way is to build a cohort table: for customers who made their first purchase in the same month, add up contribution per customer month by month and find the month the running total passes CAC. In the worked example (CAC of A$60, first-order contribution of A$37.40), that month was 9.
What is a good CAC payback period?
I do not have a verified benchmark I would give you as a target. Stripe’s page gives general ranges without naming a study, and Shopify’s article gives no target at all. The practical answer is the longest payback your cash can carry, which you find by building a cash table like Store B’s above.
Should I use revenue or profit?
Profit, and specifically contribution profit: net sales less product cost, shipping, payment fees and refunds. Revenue is not what pays back acquisition spend. In the example, revenue said CAC was recovered on the first order while contribution profit said month 9.
Should I use first-order payback or cohort payback?
Both. First-order payback is a single division and needs no history, so it suits one-off purchases and new stores. Cohort payback shows what customers actually do over time and suits stores with repeat purchases. The gap between the two is how much of your payback rests on customers coming back.
Is a 3 to 1 LTV to CAC ratio enough?
No. A ratio can look healthy while the payback is long enough to drain a small brand. In the illustrative Store B, a 3.25 to 1 ratio came with a payback of month 15 and a cash low point of about A$72,000 before fixed costs. Check the ratio and the cash table together.
Where do I find cohort data in Shopify?
In the Shopify admin, open Analytics, then Reports, and look for the Customer cohort analysis report. As at 30 October 2026, Shopify’s help page does not say which plans include it. It groups customers by first-order date and offers amount spent per customer as a metric.
Keep reading
- What to do first when CAC is high and LTV is low
- A Shopify unit economics spreadsheet, step by step
- ROAS vs MER vs blended CAC for Shopify
Is your cost per customer higher than it needs to be?
Spending more to get the same orders? Part of your cost per customer is how many visitors buy. Book a free 30-minute diagnostic: we look at where your store loses buyers after the click, using your own numbers, and tell you what to fix first. We do not run ads or email. No pitch. No email gate. If you want to see how we work on the conversion and tracking side of that arithmetic, read about our Shopify CRO service.
Free 30-min diagnostic
Seen enough?
Book a free diagnostic.
We'll look at where your store loses buyers after the click and what to fix first. No pitch. No email gate. 30 minutes.
More from Prism3
Afterpay vs Zip vs Shop Pay Instalments: Shopify AU
Afterpay, Zip and Shop Pay Instalments compared for Australian Shopify stores: merchant fees, payouts, approval, checkout placement and a worked margin example.
AI-Referred Orders on Shopify: What Is Real and What Is Hype
What Shopify has disclosed about AI-referred orders, why the 13x headline needs context, how to find AI traffic in GA4 and Shopify, and what to do now.
AI Visibility Tools for Shopify: What They Measure and Miss
What AI visibility tools for Shopify stores really count: mentions, share of voice and citations, where the data is sampled or unstable, and how to use them.