Insights

POAS: how to measure the profit behind your ad spend.

POAS (profit on ad spend) is the gross profit your ads generate divided by what those ads cost. A POAS of 1 means break-even: every euro of ad spend brings back exactly one euro of gross profit. Above 1 your advertising makes money, below 1 every sale costs you. ROAS measures revenue. POAS measures what you keep.

Plan a strategic call
Our marketing approach

Marketing

18 min read

A campaign with a 500% ROAS looks like a winner on any dashboard. It can still lose money, because revenue says nothing about what is left after product costs, shipping and returns. POAS closes that gap. It tells you how much gross profit each unit of ad spend brings in, and so whether your ads grow the business or only the top line.

This guide covers what POAS is, how to calculate it (with a worked example and a calculator), how it compares with ROAS and ROI, what a good POAS looks like and how to measure it in Google Ads, Meta and GA4. The definitions come from ProfitMetrics, which holds POAS as a trademark, and the setup steps from Google Ads Help, Merchant Center Help and GA4 Help; the examples are ours. At Viralistic we measure what matters to the business: enquiries, their quality and the cost of a new client. For an online store, POAS is the most honest number an ad account can show you.

What is POAS?

POAS stands for profit on ad spend. It is a KPI for paid advertising that divides the gross profit generated by your ads by the cost of those ads. Instead of asking how much a campaign sold, it asks how much of that revenue you keep once the variable costs are paid.

ProfitMetrics, which uses the term as a trademark (POAS®), defines the gross profit in the formula as what remains after variable order costs such as cost of goods sold, shipping, payment fees and packaging. Fixed expenses like rent and salaries stay out (ProfitMetrics on the POAS formula). The logic is simple. The R in ROAS was meant to be return. Because ad platforms never received profit data, that return quietly became revenue. POAS puts profit back into the equation.

You will also see it written as profit over ad spend. Same metric, same maths. And if a search for POAS lands you on a volcano in Costa Rica or an acronym list, you are not alone: in marketing it always means profit divided by ad spend.

A glass bottle, an unprinted shipping carton, packing tape and a card reader on a stone surface: the variable costs POAS subtracts from every order.

Which costs belong in the profit figure?

At its simplest, gross profit is revenue minus the cost of the goods you sold. The more variable costs per order you include, the closer POAS gets to your real result. Fixed costs stay out, because you pay them whether or not you advertise tomorrow.

CostInclude in POAS?Why
Cost of goods sold (COGS)YesThe core of gross profit
Discounts and promo codesYesThey lower what an order actually earns
Shipping and packaging you pay forYesThey vary with every order
Payment processing feesYesThey scale with every transaction
Expected returnsYes, as an average rateOtherwise POAS looks better than your bank balance
VAT or sales taxNo, work net of taxIt is not income to you
Ad spendNoIt is the denominator
Rent, salaries, softwareNoFixed costs are paid from what is left after ads

Pick one definition and stick to it. Using product cost only gives a higher POAS than including every variable order cost. Both work, as long as you compare campaigns and periods with the same definition.

How to calculate POAS

You calculate POAS by dividing the gross profit from your ads by your ad spend. The result is a ratio: a POAS of 2 means EUR 2 of gross profit for every euro spent.

POAS = gross profit from ads ÷ ad spend

Some teams express it as a percentage, so 2 becomes 200%. The maths does not change.

Worked example

An online skincare brand spends EUR 4,000 on Google Ads in a month. The campaigns bring in EUR 20,000 in revenue, excluding VAT. The products sold cost EUR 10,000. Shipping, packaging, payment fees and returns add another EUR 2,000.

LineAmount
Revenue from ads (excl. VAT)EUR 20,000
Cost of goods soldEUR 10,000
Gross profit after COGSEUR 10,000
Variable order costsEUR 2,000
Gross profit after order costsEUR 8,000
Ad spendEUR 4,000

ROAS is EUR 20,000 ÷ EUR 4,000 = 5, or 500%. Counting product cost only, POAS is EUR 10,000 ÷ EUR 4,000 = 2.5. Counting all variable order costs, POAS is EUR 8,000 ÷ EUR 4,000 = 2.0. After paying for the ads, EUR 4,000 remains to cover fixed costs and profit. One campaign, three numbers, and only the last one tells you how much room you really have.

