Platform ROAS is revenue divided by ad spend, counted before product cost, shipping, fees, and returns. Profit ROAS divides actual gross profit by the fully-loaded cost of the sale. They routinely disagree by a wide margin, and because smart bidding optimizes toward whatever you feed it, bidding on platform ROAS quietly scales your least profitable sales.
Here’s a number that should make every advertiser nervous: the ROAS in your ad account is the most-quoted metric in performance marketing, and it’s measured before a single cost comes out. No product cost. No shipping. No payment fees. No returns. It’s the gross sticker price of revenue, divided by spend — and entire budgets are steered by it. For more on improving your UX, consider the impact of a fast landing page.
Then you check the bank account and the story doesn’t match. A 6× ROAS that feels like printing money can, on the products with thin margins, mean you’re paying to acquire sales that lose money. The fix isn’t a better bid strategy. It’s feeding the machine the right number.
What each number actually measures
Platform ROAS and profit ROAS answer two different questions. One asks “how much revenue did this spend generate?” The other asks “how much money did I actually keep?” Only the second one pays your bills. For more on query control, see our approach to negative keywords.
| Platform ROAS | Profit ROAS | |
|---|---|---|
| Numerator | Gross revenue | Gross profit |
| Counts COGS | No | Yes |
| Counts fees & shipping | No | Yes |
| Counts returns | No | Yes |
| Pays your bills | No | Yes |
Why the gap wrecks your bidding
Smart bidding is a value-maximizing engine: tell it a conversion is worth $X and it will chase more of those conversions. If the value you send is gross revenue, it optimizes toward high-revenue, low-margin orders — the discounted bundles, the heavy-to-ship items, the categories with brutal return rates. It’s working perfectly; it’s just working toward the wrong target.
Same campaign, ranked by each metric
Products that win on revenue can lose on profit.
How to bid on profit instead
The mechanics are well within reach. You calculate true margin per product, then pass that profit value into the platform as the conversion value — through the conversion tag or, better, a server-side feed tied to your real order data. From that point smart bidding optimizes toward margin, not revenue, and the same algorithm that was scaling your losers starts scaling your winners.
Isn’t platform ROAS good enough as a proxy?
Platform ROAS is only a safe proxy if every product carries identical margins — and almost no catalog does. The moment margins vary, optimizing on revenue actively pushes budget toward your thinnest-margin sales. The proxy doesn’t just lose precision; it points the wrong way.
This is the gap between marketing that looks good in a dashboard and marketing that grows a business. Profit ROAS is harder to set up because it requires knowing your real numbers — and that difficulty is exactly why most accounts never do it, and why doing it is an edge.
This article is a spoke node connected to our core technical hubs. To explore the broader architecture, visit our primary pillar pages: