Why is my campaign cannibalizing impressions?

Alexandre Airvault
January 13, 2026

What “impression cannibalization” really means in Google Ads

When advertisers say a campaign is “cannibalizing impressions,” they usually mean one campaign is absorbing traffic they expected another campaign to get. The most important thing to understand is that, inside a single Google Ads account targeting the same domain, your campaigns typically don’t “bid against each other” in the way two different advertisers do. Instead, the system chooses one eligible keyword (or one eligible campaign type) to enter the auction for that search, based on prioritization rules, relevance, eligibility, and Ad Rank.

So “cannibalization” is rarely a bug. It’s usually a signal that your account has overlapping targeting (keywords, search themes, Dynamic Search Ads, Performance Max, Shopping products, locations, audiences, etc.), and the system is resolving that overlap in a way you didn’t intend.

Common symptoms you’ll notice

You’ll often see this as impressions and clicks shifting week-to-week between campaigns, brand traffic showing up in a non-brand campaign, one ad group taking most impressions while “similar” ad groups fade, or Performance Max suddenly showing queries you assumed were “owned” by Search. In many cases, nothing is broken—your structure just isn’t telling the system clearly which campaign should match which intent.

Why your campaigns are cannibalizing impressions (the real causes)

1) Overlapping keywords: only one can trigger, and Google must pick a winner

If multiple keywords (across ad groups and campaigns) are eligible to match the same search term, only one of them can trigger an ad for that search. The system applies a prioritization process that heavily favors “identical” matching first (including spell-corrected terms), then uses relevance and Ad Rank to decide which ad group/campaign gets the impression.

This is why adding “every match type in every campaign” is a classic way to create the impression of cannibalization. You haven’t expanded coverage—you’ve created overlap, and overlap forces a selection.

2) “Identical to the search term” prioritization (and the nuance that trips people up)

When a user’s search is identical to an eligible keyword, that keyword gets preference in a predictable way. But advertisers get caught by two nuances.

First, “identical” includes spell-corrections, but it does not automatically include things like plurals or synonyms. Second, if you’re expecting a “more specific” ad group to always win, remember that when the search isn’t identical to a keyword, the system leans on relevance (meaning/intent) and then Ad Rank, which can cause a different ad group to consistently take the impression—even if both seem “close enough” to you.

3) AI-based prioritization + Ad Rank: the most relevant ad group may not be the one you expected

When the query isn’t identical to a keyword, the system can narrow down to the most relevant ad groups and then pick the winner by Ad Rank. In practical terms, your account structure (thematic grouping), landing pages, and creative quality are part of what shapes which ad group is considered “most relevant.”

This is where messy ad groups (too many mixed intents in one ad group, or multiple ad groups targeting the same intent with slightly different wording) create confusion. The system may consistently route impressions to the ad group it deems most relevant—even if you intended a different “bucket” for reporting or budgeting.

4) Budget and eligibility exceptions: the “right” campaign can lose even when it has priority

Even when prioritization says Campaign A should win, it can lose if it isn’t eligible at the moment of the auction. The most common reasons are budget restriction (including “Limited by budget”), low search volume keywords that are temporarily inactive, targeting mismatches (location, language, audience restrictions, exclusions), or creatives/landing pages being disapproved or otherwise not eligible.

This often looks like cannibalization, but it’s really “the preferred option wasn’t available,” so the system served the next-best eligible option.

5) Performance Max vs Search: Search wins only on truly “identical” eligible queries

If you run Performance Max alongside Search, overlap is expected. The key behavioral rule is that Search is prioritized when the user’s query is identical to an eligible Search keyword (any match type). When the query is not identical to an eligible Search keyword, the system can select whichever campaign/ad has the highest Ad Rank—meaning Performance Max can win impressions on a lot of “nearby” intent.

This is one of the biggest reasons advertisers feel like Performance Max is “stealing” impressions. In reality, it’s doing what it’s designed to do: expand into incremental queries and inventory, while still respecting eligible identical keyword coverage in Search.

6) Performance Max vs Shopping: product overlap can shift spend and impressions fast