Use the calculator below to run your own numbers. The defaults reproduce the worked example.

POAS calculatorEnter your ad spend, revenue, margin and variable order costs to see whether the campaign makes money.
ROAS
5.00
Gross profit after order costs
€ 8,000
POAS
2.00
Left after ad spend
€ 4,000

Your POAS is 1 or higher: the ads pay for themselves and everything above 1 goes towards fixed costs and profit.

POAS vs ROAS: what is the difference?

ROAS divides revenue by ad spend. POAS divides gross profit by ad spend. ROAS tells you how much you sell per unit of budget, POAS how much you earn from it. With one fixed margin you can convert one into the other. Once margins vary by product or by order, the two can point in opposite directions.

The conversion is short: POAS = ROAS × gross margin, with the margin as a share of revenue. It also explains the familiar break-even ROAS of 1 ÷ gross margin. At a 40% margin, break-even ROAS is 2.5, and that is exactly where POAS hits 1. For the full ROAS method, including break-even and target ROAS, read our guide to ROAS.

ROASPOASROI
NumeratorRevenue (conversion value)Gross profit from adsNet profit from the investment
DenominatorAd spendAd spendTotal investment
Break-even1 ÷ gross margin, different per businessAlways 10%
ShowsSales volume per unit of budgetThe profit contribution of your adsReturn after all costs
Data neededRevenue per conversionCost or margin per product or orderAll costs and returns

ROI goes one step further than POAS, because it also counts fixed costs and your team’s time. We compare the three in more depth in ROI.

The gap between ROAS and POAS becomes obvious when three product lines from the skincare brand all hit the same ROAS.

Same ROAS, different POASThree product lines at a ROAS of 5 with different margins
  • ROAS
  • POAS
01.534.565.000.905.001.755.003.00Break-even POASGift sets (18%)Core range (35%)Own label (60%)01.534.565.000.905.001.755.003.00Break-even POASGift sets(18%)Core range(35%)Own label(60%)
Same ROAS, different POAS
ROASPOAS
Gift sets (18%)5.000.90
Core range (35%)5.001.75
Own label (60%)5.003.00

Worked example: POAS = ROAS × margin

On ROAS the three look identical. On POAS the own-label line earns EUR 3 of gross profit per euro of spend, the core range makes a healthy profit and the discounted gift sets lose 10 cents on every euro. If you optimise on revenue, budget flows to whatever sells most easily. That is rarely the same as whatever earns most.

So when is ROAS enough? If your margin is roughly the same across the catalogue, a well-calculated target ROAS gives you the same picture. POAS earns its keep when margins differ a lot, when you run frequent promotions or when shipping costs swing from order to order. We will say it plainly: switching takes setup work, and it only pays off if it changes your decisions.

What POAS does not tell you

POAS inherits the attribution of the platform that reports it. Google Ads and Meta each credit a sale to their own ads, so a POAS of 2 in both accounts can describe the same orders twice. Attributed profit is also not the same as extra profit. A brand campaign with a POAS of 6 mostly collects orders from people who were already on their way to you, which is the question incremental ROAS (iROAS) tries to answer.

Two checks keep POAS honest. Once a month, divide the total gross profit of your store by your total ad spend across all channels. That blended figure resembles MER, the marketing efficiency ratio, but on profit instead of revenue, and it cannot count a sale twice. With larger budgets, add a holdout test: lift studies in Google Ads and Meta compare people who saw your ads with people who did not, and show the profit the ads really added.

What is a good POAS?

A good POAS is above 1, and how far above depends on your fixed costs and your goals. There is no reliable industry benchmark, because every business defines gross profit differently: one counts product cost only, another includes shipping, fees and returns. Compare your POAS with your own target, not with somebody else’s number.

A POAS of exactly 1 is break-even on variable costs. The ads pay for themselves but contribute nothing to rent, salaries or software. Only what sits above 1 keeps the business running.

How to set a target POAS

