Back to Articles

How to Calculate Ad ROAS Correctly (and Spot Losses)

2026-10-28
أحمد سيد — خبرة 8 سنين في الإعلانات الممولة
How to Calculate Ad ROAS Correctly (and Spot Losses)

Quick answer: The ROAS you see in the Meta ads dashboard is not your real profit. True ROAS = the revenue left after shipping, returns and discounts, divided by ad spend. Before running any ad, calculate your break-even point from your product margin: if net ROAS is above it you are profitable; below it you are losing money, no matter how pretty the reported number looks. Watch the hidden costs weekly — they are what silently eats your margin. And if you want the number at which your campaign actually profits rather than merely covering its cost, see our break-even ROAS guide — the practical companion to this formula.

A store owner told me this, word for word: "My media buyer reports ROAS of 4x. But at the end of the month I check the bank balance — not a single pound more. So where did the money go?"

If that sentence stung a little, this article is for you.

The media buyer probably wasn't lying. The 4x was real — straight from the Meta dashboard. The problem is that number has a name: naive ROAS. It looks great in a report and has almost nothing to do with the money actually landing in your pocket. In this guide I'll show you the difference between the number that flatters you and the number that tells the truth — and you'll walk away knowing exactly how to calculate your break-even point, the line below which every order you "win" is quietly losing you money.

At DOTS Growth we audit ad accounts for e-commerce stores and service businesses every week, and this mistake repeats at an alarming rate: the business owner reads ROAS off the ads dashboard and makes serious decisions — scale up, shut down, raise the budget — based on a number that's missing half the story. Let's finish the story.

The famous formula everybody knows — and why it deceives you

The formula is famous and simple:

ROAS = Total ad-driven revenue / Ad spend

You spent 20,000 EGP on Meta ads, they drove 80,000 EGP in sales. Your ROAS is 4x. Congratulations — a number worth celebrating.

Hold on, though. There's a hole in this formula big enough to drive a truck through: it divides total revenue by ad spend as if all that revenue were profit. As if the product you sold for 500 EGP cost you nothing. As if shipping were free, returns didn't exist, and the payment gateway worked out of charity.

That's why we call it naive ROAS — or vanity ROAS. It's not a false number. It's an incomplete one. And the gap between incomplete and complete is the gap between a store that's growing and a store burning cash while convinced it's winning.

Two kinds of ROAS: reported vs. real

Let's separate two things:

Gross ROAS (the reported one): the number you see in the Meta, TikTok, or Google ads dashboard. Total attributed purchase value divided by spend. It's a useful first signal for comparing campaigns against each other — a 5x campaign beats a 2x campaign, obviously. But it is not a profitability metric. Not even close.

Net ROAS (the real one): the ratio after you subtract every real operating cost from revenue, then divide by ad spend. This is the number that answers the only question that matters: for every pound I put into ads, how much clean money came back?

The gap between the two isn't small. Let me show you with a worked example, calculated the way we calculate it for any store we audit.

Worked example: an online women's handbag store

  • Monthly ad spend: 30,000 EGP
  • Orders: 400
  • Average order value: 300 EGP
  • Total revenue: 120,000 EGP
  • Reported ROAS: 120,000 / 30,000 = 4x 🎉

The owner sees 4x and feels great. Now let's do the math the way reality does it:

  • Cost of goods (COGS): the bag costs him 120 EGP x 400 = 48,000 EGP
  • Delivery to the customer: average 45 EGP x 400 orders = 18,000 EGP
  • Non-delivery rate (RTO): 30% of COD orders never get picked up — 120 orders come back. The courier charges for the return trip too, say 35 EGP average per returned order = 4,200 EGP extra
  • Order confirmation (call center): 10 EGP per order x 400 = 4,000 EGP
  • Packaging — boxes, bags, stickers: 8 EGP x 400 = 3,200 EGP

Total operating costs = 48,000 + 18,000 + 4,200 + 4,000 + 3,200 = 77,400 EGP

Net revenue after costs = 120,000 − 77,400 = 42,600 EGP

Net ROAS = 42,600 / 30,000 = 1.42x

See the difference? From a 4x you brag about in a report to a 1.42x that is the truth. Every pound of ad spend returned 1.42 pounds — before your salary, your team's salaries, warehouse rent, and taxes. Add the fixed costs and you might be at zero or below — while believing you have a 4x ROAS.