If you have product feed-based campaigns and you introduce Performance Max for the same products in the same account, you can see spend and impressions decrease in your existing Shopping campaigns as Performance Max ramps up. This can happen even if Performance Max has a lower budget, because the system is prioritizing how those products are served across eligible surfaces.

If your reporting depends on separate Shopping campaigns, this can feel like cannibalization; strategically, it’s usually a signal you should simplify: decide which campaign type is meant to be the “primary owner” of those products and structure accordingly.

7) Negative keywords and brand controls can redirect impressions (sometimes unintentionally)

Negatives are supposed to sculpt traffic, but they’re also a common self-inflicted cause of cannibalization. If Campaign A blocks queries (or a portion of intent) through negatives, Campaign B becomes the only eligible place that traffic can go.

Two advanced gotchas matter here. First, account-level negative keywords apply broadly across Search and Shopping inventory in multiple campaign types, which can create account-wide shifts if you’re not careful. Second, negative keywords don’t automatically match close variants/expansions the same way positive keywords can—so you may think you “blocked it,” but you only blocked a specific variant, which leads to inconsistent routing.

For brand traffic specifically, brand exclusions are often the cleaner tool than trying to build massive negative keyword sets, especially in highly automated campaign types.

8) Shared budgets can make “who gets impressions” feel unpredictable

Shared budgets don’t directly change auction eligibility rules, but they absolutely change which campaigns have headroom at different times of day. If Campaign A is more aggressive (higher Ad Rank, broader reach, stronger conversion rate, or just more eligible volume), it can consume more of the shared budget earlier, leaving Campaign B constrained later—creating a daily pattern that feels like cannibalization.

9) Brand exclusions for Search changed starting May 27, 2025 (AI Max dependency)

If you use brand exclusions in Search, the workflow changed starting May 27, 2025: brand exclusions for Search began upgrading into AI Max. Practically, that means if you’re trying to manage brand vs non-brand splitting and your exclusions/settings aren’t where you expect them, you may be looking in the wrong place (or you may need AI Max enabled to create new brand lists in certain setups). This doesn’t change Performance Max behavior the same way, but it can absolutely affect how you isolate brand demand inside Search campaigns.

How to diagnose and fix impression cannibalization (a systematic playbook)

Step 1: Prove it’s overlap (not demand change)

Before changing structure, confirm you’re dealing with internal overlap rather than market demand shifting. Use your search terms reporting to compare which queries each campaign is actually serving, and whether the “missing” impressions moved to a different campaign or disappeared altogether.

Step 2: Run this fast diagnostic checklist

  • Check campaign status and eligibility: Look for “Limited by budget,” disapproved ads/assets, ended schedules, location/language mismatches, or overly restrictive audience settings.
  • Check for duplicate/overlapping keywords: Especially the same “core” keyword repeated across multiple campaigns and ad groups with different match types.
  • Check Performance Max overlap: If Performance Max is live, assume it can win non-identical queries unless Search has an identical eligible keyword.
  • Audit negatives (including account-level negatives): Confirm you didn’t block one campaign and inadvertently force traffic into another.
  • Check shared budgets: If campaigns share a budget, confirm whether one campaign is draining headroom and causing the other to lose impression share later in the day.

Step 3: Decide what you want: “clean attribution” vs “max performance”

Many cannibalization problems are really reporting problems. If your top goal is clean channel segmentation (brand vs non-brand, product line A vs product line B, location vs location), you’ll need tighter structure and stronger traffic sculpting. If your top goal is maximum conversions at the account level, you’ll often accept some overlap and focus on making sure the best campaign wins consistently (rather than trying to force equal distribution).

Step 4: Fix overlap the right way (without over-engineering)

Start by simplifying your keyword architecture. You generally don’t need the same keyword repeated across multiple match types and multiple campaigns “for coverage.” Broader match types already capture narrower behavior, and duplicating similar keywords often just forces the system to pick one based on Ad Rank. Consolidate where possible, and keep ad groups tightly thematic so relevance signals are clear.

Use negatives surgically, not emotionally. If you must split intent, use negatives to create clean lanes (for example, excluding brand terms from non-brand). But avoid building huge negative lists to micromanage automation—especially in Performance Max—because overly restrictive negatives can reduce reach and starve learning. For brand shaping, consider brand exclusions/settings where appropriate rather than trying to block every misspelling and variant manually.