First decide how much of your revenue you want left after ad spend to cover fixed costs and profit. Your target POAS then follows from one formula, with both values as a share of revenue:

Target POAS = margin ÷ (margin - desired profit after ad spend)

In the worked example, the margin after variable order costs is 40% (EUR 8,000 of EUR 20,000). If the brand wants to keep 20% of revenue after ads, advertising can take at most 20% of revenue. The target POAS is 0.40 ÷ 0.20 = 2.0. That is the same calculation as a target ROAS of 1 ÷ 0.20 = 5, or 500%, expressed in profit instead of revenue. The campaign in the example lands exactly on target.

The chart shows how quickly that target climbs as you ask for more.

Target POAS at a 40% marginDesired profit after ad spend, as a share of revenue
00.81.52.332.6720% profit: target POAS 2.00%5%10%15%20%25%00.81.52.332.6720% profit: target POAS 2.00%5%10%15%20%25%
Target POAS at a 40% margin
Target POAS
0%1.00
5%1.14
10%1.33
15%1.60
20%2.00
25%2.67

Worked example: margin ÷ (margin - desired profit)

The curve gets steep fast. Wanting 25% profit at a 40% margin means a POAS of 2.67, which is hard to sustain at scale. That is not a reason to lower your ambition. It is a reason to work on margin first, because every extra point of margin lowers the bar straight away.

New and returning customers

A POAS below 1 is not always a mistake. If you acquire customers who come back, the first order can earn less than it costs, as long as profit across the whole relationship makes up for it. Do this on purpose: use your real repeat-purchase data, watch your cash flow and agree up front how long you accept the investment. Our articles on customer lifetime value and CAC show how to put a number on both sides.

Judge brand campaigns separately. People who search for your name were already looking for you. Those campaigns usually post a high POAS, but they say little about how well your ads reach new customers.

Where to measure profit on ad spend: Google Ads, Meta and GA4

None of the three platforms has a standard column called POAS. You measure it by sending profit instead of revenue as the conversion value, or by putting profit data next to your ad costs.

A small locked brass cash box beside a closed laptop on a walnut desk: profit per order is calculated on your server, out of sight.

PlatformWhere you see POASWhat you need to send
Google AdsConversion value/cost, or gross profit with cart dataProfit as conversion value, or cart data plus COGS in Merchant Center
Meta Ads ManagerPurchase ROAS, once the value you send is profitProfit as value through the Meta pixel or the Conversions API
GA4A calculated metric you buildA profit parameter on the purchase event

Google Ads optimises towards whatever conversion value you send, and Google names profit as an option itself. With the Target ROAS bid strategy, “bids are set to maximize conversion value, such as sales revenue or profit margins” (Google Ads Help on conversion values). Send gross profit per order instead of revenue, and the Conversion value/cost column becomes your POAS. Target ROAS then effectively bids towards a target POAS. A target POAS of 2.0 goes into Google Ads as a target ROAS of 200%. For how the auction and bid strategies work, see search engine advertising explained.

Prefer to keep revenue as your conversion value? Google can still report on profit alongside it. With conversions with cart data, every purchase tells Google which products were sold. Combine that with the cost_of_goods_sold attribute in your Merchant Center feed and Google Ads calculates metrics such as gross profit and gross profit margin at campaign, ad group and product level (metrics available with cart data). Products without a cost value in the feed are left out of the profit calculation, so an incomplete feed gives you an incomplete picture.

Meta Ads Manager

Meta reports Purchase ROAS: purchase conversion value divided by amount spent. That value is whatever you pass through the Meta pixel or the Conversions API. Pass gross profit instead of revenue and the column becomes your POAS, while value optimisation starts chasing profit rather than order size. In June 2025 Meta announced a test of profit-based optimisation through the Conversions API; check in Ads Manager whether your account has access before you plan around it.

Google Analytics 4

GA4 has no built-in profit metric. You can send a custom parameter with the profit per order on the purchase event and register it as a custom metric with the currency unit of measurement (GA4 Help on custom metrics). A calculated metric then divides that profit by your ad costs. That lets you compare POAS across channels, including channels that never receive profit data themselves.

