SEO

Keyword Cannibalization: How to Find the Two Pages Fighting Each Other

📅 September 19, 2026 · ✍️ Ali Khan · 🕐 16 min read ·
Keyword Cannibalization: How to Find the Two Pages Fighting Each Other
Key Takeaways What Is Keyword Cannibalization, Really? Step #1: Understand Why Search Console HIDES It Step #2: Find Every Query With Two Owners Step #3: Watch for the Flip-Flop Step #4: Decide Between Merge, Differentiate and Delete Step #5: Merge Without Losing the Rankings Step #6: Stop Creating It in the First Place When Is It NOT Keyword Cannibalization? Frequently Asked Questions Next Steps

You published a second article on the topic last month, and your ranking has not moved.

Not up. Not down. Position 8 before, position 8 after, and now two pages doing the work of one.

That is keyword cannibalization, and it is very good at looking like nothing. The reason nobody catches it is that the report you would use to find it is designed to hide it.

Last month we ran this exact check across a 96-post content plan before writing a single word of it.

It killed nine planned posts, all of them keyword cannibalization waiting to happen.

One of them would have competed directly with an article we published four months earlier, which nobody remembered while writing the plan.

This guide is the six-step keyword cannibalization check we now run before every plan.

Key Takeaways

  • Search Console reports the topmost result from your site for a query, so a second competing page is invisible in the default view.
  • Grouping by property shows one row. Grouping by page shows each URL separately, which is where the conflict finally appears.
  • The reliable symptom is rank flip-flopping, where two URLs trade places for the same query week after week.
  • Two pages ranking for one query is not automatically a problem. It is only cannibalization when they serve the same intent.
  • There is no cannibalization penalty. The damage is split signals and a weaker single result, not a punishment.
  • Most cases resolve with merge, differentiate or delete. Merging is right more often than people expect.
  • When merging, 301 the loser to the winner and move the genuinely unique sections across. Deleting without redirecting throws away the links.
  • Fix internal links first. If your own navigation points at the wrong URL, Google is only following your instructions.
  • Commercial and informational pages targeting the same term is the most common real conflict, and the service page usually wins.
  • The cheapest fix is prevention: check every planned title against every existing focus keyword before writing.
  • Expect four to eight weeks for a merge to settle, and do not judge it in the first fortnight.
  • On our own plan, a proper check found nine collisions in 96 planned posts, which is roughly one in ten.

What Is Keyword Cannibalization, Really?

Keyword cannibalization is two of your pages competing to answer the same question for the same kind of visitor.

Not two pages mentioning the same word. Not two pages appearing for the same query. Two pages doing the same job.

That distinction matters because most keyword cannibalization audits flag hundreds of harmless overlaps and bury the four that matter.

Here is the test we use.

If a visitor landed on either page, would they feel they got the right one?

If the honest answer is “either is fine”, the pages are competing and one of them should not exist.

If the answer is “depends what they wanted”, you have two legitimate pages and a linking problem instead.

Key point: there is no keyword cannibalization penalty. Google is not fining you for having two similar pages. It is simply choosing one of them, sometimes the wrong one, and dividing the signals that would otherwise have made a single page stronger.

Step #1: Understand Why Search Console HIDES It

This is the step that explains why nobody finds keyword cannibalization by accident.

Google’s own documentation explains why keyword cannibalization stays hidden.

Average position: The average position of the topmost result from your site.Google Search Console Help, Performance report

Read that again with two competing pages in mind.

If page A ranks 8th and page B ranks 14th for the same query, the report shows you position 8.

Page B is not mentioned. It is not flagged. It simply does not appear.

The grouping compounds it. Google notes that when you group data by property you get one impression for the whole appearance, while grouping by page shows each URL separately.

So the default view is one query, one row, one position. Clean, tidy and concealing a fight.

The trap: people conclude they have no cannibalization because nothing looks wrong in the Queries tab. Nothing will ever look wrong in the Queries tab. You have to filter to a single query and then switch to the Pages tab, one query at a time, to see both URLs.

Which is tedious, and is exactly why the next step matters.

Pivoting a Search Console export of queries against pages
Count distinct pages per query. Anything above one is a candidate.