When Performance Max is involved, separate by goal, not by wishful thinking. If you’re running Performance Max for incremental reach plus Search for controlled keyword coverage, keep Search strong on the exact “must-win” queries (with eligibility intact: budget, approvals, targeting). Then let Performance Max do its job on the non-identical expansion. If you’re seeing Performance Max take traffic you truly want in Search, it’s often because your Search keyword isn’t identical to the query (or it’s not eligible when the auction happens).

Step 5: Stabilize budgets so the intended campaign can actually win

If a campaign is budget-restricted, it may not reliably claim impressions even when it has prioritization preference. Fixing “Limited by budget” (or simply giving the campaign more headroom) often “solves cannibalization” overnight because the campaign becomes eligible more consistently.

If you use shared budgets, be intentional: shared budgets can improve overall budget utilization, but they can also make intra-day impression distribution feel volatile. If stable separation matters, separate the budgets.

Step 6: For Shopping/feed advertisers: don’t let product overlap create accidental competition

If Performance Max and Shopping campaigns target the same products, expect impression and spend shifts. The cleanest fixes are usually structural: consolidate products into the campaign type you want to be primary, avoid duplicated product targeting across multiple asset groups, and ensure budgets are aligned during transitions so you don’t accidentally choke the campaign that’s meant to carry performance.

Step 7: Use the newer transparency features to validate changes (especially for Performance Max)

For Performance Max, use search impact and search term visibility to understand what queries are coming from keywordless matching versus your provided search themes, and whether your search themes are adding incremental traffic. This is the fastest way to confirm whether “cannibalization” is actually overlap on core demand, or incremental expansion you should keep.

Let AI handle
the Google Ads grunt work

