Performance Max Profit Optimization for WooCommerce
Wootrack Growth Blog
Performance Max Profit Optimization for WooCommerce
Key takeaways
- Performance Max optimizes for revenue by default – it has no idea which of your products actually make money after real costs.
- A product with 500% ROAS can still deliver negative profit once you subtract COGS, shipping, payment processor fees, and VAT.
- Without profit signals, Google’s Smart Bidding AI will keep scaling your worst-margin products if they drive high revenue.
- POAS (Profit on Ad Spend) replaces revenue as the optimization signal, so Google bids more on products that make you money.
- WootrackApp sends true per-order profit to Google Ads as offline conversions, turning Performance Max into a profit-seeking machine.
Why Performance Max Looks Great But Feels Wrong
You check your Performance Max dashboard. ROAS is 380%. Google is calling it a top-performing campaign. Your agency is happy. But your bank account tells a different story.
This is one of the most common frustrations we hear from WooCommerce store owners. The numbers in Google Ads look strong, but profit at the end of the month is thin – or gone entirely. And the reason is simple: Performance Max has no idea what profit looks like.
Google’s AI is incredibly powerful. It can find buyers, match intent, and allocate budget across Search, Shopping, Display, YouTube, and Gmail simultaneously. But it is only as smart as the signal you feed it. And by default, that signal is revenue. Not profit. Revenue.
So what happens? PMax finds the products that generate the most clicks and conversions at the highest order values. It scales those hard. The problem is that a €120 order on a product with 80% COGS, €8 shipping, and 2.9% Stripe fees might leave you with €8 in actual profit – or nothing at all. Google does not know that. It sees a €120 conversion and calls it a win.
Meanwhile, your €35 product with 60% margin and no shipping cost is getting ignored because the revenue number looks smaller. PMax is literally optimizing against your interests, and it will keep doing it until you give it better data.
The Hidden Cost Stack Nobody Talks About
Here is the thing most Google Ads guides skip entirely. Your actual cost per order is not just COGS. It is COGS plus shipping plus payment processor fees plus VAT for EU stores plus returns. Stack all of that together and a product that looks like a 400% ROAS winner can be a 90% POAS loser – meaning you are spending €1 in ads to make €0.90 in profit. You are paying Google to lose money.
We have audited WooCommerce stores where 30-40% of ad spend was going to products with negative or near-zero profit after the full cost stack. The ROAS on those products was fine. Sometimes excellent. But ROAS does not pay your suppliers.

Performance Max ROAS vs POAS: What Google's AI Actually Needs
ROAS measures revenue per ad dollar. POAS measures profit per ad dollar. That distinction sounds simple, but the operational difference is enormous.
With ROAS bidding, Google’s Smart Bidding tries to maximize the revenue value of every conversion. It uses your conversion values – which are order totals by default – to decide where to bid higher or lower. The AI is doing exactly what you told it to do. The problem is you told it to chase revenue.
With Performance Max POAS bidding, you replace those revenue conversion values with actual profit values. Instead of sending Google a €120 conversion, you send it a €14.80 conversion – the real profit after COGS, shipping, Stripe fees, and VAT. Now the AI is chasing the number that actually matters.
The shift sounds technical, but the outcome is straightforward. Google starts bidding more aggressively on your high-margin products and pulls back on low-margin ones. Over a few weeks, budget naturally flows toward the products that make you money. That is Performance Max working the way it should.
Why Sending Profit Values via Offline Conversions Works
Google Ads supports offline conversion imports – a feature originally built for B2B lead tracking where sales close outside the platform. But the same mechanism works perfectly for profit-based bidding. You fire a standard conversion at purchase time, then later update that conversion’s value with the true profit figure once all costs are calculated.
This is exactly how WootrackApp handles Google Ads profit signals for WooCommerce. It connects directly to your store, pulls COGS per product, calculates shipping and payment fees per order, applies VAT logic for EU stores, and sends the resulting profit value to Google Ads as an offline conversion. No manual exports. No spreadsheets. It runs automatically on every order.
How to Fix Performance Max Budget Waste with Profit Signals
- 1
Calculate your true break-even ROAS per product
Before changing anything in Google Ads, map out your real cost stack for your top 20 products. Include COGS, average shipping cost, payment processor fee (Stripe is 2.9% + €0.30, PayPal varies), and VAT if you sell to EU consumers. Your break-even ROAS is 1 divided by your net margin percentage. A 20% net margin means you need 500% ROAS just to break even on ad spend.
- 2
Set up profit tracking at the order level in WooCommerce
You need per-order profit data, not category averages. WootrackApp connects to WooCommerce and pulls COGS from your product cost fields, then layers in real shipping costs, payment gateway fees, and VAT per order. This gives you an accurate profit figure for every single transaction – the foundation for everything that follows.
- 3
Replace revenue conversion values with profit values in Google Ads
Create a new conversion action in Google Ads configured for offline conversion import. WootrackApp handles the upload automatically, sending Google the profit value for each order rather than the revenue value. Your Smart Bidding strategy now has the right signal to work with.
- 4
Label your products by POAS performance using A/C/X logic
Not all products deserve equal budget. WootrackApp’s A/C/X labeling system categorizes products as Winners (A), Borderline (C), or Losers (X) based on their POAS performance. These labels sync directly to your Performance Max and Shopping campaigns as custom labels, so Google knows which products to push hard and which to hold back.
- 5
Set POAS targets instead of ROAS targets
Once profit values are flowing into Google Ads, shift your target from ROAS to a POAS threshold. A POAS of 150% means you are making €1.50 in profit for every €1 spent on ads – a healthy, scalable position. WootrackApp’s smart budget management monitors POAS performance and scales spend on winners automatically while cutting losers.