Step #2: Find Every Query With Two Owners

Export the data once, then let a spreadsheet find the keyword cannibalization for you.

  1. Open Search Console Performance, last 3 months. Shorter windows are too noisy to see a pattern.
  2. Export the Queries and Pages tabs together. The full export gives you the query and page pairing that the interface hides one filter at a time.
  3. Build a pivot of query against page. Count distinct pages per query. Anything with a count above one is a candidate.
  4. Filter to queries with real volume. Below roughly 30 impressions a month the noise exceeds the signal and you will chase nothing.
  5. Sort by combined impressions, descending. The top ten rows are your entire project. The tail is a distraction.

What comes back looks like this.

The audit, on one screen

Eight queries, five pages, three arguments

Every query mapped to the pages ranking for it. Most have one owner, which is what healthy looks like.

link building costbuy backlinks safelylink building serviceshow many links neededguest post pricingdigital pr agencylink audit checklistbacklink outreach/link-building-services//blog/link-building-cost//blog/link-audit//digital-pr-services//blog/outreach-guide/QueriesPages that rank for themRed queries connect to more than one page. Those are the only rows worth investigating.
3 of 8 queries have two owners. The other five need nothing doing to them.

Illustrative mapping in the shape a Search Console export produces. Build yours with a pivot table.

Most queries have exactly one owner, which is what a healthy site looks like.

The three red connections are the whole keyword cannibalization audit. Everything else is fine and can be left alone.

Note which pages are involved. In our experience the same one or two URLs turn up in most conflicts, usually a broad guide that mentions everything.

That page is not a victim. It is the culprit, and it has been quietly absorbing queries it was never written for, in much the same way filter URLs absorb crawl budget in Shopify duplicate content.

Tracking weekly ranking positions for two competing pages
Two URLs trading the top spot week after week is the confirmation.

Step #3: Watch for the Flip-Flop

Two pages sharing a query is a keyword cannibalization candidate. Two pages swapping places is a confirmed case.

When Google cannot decide which of your pages should answer a query, it stops being consistent about it.

The flip-flop

Neither page ever gets above position 6

Weekly position for the same query, tracked separately for each competing URL.

#1#5#10#15wk 1wk 4wk 7wk 10wk 12One query, two pages, twelve weeks. Lower is better.the guidethe blog postShaded band is where both pages live. Neither escapes it, because each reset the other.
The two URLs swapped the lead 8 times in twelve weeks. That is the diagnosis.

Illustrative weekly positions. Reproduce it by comparing two 28-day periods in the Performance report.

The shaded band is the overlap, and it is the diagnosis.

Neither page holds a stable position, because each week the algorithm makes a slightly different call and the winner resets whatever momentum the other one had.

This is why keyword cannibalization leaves queries sitting at position 8 to 12 and never improving.

Under keyword cannibalization neither page accumulates enough of anything to break into the top five, and the site looks like it has plateaued when it has actually split in half. If that sounds familiar, our guide to pages that are indexed but not ranking covers the other causes.

Pro tip: compare two 28-day periods rather than eyeballing a chart. If the URL holding the top spot for a query changed between periods, you have a flip-flop, and you can build that comparison directly in the Performance report without exporting anything.

Step #4: Decide Between Merge, Differentiate and Delete

Three outcomes for every keyword cannibalization conflict. Pick one, and write the decision down before touching anything.

The decision

Which fix applies to which conflict

SituationFixWhat you do
Both pages answer the same questionMergeCombine into the stronger URL, 301 the other
Different intent, similar wordingDifferentiateRewrite titles, headings and angle so each owns its own job
One page is thin and earns nothingDelete and redirect301 to the survivor, never leave a 404
Commercial page vs blog postDifferentiateService page owns the commercial term, post owns the question
Old post outranking a newer oneMerge into the old URLKeep the URL with the history, move the better content into it
Two pages, genuinely different audiencesLeave aloneFix internal links so each points at its own term

Row five surprises people. The URL with the link history usually wins, even when the content is worse.

Row four is the most common keyword cannibalization on any site that sells something and also blogs about it.

