Cannibalization inside one account is easy to miss because both sides look like your brand. Two ad groups, or two campaigns, match the same query. You pay whichever auction Google assigns, the landing page flips between a collection and a product, and the reporting attributes the order to whichever structure happened to serve. Nothing in the dashboard says "you competed with yourself." The cost shows up as a higher CPC and an ad group you cannot explain.
The guard is simple to say and tedious to do by hand across a large catalog: a phrase with no volume does not get a slot, and a phrase already covered by a shorter keyword in the account does not get its own bid.
What "already covered" means
If an Exact or Phrase keyword for "linen duvet cover" is live, you do not also need "linen duvet cover king" in a second ad group unless you have volume for the longer query, a page for the king size, and a reason to send that shopper somewhere more specific. Sometimes you do. The longer query can be the better landing page. The failure is adding it by default in both places so both ad groups are eligible.
Use one owner per query theme. The owner is the ad group whose page is the best answer. Other ad groups get that phrase as a negative if their keywords would otherwise overlap. This is the same discipline as keeping brand queries in the brand campaign only, applied to product language.
Zero-volume terms are not a harmless bit of coverage. They clutter the 150-keyword cap and they invite close-variant matching you did not intend. If Keyword Planner cannot show demand for the phrase on its own, it should not occupy a slot. Measure look-alikes separately first, using the spelling and plural split, so you do not delete a real query just because it was merged into a famous one.
A concrete overlap to look for
Consider a hypothetical cookware account. One ad group bids on "dutch oven." Another bids on "enameled dutch oven 6 quart." A third campaign, built later for a gift guide, bids on "dutch oven" again because the collection was pasted in twice. All three can enter the same auction. The shopper sees one ad. You do not see three invoices, but you do see unstable landing pages and a query that never settles.
Pick the ad group whose page matches the query. Negative the phrase on the others. If the 6-quart query has its own volume and its own product page, it stays there and nowhere else.
Check across campaign types, not only inside Search
Standard Shopping, Performance Max, and Search can all match a brand or product query. A clean Search structure will still be undercut if another campaign is allowed to serve on the same term. When you split intent, write down which campaign type is allowed to own the query. The four-bucket split is the map. The negatives are how the map survives contact with the account.
How Kopa flags the overlap
In Kopa, Smart Campaigns marks phrases that have no volume and phrases already covered by a shorter keyword so the draft does not create two ad groups bidding on one idea. You review the flags before publishing.
What good looks like
- Each commercial query theme has one ad group owner and one landing page.
- Longer phrases are added only when they have their own volume and a better page.
- Overlaps are negatives in the ad groups that should not serve.
- Zero-volume terms are removed instead of kept "just in case."
- Search, Shopping, and Performance Max do not silently share the same product query without a written owner.