Try now for free
Section What’s happening Why it feels like “cannibalization” Key mechanics in Google Ads How to diagnose Recommended fixes / actions Relevant Google Ads docs
What “impression cannibalization” really is One campaign or ad group seems to “steal” impressions and clicks that you expected another campaign to get. Impressions shift between campaigns, brand traffic shows in non‑brand, or one ad group dominates while “similar” ones fade. Within one account for the same domain, campaigns don’t truly bid against each other. Google selects a single eligible keyword/campaign based on prioritization rules, relevance, eligibility, and Ad Rank. Look at impression and click trends by campaign/ad group, and compare which search terms each is actually serving. Think of it as overlapping targeting the system is resolving, not a bug. The solution is to clarify “who should own which intent” in your structure. Ad group and asset group prioritisation
Keyword matching options
1) Overlapping keywords Multiple keywords across campaigns/ad groups can all match the same search term. You see one campaign/ad group getting the bulk of impressions while others with “the same” keywords barely serve. Only one keyword can enter the auction per search. Google prioritizes identical matches first, then uses relevance and Ad Rank to decide which keyword/ad group wins. Use the duplicate/overlapping keyword views or export keywords and sort by text/match type to find repeated “core” terms across campaigns. Consolidate overlapping keywords, avoid having every match type in every campaign, and keep tightly themed ad groups so the “best” keyword is unambiguous. Keyword matching options
Ad group prioritisation
2) “Identical to the search term” prioritization Queries that are identical (or spell‑corrected identical) to a keyword are given preference. A “less specific” or unexpected ad group wins impressions when the query doesn’t exactly match your more granular keyword. “Identical” includes spell corrections but not necessarily plurals or synonyms. When there’s no identical match, Google falls back to meaning/intent relevance and Ad Rank, which may favor a different ad group than you’d expect. Filter search terms that exactly match your keywords vs those that are variants. Compare which ad groups/campaigns are serving for each bucket. Make sure critical queries exist as explicit keywords in the ad group you want to win, and align ad copy and landing pages so that ad group is clearly the most relevant. Keyword matching options
3) AI‑based relevance + Ad Rank For non‑identical queries, Google narrows to the most relevant ad groups and then chooses by Ad Rank. A “catch‑all” or messy ad group can soak up impressions you intended for more specialized ad groups. Account structure, landing page content, and ad quality affect which ad group is deemed “most relevant”. Ad Rank then decides the winner among eligible options. Review search terms by ad group theme. If very similar intent is split across multiple ad groups, the system may be forced to pick one repeatedly. Consolidate overlapping themes into fewer, clearer ad groups. Improve relevance (keywords in ads and landing pages) in the ad group you want to own that intent. Ad group prioritisation
4) Budget & eligibility exceptions The “right” campaign sometimes doesn’t enter the auction. Another campaign appears to cannibalize impressions whenever the intended campaign is constrained or ineligible. If a campaign/ad group/keyword is ineligible (limited by budget, low search volume, targeting mismatch, disapproved ads or landing pages), another eligible entity can step in and serve instead. Check campaign and keyword status, including “Limited by budget”, low search volume, disapprovals, and location/language/audience settings. Fix eligibility issues, increase or stabilize budgets for priority campaigns, and avoid letting shared budgets starve the campaigns you want to win. Keyword matching options (eligibility examples)
Bidding and budget overview
5) Performance Max vs Search Performance Max appears to “steal” Search impressions. You see queries in Performance Max that you thought were “owned” by Search campaigns. If a user’s query is identical to an eligible Search keyword (any match type), the Search campaign is prioritized. If not identical, whichever campaign or ad has the highest Ad Rank can serve, so Performance Max can win a lot of “nearby” intent. Compare queries from Search vs Performance Max using search term insights and the search terms report to see where overlap occurs. Ensure must‑win queries exist as explicit, eligible Search keywords. Let Performance Max handle non‑identical expansion. If overlap is still undesirable, adjust budgets, bids, or use brand controls where appropriate. Performance Max campaigns
Keyword matching options
6) Performance Max vs Shopping / product overlap Launching Performance Max for the same products causes Shopping campaigns to lose impressions and spend. It looks like Performance Max is cannibalizing Shopping, especially during ramp‑up. For feed‑based campaigns, Google optimizes how products are served across eligible surfaces and campaigns. When both Performance Max and Shopping can show the same products, traffic can quickly shift toward Performance Max. Segment performance by campaign type and product or product group. Look for products appearing in both Shopping and Performance Max. Decide which campaign type should be the primary owner of each product set, then consolidate and align budgets so the chosen campaign has enough headroom. Performance Max campaigns
7) Negative keywords & brand controls Negatives or brand settings unintentionally redirect traffic between campaigns. When Campaign A blocks certain queries, Campaign B becomes the only eligible destination, so impressions appear to be “stolen.” Campaign‑, account‑, and brand‑level controls shape which queries are eligible. Account‑level negative keywords apply across Search and Shopping. Brand exclusions and inclusions affect which brand traffic a campaign can serve. Audit campaign‑level and account‑level negative keywords, and review brand settings to see which queries are being blocked or allowed for each campaign. Use negatives surgically to create clean lanes (for example, excluding brand from non‑brand). Prefer brand exclusions or inclusions for brand shaping instead of huge negative lists, especially in automated campaigns. About negative keywords
Account‑level negative keywords
Brand settings for Search and Performance Max
8) Shared budgets Multiple campaigns draw from one shared budget. More aggressive or higher‑volume campaigns can consume the shared budget earlier in the day, leaving others constrained and appearing “cannibalized.” Shared budgets don’t change auction rules, but they affect which campaigns have budget headroom at different times, indirectly shaping impression distribution. Compare intraday impression share and cost patterns for campaigns in the same shared budget. Check for “Limited by budget” spikes later in the day. If you need stable separation, break out individual budgets. If you keep a shared budget, size it to support the intended mix and monitor which campaigns consistently consume the lion’s share. Bidding and budgets overview
9) Brand exclusions changes (Search) Brand exclusions workflow for Search campaigns is evolving. If you’re managing brand vs non‑brand splits, you may find settings moved or tied to AI‑based features, which can change how brand traffic is isolated. Brand lists and exclusions for Search and Performance Max live in the brand settings UI. They can interact with existing keyword and negative‑keyword setups. Review your brand lists and brand exclusions in brand settings, especially if you’re relying on them to isolate brand traffic. Confirm that the brand lists and exclusions align with your intended structure (for example, brand‑only vs non‑brand campaigns) and adjust instead of relying solely on massive negative lists. Brand settings for Search and Performance Max
Step 1: Prove it’s overlap, not demand change First confirm whether lost impressions moved within your account or vanished due to market shifts. Without this step, you might misdiagnose a demand drop as internal cannibalization. Search term reporting and insights show which queries each campaign/ad group is handling over time. Compare date ranges in the search terms report and in search terms insights to see if queries shifted from Campaign A to B or simply decreased overall. If queries disappeared altogether, it’s likely demand or competition changes. If they moved between campaigns, continue with the structural and control‑based fixes below. Search terms report
Search terms insights
Step 2–7: Systematic fix playbook A structured process to resolve cannibalization without over‑engineering. Random tweaks often just move the problem around instead of clarifying ownership of intent. Combines eligibility checks, keyword structure, negatives/brand controls, campaign‑type roles, budgets, Shopping/PMax setup, and transparency tools.
  • Run a fast diagnostic: statuses, overlapping keywords, Performance Max overlap, negatives (including account‑level), and shared budgets.
  • Decide whether you care more about clean attribution or maximum total performance.
  • Simplify keyword architecture; avoid duplicating similar keywords across many campaigns/match types.
  • Use negatives and brand exclusions surgically to create clear lanes.
  • Define roles: Search for must‑win exact intent, Performance Max for incremental reach.
  • Stabilize and separate budgets where you need predictable impression ownership.
  • In Shopping/feed setups, avoid overlapping product targeting between Shopping and Performance Max.
  • Use Performance Max transparency features (search impact, search themes, search terms) to validate that changes reduced unwanted overlap rather than incremental reach.