The rule we use is simple. The commercial page owns the buying term, the post owns the question.

So our link building service page owns the buying term while our post on link building cost owns the question. Both exist happily, and neither should try to be the other.

Get that split wrong and you will spend a year wondering why your service page ranks below your own blog. It is the same discipline we apply across every SEO engagement, and it costs nothing to decide up front.

Step #5: Merge Without Losing the Rankings

When fixing keyword cannibalization, the order matters more than the effort.

  1. Pick the survivor on link history, not content quality. Content can be moved in an hour. Referring domains cannot be moved at all.
  2. Move the genuinely unique sections across. Not everything. If both pages say the same thing, you only need it once.
  3. Redirect the loser with a 301. Permanent, direct to the survivor, never through a chain and never to the homepage.
  4. Repoint every internal link. This is the step people skip and it undoes the rest. Search your own content for the old URL and fix each one.
  5. Update the sitemap and request indexing. Remove the dead URL, submit the survivor, and let Google re-evaluate.
  6. Record the date and leave it alone for six weeks. Rankings wobble after a merge. Judging it at day ten is how good merges get reverted.

Step one is counter-intuitive enough to be worth repeating, especially given how long a page takes to earn the links it already has.

Keep the URL people have linked to, even if the writing on it is worse. You are preserving the part you cannot rebuild.

What a successful merge looks like afterwards is unmistakable.

After the merge

The split stops mattering and the total starts moving

Clicks for a single query, shown as a flow between the two competing pages and then one.

merged, week 9wk 1wk 4wk 8wk 10wk 12Weekly clicks for one query. Band thickness is total volume.Before the merge the split moves and the total does not. After it, the total grows.
Surviving pageRedirected page
Pre-merge average 33.3 clicks a week. By week 12, 53.

Illustrative pattern. Note weeks 9 and 10 look flat, which is when nervous teams revert the change.

Before the merge, total clicks stay flat while the split moves around. Two pages taking turns, neither growing.

After it, one page holds the query and the total climbs, because the position finally improves instead of resetting every week.

Note that the gain is not instant. Weeks nine and ten look unremarkable, which is precisely when nervous teams roll the change back.

Do not do this: merging by deleting the loser and leaving a 404. Every link that page ever earned goes with it. If you take one thing from this article, take the 301.

Where a merge is part of a wider clean-up, sequence it with the other technical work rather than running both at once, as we set out in crawl budget optimization.

Checking a content plan against existing focus keywords before writing
Nine posts not written is nine future conflicts that never need fixing.

Step #6: Stop Creating It in the First Place

Every keyword cannibalization conflict was created by someone who did not know the other page existed.

Usually that someone was you, eight months ago, working from a plan nobody checked against the existing site.

The prevention is a single check that takes ten minutes and runs before anything gets written.

Pull every focus keyword already assigned across your posts and pages into one list. Compare each proposed new title against it, checking for exact matches and for one phrase containing another.

Then triage the hits by hand, because a machine cannot tell the difference between a real collision and a shared generic word. Our keyword density checker is useful for the page-level version of the same question.

What we actually found: running this over a 96-post plan surfaced nine genuine collisions, roughly one in ten. Two were exact duplicates of posts we had already published. Several more looked alarming and turned out to be harmless overlaps on generic words like “migration”, which is why the manual triage step is not optional.

Nine posts not written is nine posts of budget saved, plus nine future keyword cannibalization conflicts that will never need fixing.

It remains the highest-return ten minutes in our entire content process, and it produces nothing anyone can see, which is presumably why so few teams do it.

When Is It NOT Keyword Cannibalization?

Most of the time it is not keyword cannibalization at all, which is the part audit tools never tell you.

False alarms

Overlaps that look like conflicts and are not

What you seeWhy it is fineWhat to do
Two pages ranking for one broad termDifferent intents behind the same wordsNothing, unless positions flip
Homepage appearing for many termsHomepages rank for brand and category terms by natureNothing
Category and product both appearingOne is browse intent, one is buy intentCheck internal links point sensibly
A word shared across ten pagesShared vocabulary is not shared targetingNothing
Two pages, one at position 3, one at 40No real competition at that distanceNothing
Old post ranking below a new one, stablyGoogle has decided, and stability is the goalLeave it