This isn't an edge case. It's what we see in most account audits: reported ROAS runs two to three times higher than net ROAS. Which is why our first rule for any new client is simple: forget the dashboard number, calculate your own.

Break-even ROAS: the one number you must know before running any ad

So how do you know whether your ROAS is good or bad? There's no magic universal number. The answer is your break-even ROAS — below it you're losing money, above it you're making it.

The formula is simple:

Break-even ROAS = 1 / gross margin

Gross margin here = (selling price − all variable costs per order) / selling price.

Note the word "all." The most common mistake we see is people computing margin on COGS alone and ignoring shipping, returns, and packaging. The result: a fake, artificially low break-even point, expansion decisions built on it, and guaranteed losses. Compute margin after every variable cost — not COGS alone.

Three worked examples to make it concrete

Example 1: shoes priced at 1,000 EGP The shoe costs 600 EGP, shipping + packaging + confirmation costs 80 EGP, and we set aside 20 EGP per order for returns. Total variable cost = 700 EGP. Margin = (1000 − 700) / 1000 = 30%. Break-even = 1 / 0.30 = 3.33x. If your campaign reports 3x ROAS, you're not breaking even — you're losing money on every pair sold.

Example 2: a cosmetics product at 450 EGP Product cost 90 EGP, shipping and packaging 55 EGP, returns provision 15 EGP. Total = 160 EGP. Margin = (450 − 160) / 450 = 64%. Break-even = 1 / 0.64 = 1.56x. Here a 2x ROAS is excellent and strongly profitable — because the margin is fat.

Example 3: a phone accessory at 350 EGP Product cost 200 EGP, shipping and packaging 60 EGP, returns provision 25 EGP. Total = 285 EGP. Margin = (350 − 285) / 350 = 18.5%. Break-even = 1 / 0.185 = 5.4x. Low-margin products need a heroic ROAS to make money — which is why so many stores selling cheap items wonder why "the ads just don't work."

The takeaway to memorize: there is no such thing as a good ROAS in absolute terms. A 3x can be fantastic for a cosmetics store and a disaster for an electronics store. The only valid judgment is: above or below your break-even? And if you're only slightly above it, you're still in the danger zone.

To skip the manual math, we built a free ROAS calculator that computes your break-even and net ROAS from your real numbers in under a minute. And if you run a store, the e-commerce profit calculator takes COGS, shipping, and returns as inputs and shows you the full picture.

The hidden-costs checklist: what silently eats your margin

Most store owners count COGS and shipping and stop there. But there are other line items eating the margin every month, each one looking small on its own — together, they're the difference between profit and loss. This is the checklist we run through before judging any account:

1. COGS + inbound freight. Not just the wholesale price — add freight from supplier to warehouse, customs if you import, and warehouse shrinkage and damage. For some products shrinkage alone runs 3-5% and nobody accounts for it.

2. Outbound shipping to the customer. In Egypt, inter-governorate delivery averages 50-70 EGP, Cairo/Giza 35-50 EGP. In Saudi Arabia, 25-35 SAR. This varies by courier, weight, and destination — use your real average from the last 3 months of invoices, not the number in your head.

3. Returns and non-delivery (RTO) — the most dangerous line in COD markets. In Egypt, COD non-delivery rates run 20% to 40% depending on product, price, and region. Out of every 100 orders, 20 to 40 come back. The courier bills you for the round trip. So the order that "didn't sell" still cost you two-way shipping plus wasted packaging plus a pointless confirmation call. In Saudi Arabia the rate is lower (10-20%) because prepaid is more common, but it's still there. If you don't provision for RTO in your margin, your margin is fiction.

4. Payment gateway fees. Online payment isn't free: gateways take 2.5% to 3.5% per transaction, and installment services like Tabby and Tamara charge merchants commissions that can reach 4-6%. If 70% of your sales are prepaid online, that's 2-3% of total revenue gone — it belongs in the math.

5. Packaging and inserts. Box, bag, sticker, thank-you card, discount flyer for the next order. In Egypt that's 5-15 EGP per order depending on how premium you go. Looks trivial — multiply it by 1,000 orders a month.

6. Order confirmation (call center). In COD markets the confirmation call isn't a luxury — it's what pulls non-delivery rates down from 40% to 25%. Whether it's an in-house employee or a per-order confirmation service (10-15 EGP per call), it's part of the cost of the sale.

