← Blog

Performance Max Cannibalizing Search: Detect and Fence It

Performance Max11 min readSearch Term Pro

For most of Performance Max's life you could not answer a basic question: is it bidding on the same searches my Search campaigns are built to win? The search terms were hidden behind a categories view that named themes rather than queries, so cannibalization was something you suspected from a conversion dip, not something you could see. That has changed. PMax search terms are now visible in the standard search terms report for all advertisers, which means you can finally put the two lists side by side and find the exact queries where Performance Max is intercepting traffic your own keywords should own.

This post is the workflow for doing that: measure the overlap, decide which campaign should own each contested query, and fence Performance Max off the ones that belong to Search. It is deliberately not another tour of the PMax negative-keyword controls — those are covered in the PMax channel negatives post. The point here is the diagnosis and the decision: knowing which queries to fence, and why your exact-match keywords did not already stop the bleed.

What Google's priority rule actually promises

The reassurance advertisers lean on is Google's serving rule: when a query exactly matches an eligible exact, phrase or broad match keyword in a Search campaign, that Search campaign is prioritised over Performance Max. Read quickly, that sounds like a guarantee that your keywords are safe. Read carefully, it is much narrower. It protects the case where the query is identical to a keyword that is active, in budget and servable at that instant. Everything else is out of scope.

For phrase and broad eligibility — where a query is close to your keyword but not identical — the rule hands the decision back to Ad Rank across the competing campaigns, which is bid, quality and the expected impact of your assets. A well-funded Performance Max campaign can out-rank a Search keyword in that contest. This is the same mechanism behind ordinary broad-match cannibalization between your own campaigns, only now one of the competitors is an automated campaign you cannot inspect keyword by keyword. The priority rule is real, but it fences a single exact query string and very little around it.

Measure the overlap before you touch anything

Start with evidence, not instinct. Pull the search terms report and isolate the Performance Max rows, then separately export the search terms your Search campaigns served on over the same date range. You now have two lists of real queries. The overlap — queries that appear in both — is the measurable form of cannibalization: searches you are paying for through PMax that your own keywords were designed to capture. Everything downstream is a decision about those shared queries.

Read the overlap by money, not by count. Independent studies make the reason clear: Optmyzr found PMax cannibalizing search keywords across all match types, including exact match, while Adalysis reported that 67% of PMax campaigns contained search terms overlapping Search keywords, yet the term-level overlap rate was only about 2.8%. Those two numbers are not a contradiction; they show that the overlap rate depends entirely on how you measure it, which is why a raw row count is the wrong lens. A single high-spend brand or high-intent query that PMax is winning matters more than a thousand one-click tail terms. Sort the shared queries by cost and conversions and work top down.

Decide which campaign should own each query

Overlap is not automatically a problem — it is a problem only when the wrong campaign is winning the query. So for each high-value shared query, ask which side should own it. The default answer for queries where you want deterministic, keyword-level control — brand terms, your top commercial head terms, anything where you tune bids and ad copy deliberately — is the Search campaign. PMax should own the queries it is good at finding: the adjacent, exploratory, lower-intent space your keyword list never covered. The decision is the same intent-and-control judgement behind choosing between broad, phrase and exact match, applied one level up — between an automated campaign and a keyword-controlled one.

Give weight to where the query actually converts. If a shared query converts materially better in Search than in PMax, that is a direct argument for fencing it to Search, because you are moving the traffic to the campaign that monetises it. If PMax converts it just as well and you had no keyword tuned for it anyway, leaving it with PMax may be the honest call — reclaiming a query you cannot serve better is just churn. Brand queries are the one near-automatic case: you almost always want brand in a controlled campaign, both for cost and for the same reasons you decide to negate or bid on branded and competitor terms deliberately rather than letting automation set the price.

Fence PMax off the queries Search should own

Fencing means stopping Performance Max from competing for a query without touching the Search campaign that should keep it. The tool for that is the account-level negative keyword: Performance Max respects negatives applied at the account level, so adding the query — or, better, the n-gram that captures a family of related queries — as an account-level negative removes it from PMax's eligible space while your Search campaign, which the account-level negative does not sit inside in the same blocking way, carries on serving. Prefer a pattern over a single string where you can, the way n-gram analysis finds the word that leaks across many queries, so one negative fences a whole cluster instead of one term.

For your own brand, use the Performance Max brand-exclusion list rather than a loose negative, because brand handling has its own controls and the exclusion list is the supported mechanism — the distinction is the point of brand exclusions versus negative keywords in PMax. Change one side of the fence at a time. Fencing is a deliberate reallocation of traffic, and if you move several high-value queries at once you will not be able to read which change moved your numbers. Fence a cluster, wait, read the result, then do the next one.