Stability is the signal. Flip-flopping is the problem, not co-existence.

Row five deserves a rule of thumb, because it saves a great deal of pointless work.

If the two pages are more than roughly twenty positions apart and neither moves much, they are not fighting. One of them simply also mentions the topic.

Chasing that is how a two-hour keyword cannibalization audit turns into a two-week project with no measurable outcome. Budget it like any other technical work, as set out in what an SEO audit costs.

Frequently Asked Questions

What is keyword cannibalization?

It is two or more of your pages competing to answer the same question for the same audience. The test is whether a visitor landing on either page would feel they got the right one, and if the answer is yes, the pages are doing the same job.

Does keyword cannibalization cause a Google penalty?

No. There is no penalty for it. What happens instead is that signals split between the competing pages and Google selects one of them, sometimes the weaker one, so your best possible result is worse than it should be.

Why can I not see it in Search Console?

Because the Performance report shows the average position of the topmost result from your site, so a second competing page is simply not displayed. You have to filter to a single query and switch to the Pages tab to see both URLs.

How do I find cannibalization quickly?

Export three months of Performance data, pivot query against page, and count distinct pages per query. Anything above one with meaningful impressions is a candidate, and the top ten by combined impressions is the entire project.

Is two pages ranking for one keyword always bad?

No, and treating it that way wastes weeks. Two stable pages serving different intents is healthy, and the reliable warning sign is flip-flopping, where the two URLs trade the top spot from week to week.

Should I merge or just delete the weaker page?

Merge and redirect, almost always. Deleting without a 301 discards every link that page ever earned, and those links are the one asset you cannot rebuild quickly.

Which page should survive a merge?

Usually the one with more referring domains and history, even if its content is worse. Content can be moved across in an hour, whereas link equity and age cannot be transferred by rewriting anything.

How long does a merge take to show results?

Four to eight weeks in most cases, with a wobble in the first fortnight that looks like failure. Record the date you made the change and resist judging it before six weeks have passed.

Do internal links cause cannibalization?

They frequently decide which page wins. If your own navigation and body links point at the page you did not intend to rank, Google is following your instructions, so fixing internal links is often the whole solution.

Can a service page and a blog post target the same term?

They should target related but different terms. Give the commercial page the buying term and the post the question behind it, so a services page owns one phrasing and an article owns the cost or comparison version.

How do I prevent it when planning content?

Pull every focus keyword already used across your site into one list and check each proposed title against it before writing. Test for exact matches and for one phrase containing another, then triage the hits by hand.

How common is it in practice?

More common in planning than in published content. Running the check across a 96-post plan of our own surfaced nine genuine collisions, which is roughly one in ten posts that would have competed with something already live.

Next Steps

Three things to settle your keyword cannibalization, in this order.

First, export three months of Performance data and pivot query against page. You will know within twenty minutes whether you have four conflicts or none.

Second, check the top ten candidates for flip-flopping by comparing two 28-day periods. Only the ones that swap places need fixing.

Third, build the pre-publish check into your planning so you stop manufacturing new conflicts while fixing the old ones.

The Google documentation behind all of this is short. Read the Performance report overview and the page on how impressions and position are counted before trusting any third-party cannibalization tool.

If you would rather have the export read for you, send us three months of Search Console data and we will tell you which pages are actually fighting.

Ali Khan, founder of Mezvic

Founder of Mezvic

I'm Ali Khan, the founder of Mezvic. I work with eCommerce brands on the parts of growth nobody posts about: marketplace accounts that have to stay compliant, catalogues that drift the moment you add a channel, and the automation that keeps both running without another hire. I write about what these platforms actually do rather than what their help pages say, usually because I have just spent a week fixing it for somebody.

Ready to Apply This?

Let Mezvic Build the System Behind Your Growth

Whether it's ranking higher on Google, automating your lead follow-up, or scaling your eCommerce revenue, we combine all three disciplines into one integrated system. Book a free 30-minute call and we'll show you exactly where your biggest opportunities are.

Free 30-minute audit No lock-in contracts 150+ businesses grown globally