What Profit on Ad Spend Actually Tells You
A campaign reports 5x ROAS. The team scales budget. Three months later, cash flow is tighter than before. What happened?
The campaigns that looked strongest were selling the lowest-margin products. A EUR 200 order on a product with 15 percent margin generates EUR 30 of gross profit. A EUR 80 order at 60 percent margin generates EUR 48. ROAS treats both by top-line revenue and tells you the first one is the winner. It is not.
This is the core problem profit on ad spend solves. POAS replaces revenue with gross profit in the numerator, so the metric reflects money your business actually keeps -- not money that passes through on its way to suppliers.
If you have read my breakdown of ROAS calculation and its broken inputs, you already know the denominator side of the equation is messy. POAS does not fix those input problems -- you still need accurate tracking and correct cost accounting. What it fixes is the question you are asking. ROAS asks "how much revenue did this ad generate?" POAS asks "how much profit did this ad generate?" The second question is the one your P&L cares about.
The POAS Formula
The profit on ad spend formula is straightforward:
POAS = Gross profit from ad-attributed sales / Ad spend
Where gross profit equals revenue minus cost of goods sold (COGS). Critically, ad spend is not subtracted from the numerator. Ad spend sits in the denominator. This distinction matters because subtracting ad cost from the numerator and then dividing by it again would double-count the advertising expense.
Let me walk through a hypothetical example to make this concrete.
Hypothetical: Two products, same ad spend
| Metric | Product A | Product B |
|---|---|---|
| Revenue from ad-attributed sales | EUR 10,000 | EUR 6,000 |
| COGS | EUR 7,000 | EUR 2,400 |
| Gross profit (Revenue - COGS) | EUR 3,000 | EUR 3,600 |
| Ad spend | EUR 2,000 | EUR 2,000 |
| ROAS (Revenue / Ad spend) | 5.0x | 3.0x |
| POAS (Gross profit / Ad spend) | 1.5x | 1.8x |
ROAS says Product A wins. POAS says Product B wins. If you are using value-based bidding in Google Ads with revenue as the conversion value, Smart Bidding will aggressively pursue Product A clicks and underbid Product B. The algorithm is doing exactly what you told it to do -- optimizing for revenue. It just happens to be optimizing away from profit.
Why ROAS Misleads When Margins Vary
ROAS works fine as a directional metric when every product in your catalog carries roughly the same margin. The moment margins diverge -- and in most e-commerce businesses, they diverge significantly -- ROAS becomes a misleading steering metric.
Consider a catalog with three product tiers (hypothetical figures):
| Tier | Avg. order value | Gross margin | Gross profit per order |
|---|---|---|---|
| Budget line | EUR 40 | 20% | EUR 8 |
| Mid-range | EUR 90 | 45% | EUR 40.50 |
| Premium | EUR 180 | 65% | EUR 117 |
A Target ROAS strategy optimizing for revenue will chase the premium tier because its order value is highest. But if the budget line has the highest conversion rate and lowest cost per click, ROAS will still underweight it relative to its actual profit contribution. POAS surfaces this because it uses the EUR 8, EUR 40.50, and EUR 117 figures directly, not the top-line order values.
POAS Bidding: Feeding Profit Into Smart Bidding
POAS is only useful if you can act on it. In Google Ads, that means feeding profit data -- not revenue -- as your conversion value. Google's documentation explicitly supports this: "You define the value that you want to maximize, such as sales revenue or profit margins, when you set up conversion tracking."
This is what POAS bidding means in practice. Instead of sending the order total as the value parameter in your purchase conversion tag, you send the gross profit. Smart Bidding then optimizes for profit, not revenue, because it treats whatever you pass as the value to maximize.
There are two ways to implement this:
1. Pass gross profit directly as conversion value
Calculate gross profit at the point of conversion and send it through the data layer. Your backend needs to know the COGS for each SKU in the cart and subtract it from the order total before passing the value to the conversion tag.
Hypothetical example: A customer buys two items -- EUR 50 (COGS EUR 20) and EUR 30 (COGS EUR 18). Total revenue: EUR 80. Total COGS: EUR 38. You send EUR 42 as the conversion value instead of EUR 80.
2. Use conversion value rules to apply margin adjustments
Google's conversion value rules let you adjust reported values by audience, location, or device. While this is less granular than SKU-level profit data, it can serve as a first step -- for example, applying a 0.4 multiplier to conversion values for a product category that runs at 40 percent margin.
The first approach is more accurate. The second is faster to deploy. Either is better than bidding on raw revenue when your margins are not uniform.
What You Need to Get Right
POAS bidding inherits every tracking requirement that value-based bidding demands, plus one more: accurate margin data. Here is what breaks.
Margin data must be current and SKU-level
A blended average margin applied to all products defeats the purpose. If your COGS changes with supplier pricing or seasonal discounts, the margin data feeding your conversion tag needs to reflect that. Stale margins produce stale POAS numbers.
Conversion tracking must be clean first
Switching from revenue to profit as your conversion value does not fix double-firing tags, missing transaction IDs, or consent gaps. Those problems corrupt the signal regardless of what you put in the numerator. If your conversion tracking is unreliable, fix that foundation first before layering on profit-based bidding.
Volume thresholds still apply
Google's Smart Bidding needs sufficient conversion volume to learn -- at least 15 conversions in 30 days for Target ROAS on Search campaigns. When you switch conversion values from revenue to profit, the absolute numbers drop. A campaign reporting EUR 50,000 in monthly conversion value might report EUR 20,000 in gross profit. The algorithm adjusts to whatever scale you feed it, but your Target ROAS number must change accordingly. A 5x target on revenue is not the same as a 5x target on profit.
The learning period resets
When you change what the conversion value represents, Smart Bidding enters a new learning period. Expect two to four weeks of volatile performance as the algorithm recalibrates. Do not adjust targets during this window.
POAS vs. ROAS: When to Use Which
POAS is not universally better than ROAS. It is better in specific situations.
| Scenario | Better metric | Why |
|---|---|---|
| Uniform margins across catalog | ROAS | Revenue and profit tell the same story, so the simpler metric works |
| Highly variable margins by product | POAS | Revenue-based bidding will misallocate spend toward low-margin products |
| Promotional / clearance campaigns | POAS | Discounted items have different margins than full-price items |
| B2B / lead gen with single product | ROAS or CPA | Margin is constant per deal; POAS adds no new information |
| Mixed catalog with SKU-level COGS data | POAS | Maximum signal quality for Smart Bidding |
The POAS meaning in marketing is simple: it is the profit-aware version of ROAS. In POAS marketing, the goal is steering ad spend toward profit, not revenue. Use it when the distinction between revenue and profit matters for your bidding decisions. When margins are uniform, ROAS and POAS will rank campaigns identically, and the added complexity of maintaining margin data is not worth it.
Common Mistakes With POAS
Double-subtracting ad spend. Some teams calculate POAS as (Revenue - COGS - Ad spend) / Ad spend. That is closer to an ROI calculation and has its place, but it is not POAS. The standard POAS formula keeps ad spend out of the numerator. If you subtract it from the numerator and divide by it, you are penalizing ad spend twice and will underestimate the profitability of every campaign.
Using blended margins. Applying a single average margin percentage to all conversions eliminates the variation that makes POAS useful. The whole point is that different products generate different profit. If you blend them, you are back to a fancier version of ROAS.
Ignoring returns and refunds. A EUR 200 order with EUR 120 gross profit that gets returned is not EUR 120 of profit. It is zero -- or negative after return shipping. Unless you send conversion adjustments back to Google Ads, your POAS will overstate profitability on high-return categories.
Setting a universal "good" POAS target. There is no magic number. A POAS above 1.0 means gross profit exceeds ad spend. Whether 1.2 or 3.0 is the right target depends on your fixed costs, acquisition goals, and lifetime value assumptions. A brand investing in new customer acquisition might accept 0.9 POAS on first purchase if repeat purchase data justifies it.
Getting Started: A Practical Sequence
If you want to move from ROAS to POAS bidding, here is the order I would recommend:
- Audit your conversion tracking. Make sure the revenue numbers you are currently sending are accurate before you layer margin data on top. The Google Ads conversion tracking guide covers the full setup.
- Map COGS to every SKU. Export your product catalog, attach the current cost of goods, and calculate margin per product. Update this quarterly at minimum.
- Build the data pipeline. Get margin data into your data layer so your conversion tag can send gross profit instead of revenue. This typically involves a backend calculation that feeds into the checkout confirmation page.
- Run POAS as a reporting metric first. Before switching your bidding, report POAS alongside ROAS for four to six weeks. Identify which campaigns and product groups look different under each metric.
- Switch conversion values. Update your conversion tag to send gross profit. Adjust your Target ROAS targets downward to reflect the smaller absolute values. Monitor through the learning period.
- Validate against your P&L. Compare the profit Google Ads reports in conversion value to your actual gross profit from ad-attributed orders. If they diverge by more than 15 percent, your margin data or attribution is off.
FAQ
What does profit on ad spend mean in marketing?
Profit on ad spend, or POAS, is a marketing metric that measures gross profit generated from ad-attributed sales divided by the ad spend for those campaigns. Unlike ROAS which uses revenue in the numerator, POAS uses gross profit (revenue minus cost of goods sold), giving a more accurate picture of whether advertising is actually profitable.
How is POAS different from ROAS?
ROAS divides revenue by ad spend. POAS divides gross profit by ad spend. The difference matters when products carry different margins. A campaign with high ROAS can be unprofitable if it sells mostly low-margin products, while a campaign with lower ROAS might be more profitable because it sells high-margin items. POAS surfaces this distinction.
What is a good POAS target?
There is no universal good POAS. A POAS above 1.0 means gross profit exceeds ad spend for that campaign. The right target depends on your fixed costs, customer acquisition strategy, and lifetime value. Some brands target 1.5 for growth campaigns and 2.5 or higher for efficiency campaigns. Calculate what POAS you need to cover your fixed costs and generate acceptable net profit.
Can I use POAS bidding in Google Ads?
Yes. Google Ads Smart Bidding optimizes for whatever conversion value you send. If you pass gross profit instead of revenue as your conversion value, the Maximize Conversion Value and Target ROAS strategies will optimize for profit. You need to calculate gross profit per order on your backend and send that figure through your conversion tag.
Should I subtract ad spend from the POAS numerator?
No. The standard POAS formula is gross profit divided by ad spend. Ad spend belongs in the denominator only. Subtracting ad cost from the numerator and then dividing by it again would double-count the advertising expense, understating the profitability of every campaign. If you want a metric that accounts for ad cost in the numerator, you are calculating a form of ROI, not POAS.
Not sure your margin data is reaching Google Ads correctly? Book a measurement audit -- I will tell you exactly what is broken and what to fix before you switch to profit-based bidding.