Confirm the fence held, then make it a cadence

A fence you do not verify is a fence you have to trust. Re-pull the Performance Max search terms a week after you add the negatives and confirm the fenced queries have dropped out of the PMax rows and stayed in your Search campaign's terms. If a fenced query is still showing up in PMax, your negative did not match it — usually a close variant or a phrasing the exact string missed — so widen the negative to the pattern rather than adding yet another single term. Watch the Search campaign at the same time to confirm it picked up the reclaimed traffic rather than the query simply going dark.

Then treat it as recurring work, not a cleanup. Performance Max keeps exploring query space, so a fenced query today tells you nothing about a new query it discovers next month. A monthly export-and-compare pass, read by cost, catches new overlap while it is small; tighten to fortnightly when PMax and Search budgets are large relative to each other, because the cost of the wrong campaign owning a high-value query scales with spend. Fold the check into your standing routine — the broader 2026 search hygiene audit playbook is where this lives alongside the rest of your monthly review.

For the mechanics of adding negatives to Performance Max once you have decided what to fence, see the PMax search terms report and channel negatives. For the brand-specific case — why an exclusion list beats a negative for your own brand — see brand exclusions versus negative keywords. And for the general pattern of one campaign eating another's queries through broad matching, see negative fencing against broad-match cannibalization.

Frequently asked questions

Does Performance Max really cannibalize my Search campaigns?

It can, and now you can measure whether it does for you specifically. Google's serving rule is that when a query exactly matches an eligible exact, phrase or broad keyword in a Search campaign, that Search campaign is prioritised over Performance Max. That rule is why many practitioners assume their Search keywords are safe. But it only covers the clean exact-match case; for phrase and broad eligibility, Ad Rank — bid, quality, expected impact of assets — decides which campaign serves, and PMax can win. Independent overlap studies find PMax serving on queries that Search keywords also target, including against exact-match keywords in some accounts. The honest answer is that it depends on your account, and the only way to know is to pull the now-visible PMax search terms and compare them against the queries your Search keywords already bid on.

How do I find which queries PMax is taking from Search?

Open the search terms report and get the Performance Max rows, which are now visible to all advertisers rather than hidden in a separate categories view. Export the PMax search terms and, separately, the search terms your Search campaigns served on over the same window. Compare the two lists for queries that appear in both. Those shared queries are your overlap: searches you are paying for through PMax that your own Search keywords were built to capture. Read the overlap by cost and conversions, not by row count — a handful of high-spend brand or high-intent queries matters far more than a long tail of one-click terms. The queries where Search converts better, or where you simply want deterministic keyword control, are the ones to fence off PMax.

How do I stop PMax from serving on a query my Search campaign should own?

Use account-level negative keywords and brand exclusions, because Performance Max respects negatives applied at the account level and, for brand terms, a dedicated brand-exclusion list. Add the query (or the n-gram that captures a family of queries) as an account-level negative so PMax stops competing for it, while your Search campaign — which the negative does not sit inside — keeps serving. For your own brand, apply the PMax brand-exclusion list rather than a loose negative, since brand handling has its own controls. Then confirm the fence held by re-pulling the PMax search terms a week later: the fenced queries should drop out of the PMax rows and stay in your Search campaign's terms. Fencing is a deliberate reallocation, so change one side at a time and watch where the traffic and conversions move.

Why doesn't my exact-match Search keyword stop PMax automatically?

Because the priority rule is narrower than it sounds. Google prioritises a Search campaign over PMax only when a query is identical to an eligible keyword — and eligibility means the keyword is active, the campaign is in budget, and the ad is servable at that moment. For phrase and broad matching, where the query is close but not identical, the decision falls back to Ad Rank across the competing campaigns, and a well-funded PMax campaign can out-rank a Search keyword. Query variants, spelling differences and close variants widen the gap, because a variant may match your Search keyword loosely while matching PMax's broader eligibility just as well. So an exact-match keyword protects the exact query string and little around it. Anything adjacent is still contestable, which is exactly where overlap shows up.

How often should I run a cannibalization check?

Monthly for most accounts, and after any structural change — a new PMax campaign, a budget shift between PMax and Search, or a forced AI Max migration that reshapes matching. Overlap is not a one-time cleanup because PMax keeps exploring query space, so a query you fenced today has no bearing on a new query it discovers next month. A monthly export-and-compare pass, read by cost, catches new overlap while it is still small. If PMax and Search budgets are large relative to each other, tighten the cadence to fortnightly, since the cost of letting the wrong campaign own high-value queries scales with spend. The check is cheap — two exports and a lookup for shared queries — and it is the only way to keep the boundary between your automated and keyword-controlled traffic where you decided it should be.