ROAS Explained: How We Calculate It, Judge It and Improve It
ROAS is how many dinars of sales came back for every dinar spent on ads. But a ROAS of 4 can be profit for one store and a loss for another. Here's why.

ROAS (return on ad spend) is the sales value an ad generated divided by what you spent on it. Spend 200 dinars, make 1,000 dinars in sales, and your ROAS is 5: each dinar of advertising brought back 5 in sales. It's the main number we use to judge campaigns for online stores and any business selling online with purchase tracking in place.
But ROAS measures sales, not profit. A store with high margins can be profitable at a ROAS of 2, while a store with thin margins can lose money at 4. So the first thing we do with any client is work out the level below which ads lose money, and only then talk about raising it.
The formula, and the number that covers your costs
The basic formula: ROAS = sales from ads ÷ ad spend. What matters is knowing your break-even point, the ROAS at which you neither gain nor lose. We calculate it like this:
- Work out the margin after product, packaging, delivery and payment fees. A product selling at 20 dinars with a full cost of 12 leaves 8 dinars, or 40%.
- Divide 1 by that margin: 1 ÷ 0.4 = 2.5.
- That's break-even ROAS. Below 2.5, every ad-driven sale loses money. Above it, you profit.
We then add a safety margin to cover production, management and returns, so the real target sits a little above break-even. The same logic drives our decisions on when to stop or scale an ad.
Why the platform number doesn't match your bank account
Many store owners see a high ROAS in Ads Manager, then open their bank account and see a different picture. There are real reasons:
- Attribution windows: the platform credits the ad if someone buys within a set period after clicking or viewing, even if they would have bought anyway.
- Cash on delivery: in Jordan and the Gulf, a large share of orders are paid on delivery. The platform counts the order when placed, but some get cancelled or returned.
- Broken or duplicate tracking: a badly installed pixel can count a sale twice or not at all.
- Sales on other channels: someone sees the ad and buys in store or on WhatsApp. That never appears in the figure.
So we always compare the platform figure with a second one we call blended return: total actual store sales (after cancellations) divided by total ad spend across all platforms. If the two are far apart, tracking is the first thing we check, as described in conversion tracking.
A real result, and how to read it
In one Meta sales campaign we managed, targeting new prospects who didn't know the brand, purchase ROAS reached 59.3. A number like that happens when a wanted product, strong content, accurate tracking and a ready audience all come together. To be clear, it isn't a figure to expect from every campaign. A successful campaign for another client can return far less and still be very profitable given its margin. The goal isn't the highest possible number. It's a number steadily above break-even, with sales volume growing.
How we raise ROAS
ROAS depends on three things: what it costs to reach someone, how many of them buy, and how much each order is worth. Each has its own levers.
Content
In our experience, the biggest lever. An ad that stops the right person and answers their objection before they ask brings buyers at lower cost. We test several hooks and angles and scale what sells.
For stores, a big difference comes from answering the questions that stall a purchase: the real size of the product, how it looks in person, how long delivery takes. Every unanswered question makes some people postpone, and online, postponing usually means never coming back.
Order value
- Bundles (two products together at a better price) raise basket size.
- A free-delivery threshold set slightly above the current average order.
- A complementary product suggested at checkout.
Product page and checkout
A slow page, or one that hides delivery cost, loses people you already paid to bring. Fixing the page sometimes lifts ROAS more than any ad change.
Budget allocation
We stop ads below break-even once they've had a fair chance, move their budget to winners, and keep a share for retargeting visitors who didn't buy.
Example: a skincare store in Amman
Say an online skincare store has an average order of 25 dinars and a margin of about 50% after all costs, so break-even ROAS is 2. Ads Manager reports 3.5, yet the owner feels there's no profit.
On review, about a quarter of cash-on-delivery orders are being cancelled, and the pixel fires twice on the thank-you page when customers refresh it. After fixing tracking and removing cancellations, the real return is closer to 2.2: just above break-even.
The plan: fix tracking, add a WhatsApp confirmation message before shipping to reduce cancellations, create a full-routine bundle to raise order value, and film three new versions showing results on skin instead of the bottle. A month later we compare real return, not the platform figure alone.
How we handle this at Wave
Before any sales campaign we calculate break-even ROAS from the client's real numbers and confirm tracking records purchases correctly. We use the platform figure to compare ads and blended return from store sales to judge profit. We work on content, order value and the product page together, because a higher return rarely comes from one place. For online stores specifically, the full path from ad to order is covered in marketing e-commerce stores.
Questions about this topic
What is a good ROAS?
Does ROAS work for businesses that sell on WhatsApp?
Why did ROAS drop when I increased the budget?
Want us to apply this to your brand?
Message us on WhatsApp, tell us what you sell and to whom, and we'll come back with a first idea and a plan.
Chat with us on WhatsAppRelated articles
MeasurementCost per Conversation: The Number You Should Watch
Cost per conversation is what you paid in ads for each person who started a chat with you. Simple number, but reading it correctly separates campaigns that sell from campaigns that collect questions.
4 min read
MeasurementLikes Aren't Sales: The Metrics That Mislead You and What to Watch Instead
An account with thousands of likes can sell nothing, and an ad with modest engagement can fill a shop. Here are the metrics that mislead and what we measure instead.
4 min readConversion Tracking: Meta Pixel and Google Tag Manager Made Simple
Without correct tracking, platforms can't tell who bought, so they optimize ads for the wrong thing. Here are the tools, the events and the checks we run before any launch.
4 min read