Insights · Guide

POAS-driven bidding in Google Ads

Malthe Weibeck Thomsen

Malthe Weibeck Thomsen · Growth Hacker · Senior Pull Specialist · 8 July 2026 · 12 min.

Sådan virker det

Produktfeed
kr.
Profit-signal
G
Budgivning
Højmargin → mere budget
Lavmargin → kort snor

Sender du dækningsbidrag ind som konverteringsværdi i stedet for omsætning, forstår Performance Max og Shopping forskellen på en høj- og en lavmargin-ordre — og flytter budgettet mod de produkter, der reelt tjener penge.

01The problem with tROAS: it optimizes for the wrong thing

Google Ads' smart bidding is extremely powerful, but it's also blindly obedient: it optimizes toward exactly the number you feed it. Set a target ROAS (tROAS), and it chases revenue — shovelling budget toward the products that sell in volume, whether or not they earn anything. On a catalog with varying margins, that's a systematic, expensive mistake.

Take two products: one at €130 with a 15% margin and one at €80 with 60%. The first yields about €20 in contribution margin, the second about €48. But to a revenue-optimized tROAS the expensive product looks most attractive — so budget flows toward what earns least. Multiply that error across the whole catalog and you understand why so many accounts look healthy in Google and still bleed.

The fix isn't to tweak the bids. It's to change what Google perceives as "value" in the first place.

02Profit as the conversion value

Instead of sending revenue as the conversion value, we send the contribution margin per order. Via Profitmetrics (or an equivalent setup with per-SKU margin data), the real contribution is calculated for each order and written back to Google as the value bidding optimizes toward.

Now Performance Max and Shopping understand the difference between the two products from before — and bid accordingly. It requires no new campaigns and no extra budget; it's the same engine, suddenly chasing the right target. The result is a quiet but sweeping reallocation: budget migrates toward the products that actually make money.

Technically it assumes margin data is correct and kept up to date per product, and that the value is sent with the right currency and timing (including handling returns where possible). If the data foundation is skewed, Google simply optimizes quickly toward the wrong thing — which is why this is a setup to build carefully, not stand up in an afternoon.

03The feed is half the campaign

In Shopping and Performance Max there are no keywords you bid on. The feed IS your keywords. Titles, product type, attributes and images decide which searches you even match on — and a weak feed puts a ceiling on the campaign, no matter how good the bid is.

Titles are the heaviest lever. Front-load the most important search terms: brand, product type and the attributes people actually search for (color, size, material, compatibility). "Men's running shoes size 43 black — [brand] [model]" beats "[model]" every time. Product type and Google product category give the campaign structure and let you segment.

Custom labels are the secret behind POAS control in practice. By putting a margin bucket (e.g. high/mid/low) in custom_label_0, you can set different tROAS targets per bucket — bidding harder on the profit-drivers and keeping low-margin items on a short leash. Other labels can carry bestseller status, stock level or season. We often maintain the feed via DataFeedWatch or Producthero, so the rules run automatically.

Sådan virker det

titleSøgeord + produkt + attribut
product_typeKategori → hierarki
custom_label_0Margin: HØJ
image_linkRen, høj opløsning

custom_label_0 → tROAS pr. margin-bucket → budgettet flyder mod profit

I Shopping og Performance Max er feedet dine “keywords”. Titler, produkttype og billede afgør, hvad du matcher på — og et custom_label med margin-bucket lader dig byde højere på de produkter, der faktisk tjener penge.

04Campaign structure: control inside a black box

Performance Max is effective, but opaque. Without structure you hand the whole catalog — and the whole budget — to one algorithm that's happy to throw money at brand searches and bestsellers you'd have gotten anyway. So we build control in from the outside.

Split asset groups or campaigns by margin and role via custom labels: the profit-drivers get room to scale with a higher tROAS ceiling, while entry products and low-margin items are steered separately with tighter targets. Exclude brand searches from PMax (via brand exclusions or a dedicated brand campaign), so you can see the real, incremental value add instead of PMax taking credit for people who searched for you directly.

Use search term insights and asset reports to understand what PMax is actually running on, and feed it negative signals where it wastes. Feed-only PMax (without image and text assets) can give cleaner, more Shopping-like behavior when you want control over the catalog rather than broad placements.

05Bidding in practice

With contribution margin as the conversion value, break-even gets concrete: your break-even ROAS is 1 divided by the margin. A 40% margin means a break-even ROAS of 2.5 — everything above that is profit. Set tROAS targets per margin bucket that sit meaningfully above the respective break-even, and let budget follow the profit.

Portfolio bid strategies let you steer several campaigns toward one shared target and give the algorithm more data to learn from. Adjust targets seasonally — Black Friday and the holidays have a different conversion rate and different price elasticity than a quiet January — but don't make big daily jumps; smart bidding needs stability to learn.

Finally: read performance blended. Google Shopping, and especially brand searches, often show high attributed ROAS because they catch demand further down the funnel. Part of that value was created by your other channels. So judge Google against MER and break-even, not against a flattering number in isolation in the account.

Frequently asked questions

Can Google Ads optimize toward profit instead of revenue?+

Yes — by sending contribution margin in as the conversion value instead of revenue. Then smart bidding (tROAS or Maximize Conversion Value) optimizes toward actual profit across the catalog, instead of favoring high-revenue, low-margin products.

How do I control bidding by margin in Performance Max?+

Put the margin bucket in a custom label in the feed (e.g. custom_label_0 = high/mid/low) and split asset groups or campaigns accordingly, so each bucket can have its own tROAS target. That way you bid harder on the profit-drivers and tighter on low-margin items.

Should I exclude brand searches from Performance Max?+

Usually yes. Otherwise PMax takes credit for people who already searched for you, and you can't see the real, incremental value. A separate brand campaign (or brand exclusions) gives a cleaner picture and better control.

What is break-even ROAS, and how do I find it?+

The ROAS at which the contribution margin exactly covers the ad cost. It's 1 divided by your margin — a 40% margin gives a break-even ROAS of 2.5. Everything above is profit; everything below loses money.

Related terms

Google Ads, Shopping, feed optimization and POAS-driven bidding all sit within our Google setup.

See Google Ads
Malthe Weibeck Thomsen

Malthe Weibeck Thomsen

Growth Hacker · Senior Pull Specialist at Oaksmond

Pull specialist with 8+ years' experience. Comes from the agency world and has since worked as an independent consultant for several of the country's largest brands.

Meet the team →