7. Damaged returns and exchanges. Not every return comes back resellable. Some come back opened, used, or wrecked in transit — a total loss of product cost plus round-trip shipping. Provision 2-5% depending on your product.

8. Platform subscriptions and commissions. Salla, Zid, or Shopify: monthly subscription plus per-transaction fees in some plans. Selling on Amazon, Noon, or Jumia? Commissions of 10-15% — which alone can flip the whole equation.

9. The cost of running the ads themselves. The media buyer's salary or the agency's cut (10-15% of spend is common). Many people define "ad cost" as platform spend only and forget the person running the platform is an ad cost too. Spending 50,000 EGP on ads and paying 7,500 for management means your true ad cost is 57,500.

The rule: any pound spent so that this order gets sold and delivered goes into the math. Counting 3 of these 9 line items is self-deception.

Why the platform number itself isn't real: the attribution trap

Even if you nail every cost, there's a second problem: the revenue number in the ads dashboard isn't accurate either.

Ad platforms (Meta, TikTok, Google) run on "attribution" — they credit a sale to the campaign whose ad the customer saw or clicked within a certain window. And attribution has serious issues:

First: every platform claims the same sale. A customer sees your TikTok ad, then clicks your Google ad, then buys. All three platforms record the sale. If you advertise on three platforms and add up their numbers, you're counting the same money twice and three times. We've seen accounts where the three platforms' combined ROAS was 9x while the store's own numbers said 3.5x.

Second: view-through attribution. Meta credits your campaign with a sale if the customer merely saw the ad — without clicking — and bought within a day. Someone who was going to buy anyway, who scrolled past your ad: counted as your sale. This inflates numbers, especially in retargeting campaigns.

Third: signal loss since iOS 14. Since 2021, Apple restricted tracking and platforms now model a chunk of conversions statistically. That modeling skews optimistic — the displayed number runs 15-30% above reality in what we've typically seen.

The practical fix we apply: never make budget decisions from the ads dashboard. Compute blended ROAS weekly: total store revenue (from your store system or CRM — not from Meta) divided by total ad spend across all platforms. That number is the truth. Use the dashboard only to compare campaigns against each other — which is better than which — never to judge profitability.

Target ROAS by business model

As established: no magic number. But there are realistic ranges we keep seeing:

E-commerce (COD): the right target = break-even + a 20-30% safety margin. If your break-even is 3x, target 3.6x to 4x. Why the buffer? Numbers swing week to week, RTO spikes in peak seasons, shipping costs change. Anyone targeting exactly break-even finds themselves underwater in the first bad month.

Lead generation (clinics, service companies, real estate): here ROAS is measured differently. What matters isn't "revenue / ads" — it's cost per qualified lead vs. customer value. A dental clinic spending 200 EGP to get an implant lead, where one implant is worth 15,000 EGP, plays a completely different game than a store selling 300 EGP items. The rule: know your average customer lifetime value, and keep acquisition cost under 30% of it. For a deeper dive, read our guide on the customer lifetime value (LTV) model.

Services and subscriptions: here the customer pays monthly, so the math widens. You can accept a low ROAS — even a first-month loss — if the customer stays 12 months. But it's a double-edged sword: you must use your real retention rate, not the optimistic one. If half your customers churn after two months, the "we'll profit long-term" math is fantasy.

The monthly routine: review your ROAS in 30 minutes

Theory is nice, but routine is what makes the difference. These are the steps we run for every account we manage — and you can do them yourself monthly (weekly if you spend over 100,000 EGP a month):

Step 1: gather the real numbers (10 minutes). From your store system or CRM: actual total revenue (after returns, not before). From each ad platform: total spend. From your accountant or cost sheet: COGS, shipping, returns, fees. Don't chase to-the-penny precision — monthly averages are enough.

Step 2: compute net ROAS and blended ROAS (10 minutes). (Revenue − all variable costs) / ad spend = net ROAS. Total revenue / total ad spend = blended ROAS. Compare both against the dashboard number — the gap is the size of the illusion you've been living in.

