AI SEO In Detail › Module B · Search Traffic Analysis › Episode 12
Keyword Cannibalization: Detect and Fix
Episode 12 of AI SEO In Detail, a free course in practical SEO analysis: Keyword Cannibalization: Detect and Fix.
Video coming soonThis episode is scripted and in production. The transcript below is the script as written; it may change before the video is published.
Full transcript
1,219 words · script draft, under review.
Intro
One search. Two of your own pages. Some days Google shows the first one, some days the other, and neither ever settles on page one.
That's keyword cannibalization. And it's one of the most over-diagnosed problems in SEO. Tools flag it everywhere, and most of what they flag is completely normal.
In this episode I'll show you how to find real cannibalization in Search Console, using one of my own sites as the example, how to tell it apart from healthy overlap, and the four ways to fix it when it's real.
What it is, and what it isn't
Keyword cannibalization means two or more pages on your site compete for the same search, and that competition holds both of them back. Google can't tell which one is the best answer, so it keeps switching, and neither page builds a stable position.
Now, what it isn't. Two of your pages appearing for the same query is not a problem in itself. If you have an overview page and a detail page, and both show up in the top five, that's not cannibalization. That's owning more of the results page. Big sites have dozens of pages getting impressions for their main terms.
Why do tools over-flag it? Because they see the overlap, but not the outcome. A simple rule, "two pages, one keyword", catches every healthy pair along with the few broken ones. If you act on all of them, you'll merge pages that were doing fine.
So the test isn't "do several pages share a query". The test is: does the sharing hurt? Is the position worse, or more unstable, than it would be with one clear page?
Detecting it in Search Console
Start with the right data. You need query and page together, as two dimensions in the same pull. And you need all the rows, not just the top few hundred, because cannibalization often hides in the middle of the list. Episode four shows how to page through the full result.
What you see here is real data from one of my own sites, anonymized: the domain, the URLs and the search terms are replaced, to keep the focus on the principles and not on the search terms. The numbers are untouched.
Then group by query. For each query, count the pages that get a meaningful share of its impressions. I use ten percent as the cut-off, so a page that shows up twice by accident doesn't count.
That gives you a list of candidates. On my site, over four weeks, that's a hundred and fifty queries, out of about thirty-six thousand. Not all of them are problems. Now three checks, in order.
First, position. If the best page for the query already ranks in the top three or four, stop. Whatever is happening, it isn't costing you much.
Second, time. Pull the same query by page and by day, and plot it. Real cannibalization has a typical shape: the pages take turns. One line goes up when the other goes down. Two lines that run in parallel are just two results shown together.
Third, intent. Open both pages. Are they trying to answer the same question, for the same person? Or does each serve a different need that happens to share words? If it's the same answer twice, you have a real case.
A real example: overlap, not a problem
Here's one case from the same site, the main example we'll follow through.
One query, over four weeks, with a hundred and seven impressions in total. Eight different pages from the site showed up for it at some point. The two biggest: the home page, in a hundred and four of those searches, and a deeper page, in sixty-eight.
Notice that those two alone add up to more than a hundred and seven. That's because an impression is counted per page. When both pages are on the same results page, both get an impression. So in at least sixty-five searches, both pages were there together. That's the gap between page totals and query totals from episode nine, showing up in practice.
And both rank around position three to four. A tool would flag this. But by our checks, it isn't a problem. Two results near the top.
Day by day, the shape confirms it. From the second week on, the two lines move together, often with exactly the same impressions on the same day. That's the parallel pattern: shown together, not taking turns. The decision is to leave it alone, and watch whether that changes.
For contrast, here's the top candidate on the list. Two pages from the same section of the site, both around position nine to ten, and not a single click in four weeks. Day by day, they take turns. One page has the impressions for the first day, then the other takes over for two weeks, then drops out almost completely, and the first one is back.
That's the shape we're looking for. It's not near the top, so the position check doesn't clear it, and it shows the time pattern. The last check, intent, means opening both pages and reading them. That's where the real decision gets made.
Four ways to fix real cannibalization
When a case is real, you have four tools. Choose based on what the pages are.
Merge. If two pages say roughly the same thing, combine them into one stronger page. Keep the better address, move the useful content over, and redirect the other one permanently, with a three-oh-one redirect. This is the most effective fix, and the most final.
Re-target. If both pages deserve to exist, make them clearly different. Change the title, the main heading and the focus of one, so it answers a different question. An overview and a detail page can coexist, as long as each owns its own intent.
Internal links. Decide which page is the one for the query, and point your internal links there, using the query's wording in the anchor text. Stop linking to the other page with that same wording. You're telling Google which page you mean.
Canonical. If you need near-identical versions, like the same list sorted two ways, put a canonical tag on the copy pointing to the main page. Remember that a canonical is a hint. Google can ignore it if the pages are too different.
Before you merge anything
One warning. A page that competes on one query may be winning on five others. Before you redirect or rewrite it, look at every query that page gets clicks from. Move that content with care, or you'll fix one problem and create three.
If you do merge, finish the job. Update your internal links so they point straight at the page you kept, not through the redirect. Remove the old address from your sitemap. Keep the redirect in place for good, not just for a few months. And expect a short dip while Google crawls both addresses again and moves the signals over. That's normal, so don't panic in week one.
And afterwards, measure the query as a whole, not each page separately. The goal is one stable result that ranks better than either did alone.
Wrap-up
So: find shared queries, check position, time and intent, and only then merge, re-target, re-link or canonicalize. The cannibalization script and the decision tree are linked in the description. Next episode: seasonality, and how to tell whether your traffic changed because demand changed or because your rankings did.