Short answer: how to check Performance Max before scaling
Do not treat ROAS 15.2 as a scaling instruction. First verify that the conversion column contains only business outcomes, that phone and form leads reach Ads and the CRM, and that brand, remarketing and prospecting can be read separately. Then confirm margin, conversion lag, feed quality and a controlled experiment. The technical fixes can be shipped in days; the clean evidence window still takes time.
- High ROAS is not the same as profitable new-customer acquisition.
- Check primary conversions, brand versus non-brand and new versus returning customers.
- Scale in steps only after clean data and a reversible test.
What the 90-day numbers showed
In the anonymized audit the account spent UAH 85,396 and recorded UAH 1,012,010 in web-conversion value over 90 days. Blended ROAS was 11.9. There were five Performance Max campaigns: two active and three paused.
| Campaign | Spend | Conversions | Value | ROAS | Target ROAS |
|---|---|---|---|---|---|
| Category A | UAH 51,136 | 25 | UAH 775,813 | 15.2 | 3.7 |
| Category B | UAH 8,419 | 9 | UAH 91,331 | 10.9 | 4.7 |
| All campaigns | UAH 85,396 | 45 | UAH 1,012,010 | 11.9 | not set |
Those figures looked like a ready-made argument for more budget. They were not. Revenue ROAS is not profit, and an average PMax number does not show how much incremental demand the campaign created. That requires margin, new versus returning customers, brand control and a complete conversion path.
Measurement gate first, budget second
The most important check was not in the campaign table. It was in the conversion settings. Google Ads treats primary actions as the actions in the Conversions column and uses them for bidding. Secondary actions remain observable in All conversions unless they are added to a custom goal. One incorrectly classified action can therefore change what Smart Bidding learns.
In this account the test action test_purchase was still primary and had already recorded a conversion in a new campaign. At the same time, the phone and lead path was almost invisible to Ads: GA4 showed 1,488 hover_phones and 814 form_start events over 30 days, while Google Ads had roughly five corresponding actions.
Web purchase reconciliation was much better. Google Ads showed UAH 1,012,010 in value and GA4 for google/cpc showed UAH 966,281. The 4.7% difference was below the audit's 15% internal threshold, so web purchases were a usable signal. The full funnel still needed a correction for undercounted calls.
Fix order: remove the test purchase from primary, add qualified calls and form submissions as secondary, connect them to CRM quality, and collect 2-3 weeks of clean data. Only after that should you change budget or tROAS.
Why brand demand can inflate the average ROAS
Both active PMax campaigns ran without a brand exclusion. There was no separate brand Search campaign either. Keyword Planner showed roughly 5,000 brand searches per month, so PMax could take already-formed demand together with remarketing and report it as one blended result.
This does not make every brand conversion bad. The problem is measurement: without a separate view you cannot see how much the campaign pays to defend the brand, how much it finds new buyers, or what non-brand ROAS looks like. New versus returning customers were also not separated, so the real new-customer CPA was unknown.
Google Ads supports brand exclusions in Performance Max. For this account the safe option was a controlled test: apply the exclusion and prepare a separate brand Search campaign that can be activated after coverage is checked. That is a reversible change with a rollback trigger, not a rule to apply blindly to every account.
The 19 findings that changed the decision
The audit was not a hunt for one bad setting. These 19 findings formed the decision. The numbers and meaning are kept from the anonymized source.
| # | Area | Finding | Decision |
|---|---|---|---|
| F1 | Geo / compliance | Category B lacked exclusions for 16 occupied cities that were excluded in four other campaigns. | Protect after confirmation |
| F2 | Measurement | test_purchase was still primary and had already converted. | Fix |
| F3 | Phone leads | GA4 had 1,488 hover_phones and 814 form_start events versus roughly five Ads actions. | Fix |
| F4 | PMax cannibalisation | Without brand exclusion, average ROAS mixed brand, remarketing and prospecting; new versus returning was not split. | Test |
| F5 | Brand demand | No separate brand Search campaign existed despite about 5,000 brand searches per month. | Protect and measure |
| F6 | PMax signals | Both active groups in campaign B had zero search themes and zero audience signals. | Fix |
| F7 | Creatives | One group was empty with ad_strength=POOR; the other was AVERAGE with a weak headline. | Fix |
| F8 | Assets | Callouts, structured snippets, price and promotion assets were missing. | Fix |
| F9 | Feed | UA and RU SKU duplicates competed for impressions and budget; confirmed on five SKUs. | Fix |
| F10 | Product waste | Four top-spend products used UAH 1,602 / 737 / 548 / 516 without conversions. | Isolate and test |
| F11 | Geo efficiency | Five regions used about 10.6% of spend and produced zero web conversions. | Watchlist, not an instant cut |
| F12 | Geo concentration | Kyiv received 29% of spend while several regions with ROAS 27-48 were underfunded. | Scale candidates after the gate |
| F13 | Budget / tROAS | Active campaigns exceeded target by 3-4x but did not spend the full budget. | Check margin and F4 |
| F14 | GA4 | Dev and spam referrals were present without an internal filter. | Fix |
| F15 | Attribution | Another paid channel produced UAH 665,646 from 1,049 sessions and could influence Ads evaluation. | Check incrementality |
| F16 | Merchant Center | One product was disapproved; 2,968 offers were unknown because item-level diagnostics access was limited. | Remove the access blocker |
| F17 | Connected TV | About UAH 62 was spent without conversions. | Monitor only |
| F18 | Funnel | 24,683 view_item events became only 123 add_to_cart events in 30 days; a phone or offline path was likely missing. | Investigate |
| F19 | Naming | Campaign and group names were inconsistent, included a typo and default RU names. | Fix |
Not every finding meant “change it now”. F17 was too small to justify intervention. F11 needed a watchlist, not a region shutdown: the sample was small and calls were undercounted. Those constraints are part of a senior audit.
Signals, creatives and feed: what held PMax back
The two active groups in campaign B had no search themes or audience signals. One asset group was empty, with no headlines or media and a POOR rating. The second was AVERAGE. Campaign-level callouts, structured snippets, price and promotion assets were also missing even though the store had verified offers that could be used without exaggerated claims.
UA and RU versions of the same SKU competed in the feed. On five SKUs one language version converted while the other spent without conversions. Four high-spend products became candidates for a low-priority listing group, not automatic exclusions. First restore visibility into phone leads.
Merchant Center showed one disapproved product. Another 2,968 offers were unknown because item-level diagnostics were unavailable. Product conclusions therefore stayed at feed level instead of pretending incomplete access was a final diagnosis.
Scale now or wait?
| Signal | Scale | Wait |
|---|---|---|
| Conversions | Primary contains only business outcomes; calls and leads are verified. | Test actions or a large invisible lead path remain. |
| Brand | Brand and non-brand demand are measured separately. | PMax takes the brand and new versus returning is unknown. |
| Economics | Margin, allowable CPA or profit ROAS is confirmed. | Only revenue ROAS is available. |
| Data | Conversion lag is mature and the volume supports a decision. | The campaign is young or the decision rests on one or two conversions. |
| Campaign | No critical gaps in signals, assets or feed. | Empty groups, zero signals or Merchant problems remain. |
| Budget | The campaign is budget-limited or a test proved capacity. | The limit is not being spent; a higher budget will not create demand by itself. |
A practical 90-day plan
Days 1-5: close measurement leaks
- Confirm and synchronise geo exclusions for the new campaign.
- Remove the test purchase from primary.
- Add calls and form leads as secondary, then connect them to CRM quality.
- Filter dev and spam referrals in GA4.
- Fix the disapproved product and obtain item-level Merchant diagnostics.
Week 2: separate the brand and give PMax useful signals
- Prepare a brand exclusion and a separate brand Search campaign as a controlled test.
- Add search themes and relevant audience signals to Category B groups.
- Fill the empty asset group and replace weak headlines.
- Add callouts, structured snippets, price and promotion assets based on approved claims.
- Unify campaign and group naming.
Weeks 3-5: collect a clean baseline
Do not change budget, tROAS and conversion goals at the same time. Let the system collect 2-3 weeks after measurement fixes. Track conversion lag, new-customer share, brand versus non-brand and call quality.
Weeks 6-10: run the experiment
The plan for this account used a PMax experiment with a 50/50 split. Each active campaign received around 8-9 conversions per month, so the expected window was 6-10 weeks per arm. Read the decision after 20-30 conversions per arm and by the result range, not one ROAS point. These thresholds were set for this audit, not presented as a universal Google requirement.
Weeks 10-13: clean and scale
After margin, clean signals and the experiment result are confirmed, isolate weak SKUs, decide on watchlist regions and move budget toward stable segments. Change budgets in 10-15% steps with a rollback trigger written down in advance.
Performance Max pre-scaling checklist
- Reconcile purchase value between Google Ads, GA4 and, when possible, the CRM.
- Review every conversion action and its primary or secondary role.
- Check calls, forms, offline sales and conversion lag.
- Separate brand, remarketing, new and returning customers.
- Calculate margin or profit ROAS, not revenue alone.
- Review search themes, audience signals, assets and asset groups.
- Inspect Merchant diagnostics, language SKU duplicates and product waste.
- Create one-variable experiments with a rollback trigger.
- Scale step by step only after enough clean data.
Frequently asked questions
Why can a high Performance Max ROAS be misleading?
PMax can combine new demand, your own brand and remarketing in one average. If those segments are not separated, the campaign looks more effective than its actual new-customer acquisition. Revenue ROAS also ignores margin, returns, offline sales and lead quality.
Should you always exclude your brand from PMax?
No. Brand exclusion is a measurement and control tool, not a ritual. The decision depends on account structure, brand Search coverage, goals and the risk of losing reach. In this account, strong brand demand and no separate brand campaign made a controlled test reasonable.
Which conversions should be primary?
Primary actions should represent the business outcome you want bidding to optimise for, such as a confirmed purchase or qualified lead. Micro-conversions, test actions and unverified calls are safer as secondary until quality is checked in the CRM.
Can the technical fixes be completed faster than 90 days?
Yes. Most fixes in this plan fit into the first 5-10 working days. Ninety days is the evidence window: it lets clean data mature, accounts for conversion lag and gives the experiment time to compare without changing several variables at once.
When is it safe to increase the budget?
When primary conversions are clean, phone and offline outcomes are not lost, brand versus non-brand and new versus returning customers can be read separately, margin supports the economics, and an experiment or stable cohort shows headroom. If a campaign is not spending its current limit, raising the limit alone may do nothing.
Methodology and limits
This is an anonymized read-only audit over 90 days. We checked 5/5 campaigns, 13/13 asset groups, all 23 regions plus Kyiv, 14 conversion actions and the top 30 products by spend. Sources were Google Ads, GA4, Merchant Center and Keyword Planner.
Budget conclusions were limited by missing margin, target CPA/ROAS, stock and promotion calendar data from the client. Merchant item-level diagnostics were incomplete because access was limited. GSC was not available in this audit. For that reason some recommendations are marked “test” or “watchlist”, not presented as proven optimisation.
See the Google Ads audit service if you want the same evidence packet for your account. For implementation, see Performance Max and Google Shopping management and the UPLIFY PMax benchmark.
Further reading
- Performance Max and Google Shopping for e-commerce
- Google Ads audit with evidence and priorities
- UPLIFY PMax UA e-commerce benchmark
- GEO for e-commerce
Want to know whether your PMax ROAS is ready for scale? Ask UPLIFY for a measurement-first Google Ads audit.