Feeding Google Ads revenue signals and expecting profit outcomes is like navigating with the wrong map. You will arrive somewhere – just not where you wanted to go.
– Ecommerce Growth Strategist / Google Ads Specialist
Common Mistakes That Keep Performance Max Unprofitable
Even store owners who understand POAS conceptually make a few consistent mistakes when trying to fix their Performance Max campaigns. Here are the ones we see most often.
First: using average margins instead of per-product margins. If your store sells phone cases at 70% margin and phone chargers at 15% margin, blending those into a 40% average and building your ROAS target around that will get you burned. The chargers will eat budget and the cases will be underbid. Product-level cost data is non-negotiable.
Second: ignoring payment fees. Stripe, PayPal, Klarna, Afterpay – they all take a cut. On a €200 order, Stripe alone takes €6.10. That is real money. Multiply it across thousands of orders and it is a significant line item that changes your profitability math. WootrackApp pulls payment gateway fees automatically per transaction, so this never gets missed.
Third: setting a POAS target and never revisiting it. Your costs change. Supplier prices go up. Shipping rates shift. A product that was a strong Winner in Q1 might be Borderline by Q3. The A/C/X labeling system in WootrackApp recalculates product performance continuously, so your campaigns stay aligned with current reality – not last quarter’s numbers.
And fourth: running Performance Max without asset group segmentation by product profitability. If you throw all products into one asset group, Google’s AI cannot distinguish between your best and worst margin items. Separate asset groups for Winners versus the rest, with different POAS targets, gives the algorithm the structure it needs to do its job properly.
Frequently asked questions
Will switching from ROAS to POAS targets hurt my Performance Max performance short-term?
There is usually a learning period of 2-4 weeks as Google’s Smart Bidding recalibrates to the new conversion values. During this time, volume may dip slightly. But the campaigns that emerge from the learning phase are bidding on the right signal – profit – so the long-term outcome is significantly better. Do not panic and revert to ROAS targets during the adjustment window.
Does WootrackApp work with existing Performance Max campaigns or do I need to rebuild them?
WootrackApp integrates with your existing campaigns. It adds the offline conversion import layer on top of what you already have running. You do not need to tear down and rebuild. The A/C/X product labels sync to your existing custom label fields in your product feed, so the transition is additive rather than disruptive.
What if I do not have COGS entered for all my WooCommerce products?
WootrackApp can work with partial COGS data and flag products where cost data is missing. You can set a default margin assumption for uncategorized products while you fill in the gaps. That said, accurate COGS per product is the foundation of the whole system – the more complete your cost data, the more precisely Google can optimize.
How is WootrackApp different from just setting a higher ROAS target in Performance Max?
Setting a higher ROAS target still optimizes for revenue – just at a higher threshold. It does not account for the fact that two products with identical ROAS can have completely different profit margins. WootrackApp replaces revenue conversion values with actual profit values, so Google is fundamentally optimizing a different metric. Higher ROAS targets are a blunt instrument. Profit-based conversion values are surgical.
Can I see which specific products are profitable and which are draining budget?
Yes. WootrackApp includes a per-product profit dashboard that shows POAS, profit per unit, and ad spend allocation at the product level. You can see exactly which products are Winners generating strong returns, which are Borderline and need attention, and which are Losers that should be excluded from campaigns or repriced. This visibility is what makes the whole system actionable.
Does this approach work for EU stores that need to handle VAT in their profit calculations?
Absolutely. WootrackApp handles VAT deduction for EU stores automatically. Since VAT collected is not your revenue – it passes through to the tax authority – including it in your conversion values would inflate your apparent profit. WootrackApp strips VAT from the profit calculation before sending values to Google Ads, so your POAS numbers reflect actual money you keep.