Here's a number that has bankrupted more promising stores than any competitor ever did: a 3x ROAS that looked great on the dashboard and lost money on every order. The trap is subtle, the math is hidden inside platform reporting, and by the time the bank balance tells you the truth, you've already spent three months scaling a channel that was bleeding cash the whole time.
The fix isn't a better ad. It's a better number. ROAS — revenue divided by ad spend — answers the wrong question. The right question is: after I pay for the product, the shipping, the fees, the returns, and the ad, how much money is left, and how long until I get my cash back? This guide shows you how to calculate true customer acquisition cost (CAC), contribution margin, and payback period, with a full worked example. The takeaway up front: never judge a paid channel by ROAS alone — judge it by contribution margin after CAC, and by how fast that margin returns your cash.
Why ROAS lies
ROAS is reported on revenue, and revenue is the most flattering number you have. A 3x ROAS means you got three dollars of revenue for every dollar of ad spend. It says nothing about what that revenue cost you to deliver.
There are three specific ways the number deceives you.
It ignores your cost of goods and fulfillment. A 3x ROAS on a product with a 35% gross margin leaves you underwater the moment you add the ad cost on top. Revenue is not money you keep.
It uses the ad platform's attribution, which overcounts. Meta and Google each claim credit for the same sale, and both count view-through conversions that would have happened anyway. Platform-reported ROAS is almost always rosier than your actual blended results. The only honest denominator is total spend against total new-customer revenue, measured in your own books — what's called blended CAC.
It treats a first order as the whole relationship — or assumes a second order that may never come. Some founders justify a thin first-order margin with "lifetime value." That can be legitimate, but only if you've actually measured repeat behavior. Borrowing against a repeat purchase you're hoping for is how stores talk themselves into losing money on purpose.
The numbers that actually matter
Three numbers replace ROAS. Calculate them per order, then in aggregate.
True CAC. Total acquisition spend for a period divided by the number of new customers acquired in that period. Total spend means ad spend plus the agency or app fees, plus any creative costs, plus the discount you gave to win the order. Not just the platform's media cost.
Contribution margin per order. Selling price minus all variable costs: cost of goods, payment processing fees, packaging, shipping you absorb, and a provision for returns. This is the money each order contributes before you subtract acquisition. (If those variable costs are fuzzy, your operations are the place to fix it first — see the guide to ecommerce operations.)
Payback period. How long until the contribution margin from a customer pays back what you spent to acquire them. For a one-time purchase, payback has to happen on order one or it never happens. For a repeat business, it might take two or three orders — and the speed matters enormously, because slow payback ties up cash you need to buy the next customer.
The relationship that governs everything: a paid channel is healthy when contribution margin per order exceeds true CAC, and when the surplus returns fast enough to fund the next acquisition.
A worked example
Let's run a real one. You sell a $60 product. The dashboard shows a 3x ROAS, and you're about to scale.
Start with contribution margin on that $60 order:
- Cost of goods: $24
- Payment processing (around 3%): $1.80
- Packaging and shipping you absorb: $7
- Returns provision (say 5% of orders cost you the full COGS): roughly $1.20 amortized per order
That's $34 of variable cost, leaving a contribution margin of $26 per order — about 43%.
Now CAC. The 3x ROAS on $60 of revenue implies $20 of platform-reported media spend per order. But your books tell a different story. Blended across the month, you actually spent $30,000 on ads and tools and acquired 1,000 new customers. Your true blended CAC is $30, not $20 — the platform was overcounting by 50%.
Put them together: $26 of contribution margin minus $30 of true CAC equals negative $4 per order. The 3x ROAS store is losing four dollars every single time it makes a sale, and scaling the ads scales the loss. The dashboard was green the entire way down.
Now flip one lever. Suppose 30% of those customers reorder once within 90 days at the same $26 margin. That second order adds $26 × 0.30 = $7.80 of margin per acquired customer. Now the 90-day math is $26 + $7.80 − $30 = positive $3.80 — but only if the repeat actually materializes, and only if you can survive the 90-day cash gap while it does. That gap is the payback period, and it's the number that decides whether you can scale or whether you run out of cash first.
The common mistakes — and why people make them
Scaling on platform ROAS. People trust the dashboard because it's right in front of them and it updates in real time. But it's marking its own homework. Always reconcile against your own new-customer count and total spend.
Confusing gross margin with contribution margin. Gross margin (price minus COGS) looks healthy and tempts you to stop there. The fees, shipping, and returns that turn 60% gross margin into 43% contribution margin are exactly the costs that decide profitability at scale.
Justifying losses with unmeasured LTV. "We make it back on the second order" is the most expensive sentence in ecommerce when nobody has checked the actual repeat rate. LTV is a license to spend more only after you've measured repeat behavior in your own data — not a hope you bake into the plan.
Ignoring the cash gap. Even a profitable-on-paper channel can kill you if payback takes 90 days and you're reinvesting daily. You can be growing, profitable, and insolvent at the same time. Cash timing is a constraint, not a footnote.
Edge cases and caveats
- High-AOV or subscription products legitimately tolerate a first-order loss because predictable repeat revenue makes the payback math real. The discipline is the same: prove the repeat rate before you lean on it.
- Blended vs. incremental. Blended CAC includes customers you'd have gotten anyway from organic or word of mouth, so it can flatter a paid channel. To know a channel's true marginal cost, you eventually need incrementality testing (geo holdouts or spend-down tests). Blended is the honest starting point; incrementality is the graduate course.
- Seasonality and lag. A month where you acquire customers who buy next month will distort a single-month CAC. Use a consistent window and, for repeat businesses, cohort the customers by acquisition month.
The trick
Build one tiny table you update monthly: contribution margin per order on one side, true blended CAC on the other, and the gap between them. If the gap is negative on first-order alone, you may only scale if you have measured repeat margin that closes it within a payback period your cash can survive. That single comparison — margin after CAC, paid back fast enough — is the entire game. ROAS is a vanity metric; this is the scoreboard.
Frequently asked questions
Isn't a high ROAS always good?
No. ROAS is revenue over ad spend, and revenue isn't profit. A 3x ROAS can lose money if your contribution margin per order is below your true CAC. Judge channels by margin after acquisition cost, not by the revenue multiple.
What's the difference between gross margin and contribution margin?
Gross margin is price minus cost of goods. Contribution margin also subtracts payment fees, packaging, shipping you absorb, and a returns provision — every variable cost of fulfilling the order. Contribution margin is the number you compare against CAC, because it's the money actually left to cover acquisition.
Why is my real CAC higher than what the ad platform reports?
Platforms overcount conversions — both Meta and Google claim the same sale, and both include view-through credit. Reported CAC also usually excludes app fees, agency costs, and acquisition discounts. Calculating CAC from your own total spend and new-customer count almost always gives a higher, truer number.
When is it okay to lose money on the first order?
Only when you've measured a real repeat rate that turns the customer profitable within a payback period your cash flow can survive. "We'll make it back later" is only valid if "later" is backed by your own data, not a hope.
How do I calculate payback period?
Divide true CAC by the contribution margin a customer delivers per period (or per order). If CAC is $30 and a customer contributes $26 of margin per order, you're not paid back on order one; you need the second order, and the calendar time until it arrives is your cash gap.
Next step
Pull last month's actual numbers — total acquisition spend and new-customer count for true CAC, and one representative order broken down to its real variable costs for contribution margin. Subtract one from the other. If the gap is negative on the first order, find out whether measured repeat purchases close it, and how long that takes. Then decide to scale, hold, or pause — on the real number, not the one the dashboard wants you to see.
Ready to build the systems that make these numbers easy to track? Start at rocketmaxx.com.