Performance Max campaigns
About negative keywords
Brand settings
Keyword matching options
Search terms insights

If it feels like one Google Ads campaign is “cannibalizing” another’s impressions, it’s usually not because your campaigns are bidding against each other, but because Google is resolving overlapping eligibility: multiple keywords or campaign types can match the same query, and the system will pick a single winner based on prioritization (including “identical to the search term” matching), relevance signals, and Ad Rank—while budget limits, disapprovals, shared budgets, negatives, and brand controls can quietly make the campaign you expected ineligible so another one serves instead (and with Performance Max, near-identical intent can also shift depending on Ad Rank when there isn’t an exact eligible Search keyword). If you want a faster way to spot where overlap is coming from and what to adjust—keywords, negatives/brand settings, structure, or budget headroom—Blobr plugs into your Google Ads and runs specialized AI agents to surface concrete fixes, like a Negative Keywords Brainstormer to create clean lanes between campaigns and reduce unintended query overlap, so you can clarify “who owns which intent” without endless manual audits.

What “impression cannibalization” really means in Google Ads

When advertisers say a campaign is “cannibalizing impressions,” they usually mean one campaign is absorbing traffic they expected another campaign to get. The most important thing to understand is that, inside a single Google Ads account targeting the same domain, your campaigns typically don’t “bid against each other” in the way two different advertisers do. Instead, the system chooses one eligible keyword (or one eligible campaign type) to enter the auction for that search, based on prioritization rules, relevance, eligibility, and Ad Rank.

So “cannibalization” is rarely a bug. It’s usually a signal that your account has overlapping targeting (keywords, search themes, Dynamic Search Ads, Performance Max, Shopping products, locations, audiences, etc.), and the system is resolving that overlap in a way you didn’t intend.

Common symptoms you’ll notice

You’ll often see this as impressions and clicks shifting week-to-week between campaigns, brand traffic showing up in a non-brand campaign, one ad group taking most impressions while “similar” ad groups fade, or Performance Max suddenly showing queries you assumed were “owned” by Search. In many cases, nothing is broken—your structure just isn’t telling the system clearly which campaign should match which intent.

Why your campaigns are cannibalizing impressions (the real causes)

1) Overlapping keywords: only one can trigger, and Google must pick a winner

If multiple keywords (across ad groups and campaigns) are eligible to match the same search term, only one of them can trigger an ad for that search. The system applies a prioritization process that heavily favors “identical” matching first (including spell-corrected terms), then uses relevance and Ad Rank to decide which ad group/campaign gets the impression.

This is why adding “every match type in every campaign” is a classic way to create the impression of cannibalization. You haven’t expanded coverage—you’ve created overlap, and overlap forces a selection.

