# Keyword cannibalization

> Keyword cannibalization defined, the Search Console test that proves it, the three fixes ranked by effort, and the cases where two pages are fine.

Source: https://saas-marketing.net/glossary/keyword-cannibalization/
Topic: SaaS SEO
Type: glossary
Published: 2026-09-11
Last updated: 2026-09-11
Publisher: SaaS Marketing (saas-marketing.net)
License: CC BY 4.0. Quote or republish with attribution and a link to https://saas-marketing.net/glossary/keyword-cannibalization/

## Short answer

Keyword cannibalization is when two or more pages on the same site compete for the same query and the same intent, so neither holds a stable position. You confirm it with a Search Console query level export showing both URLs alternating on one query across several weeks. The fix depends on intent: consolidate and redirect when both pages answer the same question, differentiate only when they genuinely do not.

## Key takeaways

- Two pages ranking for one query is only cannibalization when they also serve the same search intent.
- The Search Console proof is URL alternation on a single query, not two URLs appearing in the same report.
- Consolidation with a 301 beats rewriting for differentiation whenever both pages answer the same buyer question.
- Most cannibalization starts in the keyword map, not the draft, which is why writer briefs rarely fix it.
- Programmatic page sets cannibalize faster than editorial ones because templates repeat one modifier across hundreds of URLs.
- Expect a consolidated page to settle in three to six weeks, with a temporary dip right after the redirect goes live.

---

Two URLs, one query, neither one sticking. That is the entire symptom, and by the time it surfaces in a report the cause is usually six months old and living in a spreadsheet nobody has opened since.

Most teams respond by rewriting one of the pages. The rewrite almost never helps.

## What keyword cannibalization actually is

It is two or more URLs on one domain targeting the same query with the same underlying intent, so a search engine has to pick between them and the relevance signals that would lift one page get split across both. The result is position instability, not a penalty. Nothing gets suppressed, you simply never accumulate enough weight on one URL to move from position nine to position four.

The term gets thrown around far too loosely. Google has allowed up to two results from a single domain on most SERPs since the site diversity update of June 2019, so spotting two of your own URLs on one query proves nothing on its own. What matters is whether one of them wins consistently.

Seeing your blog post and your pricing page in the same Search Console query report is not cannibalization. Seeing them swap positions 6 and 13 every fortnight for three months is. The tell is instability over time, not co-occurrence in a single export.

## The Search Console test that settles the argument

Pull the Performance report at query and page level, then look for alternation week by week on one query. One URL holding position 8 while the other sits at 34 means you have a strong page and a weak page. Two URLs trading places between 7 and 14 across six weeks means you have one query and two half pages.

**The 20 minute cannibalization diagnostic**

## The three fixes, ranked by effort

Differentiate, consolidate, or canonical. Effort and recovery time differ a lot, and so does the honesty required about whether the two pages were ever different.

I would pick consolidation in most cases, and I would pick it faster than most teams are comfortable with. Differentiation sounds better in a meeting because nothing gets deleted, but it usually produces two mediocre pages instead of one good one, and it leaves the internal link graph pointing in two directions. If you cannot write a one sentence brief that distinguishes the two pages, they are not distinguishable, and you are about to spend a week proving it.

Canonical and de-link is the compromise you use when the duplicate has to stay live. It works, it just works slowly, because a canonical is a hint and both URLs remain crawlable and linkable. Get the internal links right and the canonical is often unnecessary anyway.

## Worked example: an alternatives page losing to an old blog post

Here is the pattern we see most on [bottom of funnel SEO for SaaS](/guides/bottom-of-funnel-seo-saas/) pages. A content team publishes /blog/best-zendesk-alternatives in early 2025 as part of a listicle push. Ten months later product marketing ships /alternatives/zendesk on the main site, with a pricing table, a migration section and a demo button.

| | /blog/best-zendesk-alternatives | /alternatives/zendesk |
| --- | --- | --- |
| Weeks in top 10 of the last 12 | 5 | 4 |
| Average position across the period | 9.8 | 10.4 |
| Referring domains | 11 | 2 |
| Visitor to trial rate | 0.9% | 6.1% |
| Internal links pointing at it | 34 | 6 |

Neither page ever holds the top five. The blog post has the links, the money page has the conversion rate, and the site is spending its authority arguing with itself. The fix is to move the commercial content onto the URL with the links, or redirect the blog post into the money page and reroute those 34 internal links. We would redirect, because the money page template converts almost seven times better and the traffic is worth more than the URL.

