Home·Blog·Performance Max ROAS 15.2: Why Scaling Was Still Too Early
Case insight·11 min read

Performance Max ROAS 15.2: Why Scaling Was Still Too Early

11 min read· ~2069 words· published July 31, 2026

A high Performance Max ROAS does not prove profitable new-customer acquisition. Before raising the budget, validate primary conversions, calls, brand versus non-brand demand, new versus returning customers, margin and conversion lag. In this anonymized audit ROAS 15.2 looked e...

Performance MaxGoogle AdsSmart BiddingGA4Merchant CenterROAS

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.

CampaignSpendConversionsValueROASTarget ROAS
Category AUAH 51,13625UAH 775,81315.23.7
Category BUAH 8,4199UAH 91,33110.94.7
All campaignsUAH 85,39645UAH 1,012,01011.9not 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.

Important: ROAS 15.2 is not a universal benchmark. It is the result of one anonymized account over one 90-day period. A budget decision depends on margin, target economics, seasonality, conversion volume and measurement quality.

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.

#AreaFindingDecision
F1Geo / complianceCategory B lacked exclusions for 16 occupied cities that were excluded in four other campaigns.Protect after confirmation
F2Measurementtest_purchase was still primary and had already converted.Fix
F3Phone leadsGA4 had 1,488 hover_phones and 814 form_start events versus roughly five Ads actions.Fix
F4PMax cannibalisationWithout brand exclusion, average ROAS mixed brand, remarketing and prospecting; new versus returning was not split.Test
F5Brand demandNo separate brand Search campaign existed despite about 5,000 brand searches per month.Protect and measure
F6PMax signalsBoth active groups in campaign B had zero search themes and zero audience signals.Fix
F7CreativesOne group was empty with ad_strength=POOR; the other was AVERAGE with a weak headline.Fix
F8AssetsCallouts, structured snippets, price and promotion assets were missing.Fix
F9FeedUA and RU SKU duplicates competed for impressions and budget; confirmed on five SKUs.Fix
F10Product wasteFour top-spend products used UAH 1,602 / 737 / 548 / 516 without conversions.Isolate and test
F11Geo efficiencyFive regions used about 10.6% of spend and produced zero web conversions.Watchlist, not an instant cut
F12Geo concentrationKyiv received 29% of spend while several regions with ROAS 27-48 were underfunded.Scale candidates after the gate
F13Budget / tROASActive campaigns exceeded target by 3-4x but did not spend the full budget.Check margin and F4
F14GA4Dev and spam referrals were present without an internal filter.Fix
F15AttributionAnother paid channel produced UAH 665,646 from 1,049 sessions and could influence Ads evaluation.Check incrementality
F16Merchant CenterOne product was disapproved; 2,968 offers were unknown because item-level diagnostics access was limited.Remove the access blocker
F17Connected TVAbout UAH 62 was spent without conversions.Monitor only
F18Funnel24,683 view_item events became only 123 add_to_cart events in 30 days; a phone or offline path was likely missing.Investigate
F19NamingCampaign 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?

SignalScaleWait
ConversionsPrimary contains only business outcomes; calls and leads are verified.Test actions or a large invisible lead path remain.
BrandBrand and non-brand demand are measured separately.PMax takes the brand and new versus returning is unknown.
EconomicsMargin, allowable CPA or profit ROAS is confirmed.Only revenue ROAS is available.
DataConversion lag is mature and the volume supports a decision.The campaign is young or the decision rests on one or two conversions.
CampaignNo critical gaps in signals, assets or feed.Empty groups, zero signals or Merchant problems remain.
BudgetThe 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

Want to know whether your PMax ROAS is ready for scale? Ask UPLIFY for a measurement-first Google Ads audit.

tags
#google ads #performance max #pmax #аудит