2) “Identical to the search term” prioritization (and the nuance that trips people up)

When a user’s search is identical to an eligible keyword, that keyword gets preference in a predictable way. But advertisers get caught by two nuances.

First, “identical” includes spell-corrections, but it does not automatically include things like plurals or synonyms. Second, if you’re expecting a “more specific” ad group to always win, remember that when the search isn’t identical to a keyword, the system leans on relevance (meaning/intent) and then Ad Rank, which can cause a different ad group to consistently take the impression—even if both seem “close enough” to you.

3) AI-based prioritization + Ad Rank: the most relevant ad group may not be the one you expected

When the query isn’t identical to a keyword, the system can narrow down to the most relevant ad groups and then pick the winner by Ad Rank. In practical terms, your account structure (thematic grouping), landing pages, and creative quality are part of what shapes which ad group is considered “most relevant.”

This is where messy ad groups (too many mixed intents in one ad group, or multiple ad groups targeting the same intent with slightly different wording) create confusion. The system may consistently route impressions to the ad group it deems most relevant—even if you intended a different “bucket” for reporting or budgeting.

4) Budget and eligibility exceptions: the “right” campaign can lose even when it has priority

Even when prioritization says Campaign A should win, it can lose if it isn’t eligible at the moment of the auction. The most common reasons are budget restriction (including “Limited by budget”), low search volume keywords that are temporarily inactive, targeting mismatches (location, language, audience restrictions, exclusions), or creatives/landing pages being disapproved or otherwise not eligible.

This often looks like cannibalization, but it’s really “the preferred option wasn’t available,” so the system served the next-best eligible option.

5) Performance Max vs Search: Search wins only on truly “identical” eligible queries

If you run Performance Max alongside Search, overlap is expected. The key behavioral rule is that Search is prioritized when the user’s query is identical to an eligible Search keyword (any match type). When the query is not identical to an eligible Search keyword, the system can select whichever campaign/ad has the highest Ad Rank—meaning Performance Max can win impressions on a lot of “nearby” intent.

This is one of the biggest reasons advertisers feel like Performance Max is “stealing” impressions. In reality, it’s doing what it’s designed to do: expand into incremental queries and inventory, while still respecting eligible identical keyword coverage in Search.

6) Performance Max vs Shopping: product overlap can shift spend and impressions fast

If you have product feed-based campaigns and you introduce Performance Max for the same products in the same account, you can see spend and impressions decrease in your existing Shopping campaigns as Performance Max ramps up. This can happen even if Performance Max has a lower budget, because the system is prioritizing how those products are served across eligible surfaces.

If your reporting depends on separate Shopping campaigns, this can feel like cannibalization; strategically, it’s usually a signal you should simplify: decide which campaign type is meant to be the “primary owner” of those products and structure accordingly.

7) Negative keywords and brand controls can redirect impressions (sometimes unintentionally)

Negatives are supposed to sculpt traffic, but they’re also a common self-inflicted cause of cannibalization. If Campaign A blocks queries (or a portion of intent) through negatives, Campaign B becomes the only eligible place that traffic can go.

Two advanced gotchas matter here. First, account-level negative keywords apply broadly across Search and Shopping inventory in multiple campaign types, which can create account-wide shifts if you’re not careful. Second, negative keywords don’t automatically match close variants/expansions the same way positive keywords can—so you may think you “blocked it,” but you only blocked a specific variant, which leads to inconsistent routing.

For brand traffic specifically, brand exclusions are often the cleaner tool than trying to build massive negative keyword sets, especially in highly automated campaign types.

8) Shared budgets can make “who gets impressions” feel unpredictable

Shared budgets don’t directly change auction eligibility rules, but they absolutely change which campaigns have headroom at different times of day. If Campaign A is more aggressive (higher Ad Rank, broader reach, stronger conversion rate, or just more eligible volume), it can consume more of the shared budget earlier, leaving Campaign B constrained later—creating a daily pattern that feels like cannibalization.

9) Brand exclusions for Search changed starting May 27, 2025 (AI Max dependency)