One caution on sensitive data. If you print the profit per order in the source code of your thank-you page or in the data layer, anyone with a browser can read your margins. Calculate profit on your server and send it from there.

Switching from ROAS to POAS

If you want campaigns to bid on profit, this order works:

  1. Start offline. Put POAS next to ROAS per campaign in a spreadsheet for a few weeks; the campaigns where a high ROAS hides a thin margin show up fast.
  2. Make sure the cost price per product or variant is stored in your store, along with the variable order costs you want to include.
  3. Calculate the profit per order at checkout, preferably on your server.
  4. Send that profit as the conversion value to Google Ads and Meta, and keep revenue visible as a secondary conversion or in GA4.
  5. Convert your target: old target ROAS times your margin. A 500% target ROAS at a 40% margin becomes 200%.
  6. Give the bidding algorithm a few weeks and judge results over a full conversion cycle.

Step 5 is the one people forget. Leave the old target ROAS in place while conversion values suddenly drop, and the system bids far less and your traffic falls away.

There is a lighter route too. Instead of sending profit as the conversion value, you split your catalogue into margin groups with a custom label in your Merchant Center feed and give each group its own target ROAS, derived from that group’s break-even ROAS. Google lists margin as an example use for these labels, which work in Performance Max, Shopping and Demand Gen campaigns (Merchant Center Help on custom labels). Your revenue reporting stays intact. The steering is coarser than profit per order, though, because within a group Google still treats every euro of revenue as equally valuable.

How to earn more profit per euro of ad spend

You improve POAS by earning more gross profit per order, wasting less budget or getting more orders from the same clicks. In practice the first lever is the best place to start.

Start with how the budget is split. Give high-margin products more room than products you barely earn on, either with profit as the conversion value or with the margin groups described above. Products that stay below a POAS of 1 do not automatically belong in your ads. Sometimes they are worth it as an entry product, but then that is a decision, not an accident.

Then look at the order itself. A higher average order value spreads fixed order costs over more revenue, for instance through bundles or a free-shipping threshold set just above your typical basket. Be careful with discounts, because every promo code comes straight off your margin. And reduce returns with better product information and photography that shows exactly what people will get.

Finally, the website. Every visitor who leaves your landing page without ordering has already been paid for. A faster page, a clearer offer and less friction at checkout raise POAS without adding a cent of budget. We test changes like these with A/B tests, so you know what works rather than guess. Our guide to conversion rate optimisation shows how.

Look beyond the ad account too. A strong organic presence makes every paid click more effective, because people who look you up find a consistent brand they trust. That is why our marketing approach starts with the foundation and adds ads only once the basis is healthy.

Profit on ad spend for service businesses and lead generation

POAS comes from e-commerce, where every order has a known value and a known margin. If you sell services and clients arrive through an enquiry, you do not know what a conversion is worth when it happens. The principle still holds: look at the profit behind an enquiry, not the number of forms.

Value per enquiry = gross profit per new client × share of enquiries that become clients

Say an architecture studio earns an average gross profit of EUR 9,000 on a new project and one in four enquiries becomes a client. Each enquiry is then worth EUR 2,250. If an enquiry from Google Ads costs EUR 450, the POAS per enquiry is EUR 2,250 ÷ EUR 450 = 5. To work out the most you can pay per enquiry, use your CPA.

Real outcomes beat estimates. With an offline conversion import you tell Google Ads afterwards which enquiries became clients and what they were worth. The bidding algorithm then learns which searches lead to good clients, not just to completed forms. This is what we usually steer on at Viralistic: the number of enquiries, their quality and what a new client ultimately costs.

Common mistakes when steering on profit

Most POAS mistakes have nothing to do with the formula. They come from the numbers you feed into it.

MistakeWhat happensHow to avoid it
Using revenue including VATProfit looks higher than it isWork net of VAT throughout
Ignoring returnsPOAS is inflated in categories with many returnsDeduct an average return rate per category
Changing the profit definitionPeriods and campaigns become impossible to compareFix one definition and use it everywhere
Keeping the old target ROAS after switchingBids collapse and traffic dropsConvert the target using your margin
Exposing profit in the page sourceAnyone can read your marginsSend profit server-side
Treating a POAS of 1 as profitFixed costs stay unpaidSteer on a target POAS above 1
Judging new customers on their first order onlyYou choke off growthBuild customer value into your target