**6.1% vs 0.9%** Visitor to trial rate on a dedicated alternatives page versus a blog listicle targeting the same query

## When two pages ranking is genuinely fine

Plenty of overlap is harmless, and chasing it wastes time you could spend on a [content refresh](/guides/saas-content-refresh/) that actually moves revenue. Leave it alone in these cases:

- A brand query where your homepage and your pricing page both rank, which is Google filling two slots for one navigational intent.
- A head term where one page targets a research intent and the other targets a purchase intent, and both hold steady positions for months.
- Pages in different languages or country folders, where hreflang is doing its job and the two URLs never appear on the same SERP.
- A docs page and a marketing page on one feature name, where the docs page serves existing customers and the marketing page serves buyers. Splitting that on purpose is part of [product led SEO](/guides/product-led-seo/).

## Why this is a keyword map failure, not a writing failure

Almost every case we audit traces back to the absence of one shared list saying which URL owns which query. Writers do not cause cannibalization. Three teams publishing from three different keyword exports do.

The fix is boring and permanent: one [keyword map](/templates/saas-keyword-map-template/) with a single target query per URL, owned by whoever approves briefs, checked before a brief is written rather than after a page is published. On a site running [programmatic SEO](/guides/programmatic-seo-for-saas/) this stops being optional, because a template that generates 400 URLs with the same modifier will produce 400 near identical intents unless the variable set is disciplined. That is one of the sharpest practical differences between [programmatic and editorial content](/comparisons/programmatic-vs-editorial-content/), and it is why we insist on a query uniqueness check before [launching a programmatic page set](/playbooks/programmatic-page-launch/).

You will lose traffic for two to three weeks and somebody will notice. Redirects also break any paid campaign, email link or sales sequence pointing at the old URL, so check those before you ship. On one consolidation we ran, the biggest problem was not Google, it was an active LinkedIn campaign sending 400 clicks a week to a URL that had become a redirect.

## Do this next

Run the diagnostic on your five highest value commercial queries first, not your highest traffic ones. Cannibalization on an informational post costs you sessions. Cannibalization on a comparison or alternatives query costs you pipeline, and you can size that loss with the [organic traffic forecast calculator](/calculators/organic-traffic-forecast/) before you decide how much effort it deserves.

**Before you ship the fix**

If the fix makes no difference after eight weeks, the two pages were never the constraint. Look at indexation and crawlability next, which is covered in [fix what blocks indexing](/courses/saas-seo-sprint/03-technical-foundation/), and read the broader diagnostic order in our [SaaS SEO](/saas-seo/) hub.

## Frequently asked questions

### What is keyword cannibalization?

It is when two or more URLs on one site target the same query with the same intent, so search engines have to choose between them. The symptom is position instability: one URL ranks eighth this week, the other ranks eleventh next week, and neither consolidates the links and engagement signals that would push either into the top five.

### How do I check for keyword cannibalization in Search Console?

Export the Performance report at query and page level for the last 16 months, filter to one query, then look at how many URLs carry impressions on it week by week. Cannibalization looks like two URLs swapping the top spot with neither holding it. Two URLs sitting at stable, separate positions is not cannibalization.

### Is it bad if two pages rank for the same keyword?

Not automatically. Google shows two results from one domain on plenty of queries, and a comparison page plus a review page can both earn a slot legitimately. It becomes a problem when the two pages answer the same question, split the same backlinks, and trade positions instead of one climbing. Judge by stability, not by the count.

### Should I delete or redirect the losing page?

Redirect it. A 301 to the surviving URL passes the links the old page earned and keeps anyone who bookmarked it from hitting a 404. Delete only when the page has zero links, zero impressions and no historical value, and even then a 410 is cleaner than leaving a soft 404 in place.

### How long does it take to recover after fixing cannibalization?

Three to six weeks is typical for a single consolidation on a mid sized SaaS site. Expect a dip in the first ten days while Google reprocesses the redirect and drops the old URL from its index. If nothing has moved after eight weeks, the two pages probably were not the constraint on that query.

### Does a canonical tag fix keyword cannibalization?

Partly. A canonical tells Google which URL you prefer and consolidates most signals, but it is a hint rather than a directive, and both pages stay reachable, so internal links keep pointing at the wrong one. Use it when you must keep the duplicate live for product or legal reasons. Otherwise redirect.

### What causes keyword cannibalization on SaaS sites specifically?

Usually the keyword map. A blog calendar built from a keyword tool export, a comparison page set built by product marketing, and a docs site built by engineering will all produce pages for the same query, because nobody owns a single list of which URL targets which term.