Step 3: compare against break-even and decide (10 minutes). Above break-even with a safety margin? Scale gradually (20-30% budget increases, never doubling overnight). Close to break-even? Don't scale — hunt the leak: weak margin? High RTO? A campaign eating budget for nothing? Below break-even? Stop the bleeding first, then fix. The golden rule: never scale a campaign that's below break-even — scaling multiplies the loss, not the profit.

FAQ: questions we get every week

Q: What counts as a "good" ROAS? A: Wrong question — the right one is: what's your break-even? Compute your true margin after all costs, divide 1 by it, add a 20-30% safety buffer. That's your target. Any number someone quotes without knowing your margin is noise. But if you want a rough range from what we see: successful COD stores in Egypt and Saudi Arabia usually land between 3x and 5x net.

Q: What's the difference between ROAS and ROI? A: ROAS measures return on ad spend only: revenue / ad cost. ROI measures return on total investment: net profit / total cost (ads + operations + everything). ROAS is an operational campaign metric; ROI is the final verdict on the business. High ROAS with negative ROI is entirely possible — that's exactly what this article is about.

Q: Why is the Meta number always higher than reality? A: Three reasons: optimistic attribution (counts views), statistical modeling since Apple's tracking restrictions, and no deduction for returns (Meta counts the sale at checkout and never subtracts it if the customer doesn't receive the order). The inflation we typically see is 20-40%. That's why decisions come from your store's numbers, not the dashboard.

Q: When should I kill a campaign based on ROAS? A: When it stays below break-even for a full week — not a day or two; daily fluctuation is normal. Then pause or cut the budget hard. The only exception: small-budget testing campaigns, which are allowed to lose for a limited time to gather data — but with a pre-defined, capped test budget.

Q: Can ROAS be high and I still lose money? A: Yes, and it happens more often than you'd think. A 6x ROAS on a 10% margin is a guaranteed loss (break-even would be 10x). High ROAS on a thin-margin product is the most dangerous kind of deception — it makes you scale your losses with confidence.

The bottom line: one number matters

If you take one thing from this article, make it this: calculate your break-even point today, before launching another campaign. 1 divided by your true profit margin (after all costs, not COGS alone). Write it on paper and stick it in front of you. Any campaign below that number = loss. Any scaling decision above it with a safety margin = real growth.

And if this math feels heavy, or you want an expert eye on your numbers — at DOTS Growth we do full ad-account audits: we calculate your true net ROAS, your break-even point, and the leaks eating your margin, then tell you exactly where to scale and where to stop. Message us on WhatsApp at 01114767140 or directly via https://wa.me/201114767140 and we'll review your account together.

Frequently Asked Questions

What counts as a "good" ROAS?

Wrong question — the right one is: what's your break-even? Compute your true margin after all costs, divide 1 by it, add a 20-30% safety buffer. That's your target. Any number someone quotes without knowing your margin is noise. But if you want a rough range from what we see: successful COD stores in Egypt and Saudi Arabia usually land between 3x and 5x net.

What's the difference between ROAS and ROI?

ROAS measures return on ad spend only: revenue / ad cost. ROI measures return on total investment: net profit / total cost (ads + operations + everything). ROAS is an operational campaign metric; ROI is the final verdict on the business. High ROAS with negative ROI is entirely possible — that's exactly what this article is about.

Why is the Meta number always higher than reality?

Three reasons: optimistic attribution (counts views), statistical modeling since Apple's tracking restrictions, and no deduction for returns (Meta counts the sale at checkout and never subtracts it if the customer doesn't receive the order). The inflation we typically see is 20-40%. That's why decisions come from your store's numbers, not the dashboard.

When should I kill a campaign based on ROAS?

When it stays below break-even for a full week — not a day or two; daily fluctuation is normal. Then pause or cut the budget hard. The only exception: small-budget testing campaigns, which are allowed to lose for a limited time to gather data — but with a pre-defined, capped test budget.

Can ROAS be high and I still lose money?

Yes, and it happens more often than you'd think. A 6x ROAS on a 10% margin is a guaranteed loss (break-even would be 10x). High ROAS on a thin-margin product is the most dangerous kind of deception — it makes you scale your losses with confidence.

Ready to multiply your profits?

Let the DOTS Growth team apply growth engineering strategies to your project to increase sales and lower CAC.

Explore Our Services

Ready to Multiply Your Sales?

Don't waste more budget on failed experiments. Let DOTS Growth experts build you a sustainable growth engine.