How we help

Marketing at Viralistic starts organic. Before we let your ad budget chase profit, we check whether the foundation holds: a clear story, a fast website that turns visitors into clients and measurement that works. If something is missing there, we tell you, because paid campaigns only make a leak bigger.

When the foundation is healthy and you want to grow with Google Ads or Meta Ads, we set up measurement around what your business earns. For an online store that usually means POAS: profit per order against what the ads cost. For a service business it is enquiries, their quality and the cost of a new client. We test broadly first, review the numbers with you and move budget to what demonstrably works. Where it saves time, we connect your store and your ad accounts with an automation in n8n, and a person checks every step, also when AI helped. Read more about how we approach marketing, or about what to look for in Google Ads management.

Frequently asked questions

What is POAS in marketing?

POAS stands for profit on ad spend. It is the gross profit your ads generate divided by your ad spend. A POAS of 2 means every euro of advertising brought in EUR 2 of gross profit. Where ROAS looks at revenue, POAS shows whether your ads actually make money once product and order costs are paid.

What is the difference between ROAS and POAS?

ROAS divides revenue by ad spend, POAS divides gross profit by ad spend. ROAS tells you how much you sell per unit of budget, POAS how much you earn. Break-even POAS is always 1, while break-even ROAS depends on your margin: 1 divided by gross margin. When margins vary across products, POAS gives the more honest picture.

How do you calculate POAS?

Divide the gross profit from your ads by your ad spend. Gross profit is revenue excluding VAT, minus the cost of goods sold and, ideally, variable order costs such as shipping, payment fees and returns. For example, EUR 8,000 gross profit on EUR 4,000 ad spend gives a POAS of 2.0. Keep the same profit definition so comparisons stay fair.

What POAS should I aim for?

Aim for a POAS that beats your own target POAS, and that target is always above 1. At exactly 1, your ads only pay for themselves and leave nothing for fixed costs. How far above 1 you need to be depends on your margin and the profit you want to keep. There is no universal benchmark, because every business defines profit differently.

Is a POAS of 1 break-even?

Yes, on variable costs. At a POAS of 1, the gross profit from your ads exactly covers what you spent on them. Rent, salaries and software are not covered yet, so a POAS of 1 is not profit for the business. Set a target above 1 that leaves room for fixed costs and the margin you want to keep.

What does a POAS of 2 mean?

A POAS of 2, sometimes written as 2:1, means every euro or dollar of ad spend brought back two in gross profit. After paying for the ads, one euro per euro spent is left for fixed costs and profit. Whether that is enough depends on your target POAS, which follows from your margin and the share of revenue you want to keep.

Is POAS better than ROAS?

POAS is better when your margins differ across products or orders, because it shows profit rather than revenue. If your margin is nearly the same everywhere, a well-calculated target ROAS gives the same answer with less setup. POAS needs cost data per product and a way to send profit to your ad platforms, so it pays off once it changes decisions.

What is the difference between ROAS and iROAS?

ROAS credits all revenue the platform attributes to your ads. iROAS, incremental ROAS, counts only the revenue the ads added, measured with a holdout or lift test against people who did not see them. Brand campaigns often show a high ROAS and a low iROAS. The same logic applies to profit: attributed POAS is not the same as extra profit.

Can you bid on POAS in Google Ads?

Yes, through the conversion value. Send gross profit per conversion instead of revenue and use Target ROAS or Maximize conversion value. Google then bids on profit. A target POAS of 2.0 goes in as a target ROAS of 200%. Convert your old target when you switch, or the algorithm will bid far less than you intend.

Written by

Marrallisa Kreijkes

Founder of Viralistic and official n8n Ambassador

Marrallisa leads strategy, design, search and automation for premium brands from Amsterdam. She has trained teams at Volkswagen and speaks at n8n and Anthropic events. Want to talk through your situation? Book a call with her directly.

Keep reading
All insights ↗