If you use brand exclusions in Search, the workflow changed starting May 27, 2025: brand exclusions for Search began upgrading into AI Max. Practically, that means if you’re trying to manage brand vs non-brand splitting and your exclusions/settings aren’t where you expect them, you may be looking in the wrong place (or you may need AI Max enabled to create new brand lists in certain setups). This doesn’t change Performance Max behavior the same way, but it can absolutely affect how you isolate brand demand inside Search campaigns.

How to diagnose and fix impression cannibalization (a systematic playbook)

Step 1: Prove it’s overlap (not demand change)

Before changing structure, confirm you’re dealing with internal overlap rather than market demand shifting. Use your search terms reporting to compare which queries each campaign is actually serving, and whether the “missing” impressions moved to a different campaign or disappeared altogether.

Step 2: Run this fast diagnostic checklist

  • Check campaign status and eligibility: Look for “Limited by budget,” disapproved ads/assets, ended schedules, location/language mismatches, or overly restrictive audience settings.
  • Check for duplicate/overlapping keywords: Especially the same “core” keyword repeated across multiple campaigns and ad groups with different match types.
  • Check Performance Max overlap: If Performance Max is live, assume it can win non-identical queries unless Search has an identical eligible keyword.
  • Audit negatives (including account-level negatives): Confirm you didn’t block one campaign and inadvertently force traffic into another.
  • Check shared budgets: If campaigns share a budget, confirm whether one campaign is draining headroom and causing the other to lose impression share later in the day.

Step 3: Decide what you want: “clean attribution” vs “max performance”

Many cannibalization problems are really reporting problems. If your top goal is clean channel segmentation (brand vs non-brand, product line A vs product line B, location vs location), you’ll need tighter structure and stronger traffic sculpting. If your top goal is maximum conversions at the account level, you’ll often accept some overlap and focus on making sure the best campaign wins consistently (rather than trying to force equal distribution).

Step 4: Fix overlap the right way (without over-engineering)

Start by simplifying your keyword architecture. You generally don’t need the same keyword repeated across multiple match types and multiple campaigns “for coverage.” Broader match types already capture narrower behavior, and duplicating similar keywords often just forces the system to pick one based on Ad Rank. Consolidate where possible, and keep ad groups tightly thematic so relevance signals are clear.

Use negatives surgically, not emotionally. If you must split intent, use negatives to create clean lanes (for example, excluding brand terms from non-brand). But avoid building huge negative lists to micromanage automation—especially in Performance Max—because overly restrictive negatives can reduce reach and starve learning. For brand shaping, consider brand exclusions/settings where appropriate rather than trying to block every misspelling and variant manually.

When Performance Max is involved, separate by goal, not by wishful thinking. If you’re running Performance Max for incremental reach plus Search for controlled keyword coverage, keep Search strong on the exact “must-win” queries (with eligibility intact: budget, approvals, targeting). Then let Performance Max do its job on the non-identical expansion. If you’re seeing Performance Max take traffic you truly want in Search, it’s often because your Search keyword isn’t identical to the query (or it’s not eligible when the auction happens).

Step 5: Stabilize budgets so the intended campaign can actually win

If a campaign is budget-restricted, it may not reliably claim impressions even when it has prioritization preference. Fixing “Limited by budget” (or simply giving the campaign more headroom) often “solves cannibalization” overnight because the campaign becomes eligible more consistently.

If you use shared budgets, be intentional: shared budgets can improve overall budget utilization, but they can also make intra-day impression distribution feel volatile. If stable separation matters, separate the budgets.

Step 6: For Shopping/feed advertisers: don’t let product overlap create accidental competition

If Performance Max and Shopping campaigns target the same products, expect impression and spend shifts. The cleanest fixes are usually structural: consolidate products into the campaign type you want to be primary, avoid duplicated product targeting across multiple asset groups, and ensure budgets are aligned during transitions so you don’t accidentally choke the campaign that’s meant to carry performance.

Step 7: Use the newer transparency features to validate changes (especially for Performance Max)

For Performance Max, use search impact and search term visibility to understand what queries are coming from keywordless matching versus your provided search themes, and whether your search themes are adding incremental traffic. This is the fastest way to confirm whether “cannibalization” is actually overlap on core demand, or incremental expansion you should keep.