---
title: "Find and fix keyword cannibalization so one page ranks for each query"
description: "Detect pages that compete for one query in Search Console, rank the cases by value, and fix each one by merge, repositioning, canonical, or removal."
canonical: "https://scalewithsearch.com/articles/keyword-cannibalization-detection"
date: "2026-03-20"
modified: "2026-09-25"
---
## Site navigation

- [Scale With Search](https://scalewithsearch.com/)
- Real estate
  - Real estate
    - [Real estate](https://scalewithsearch.com/for/real-estate)
- Work
  - Start here
    - [Send your brief](https://scalewithsearch.com/work#send-your-brief)
    - [Prepare your six-question brief](https://scalewithsearch.com/work#prepare-your-six-question-brief)
  - Build
    - [Site build, content library with SEO, signal desk](https://scalewithsearch.com/work)
- For your business
  - Trades and home services
    - [Auto body and collision shops](https://scalewithsearch.com/for/auto-body-and-collision-shops)
    - [Foundation and home repair contractors](https://scalewithsearch.com/for/foundation-and-home-repair)
    - [Garage door and fencing contractors](https://scalewithsearch.com/for/garage-door-and-fencing-contractors)
    - [HVAC contractors](https://scalewithsearch.com/for/hvac-contractors)
    - [Janitorial and commercial cleaning companies](https://scalewithsearch.com/for/janitorial-and-commercial-cleaning)
    - [Locksmiths](https://scalewithsearch.com/for/locksmiths)
    - [Moving companies](https://scalewithsearch.com/for/moving-companies)
    - [Pest control companies](https://scalewithsearch.com/for/pest-control-companies)
    - [Plumbing and electrical contractors](https://scalewithsearch.com/for/plumbing-and-electrical-contractors)
    - [Restoration and water or fire damage companies](https://scalewithsearch.com/for/restoration-and-water-fire-damage)
    - [Roofing companies](https://scalewithsearch.com/for/roofing-companies)
    - [Towing companies](https://scalewithsearch.com/for/towing-companies)
    - [Tree services and landscaping companies](https://scalewithsearch.com/for/tree-services-and-landscaping)
    - [Solar installers](https://scalewithsearch.com/for/solar-installation)
    - [General contractors](https://scalewithsearch.com/for/general-contractors-and-construction)
    - [Paving, concrete, and flooring contractors](https://scalewithsearch.com/for/paving)
  - Practices and professional services
    - [Bookkeeping and tax practices](https://scalewithsearch.com/for/bookkeeping-and-tax-practices)
    - [Dental practices](https://scalewithsearch.com/for/dental-practices)
    - [Family and criminal defense law firms](https://scalewithsearch.com/for/family-and-criminal-defense-law-firms)
    - [Med spas and aesthetics practices](https://scalewithsearch.com/for/med-spas-and-aesthetics)
    - [Personal injury law firms](https://scalewithsearch.com/for/personal-injury-law-firms)
    - [Veterinary clinics](https://scalewithsearch.com/for/veterinary-clinics)
    - [Gyms and fitness studios](https://scalewithsearch.com/for/fitness)
    - [Therapy and outpatient health practices](https://scalewithsearch.com/for/therapy-and-outpatient-health)
    - [Medical billing companies](https://scalewithsearch.com/for/medical-billing)
    - [Insurance agencies](https://scalewithsearch.com/for/insurance-agencies)
    - [Financial advisors](https://scalewithsearch.com/for/financial-advisors)
    - [Property management companies](https://scalewithsearch.com/for/property-management)
    - [Recruiting and staffing agencies](https://scalewithsearch.com/for/recruiting-and-staffing)
    - [Architects and interior designers](https://scalewithsearch.com/for/architects-and-interior-designers)
    - [Logistics and supply chain companies](https://scalewithsearch.com/for/logistics-and-supply-chain)
  - Agencies, MSPs, and manufacturing
    - [IT and managed service providers](https://scalewithsearch.com/for/it-and-managed-service-providers)
    - [Machine shops and precision manufacturers](https://scalewithsearch.com/for/machine-shops-and-precision-manufacturing)
    - [Marketing agencies and freelancers](https://scalewithsearch.com/for/marketing-agencies-and-freelancers)
    - [SEO agencies and consultants](https://scalewithsearch.com/for/seo-agencies-and-consultants)
    - [Small manufacturers and fabricators](https://scalewithsearch.com/for/small-manufacturers-and-fabricators)
  - Restaurants, shops, studios, and nonprofits
    - [Restaurants and hospitality businesses](https://scalewithsearch.com/for/restaurants-and-hospitality)
    - [Retail stores and ecommerce sellers](https://scalewithsearch.com/for/retail-and-ecommerce)
    - [Photographers, event planners, and travel agents](https://scalewithsearch.com/for/photographers)
    - [Churches and nonprofits](https://scalewithsearch.com/for/churches-and-nonprofits)
  - [All industries](https://scalewithsearch.com/for/)
- Learn
  - For your office
    - [Office job guides](https://scalewithsearch.com/guides/)
    - [Browser calculators](https://scalewithsearch.com/tools/)
  - Start here
    - [How it works](https://scalewithsearch.com/how-it-works)
    - [Free Starter Kit](https://scalewithsearch.com/kit/business-memory-starter-kit.zip)
    - [Synthetic specimen](https://scalewithsearch.com/specimen/working-session-specimen.zip)
  - Guides
    - [The Complete Guide to Business Memory for AI Agents](https://scalewithsearch.com/articles/business-memory-for-ai-agents-guide)
    - [The Complete Small-Business Guide to AI Agent Governance](https://scalewithsearch.com/articles/ai-agent-governance-guide-small-business)
    - [The Complete Guide to Leaving Vendor AI Memory](https://scalewithsearch.com/articles/leaving-vendor-ai-memory-guide)
  - Articles by cluster
    - [Business memory](https://scalewithsearch.com/articles/business-memory-for-ai-agents-guide)
    - [Agent governance](https://scalewithsearch.com/articles/ai-agent-governance-guide-small-business)
    - [Migration and ownership](https://scalewithsearch.com/articles/leaving-vendor-ai-memory-guide)
  - For machines
    - [llms.txt](https://scalewithsearch.com/llms.txt)
    - [llms-full.txt](https://scalewithsearch.com/llms-full.txt)
    - [Machine view](https://scalewithsearch.com/?view=machine)
- Company
  - Evidence
    - [Proof](https://scalewithsearch.com/proof)
  - Company
    - [About](https://scalewithsearch.com/about)

# Find and fix keyword cannibalization so one page ranks for each query.

Your site has three articles about email deliverability. One ranks at position 15, one at 22, and one at 37. None of them brings meaningful traffic. A competitor with one strong article holds position 3.

Keyword cannibalization happens when several pages on your site compete for the same query. Google has to choose among them, and the signals that could support one strong page are split across several weak ones. This article shows how to tell real cannibalization from healthy topic coverage and how to detect it. It then ranks the cases, fixes each one, and prevents new ones.

## Tell cannibalization from healthy coverage

Several pages on related keywords are not a problem by themselves. Topic coverage needs pages on adjacent subjects. The test is search intent: do the pages serve the same need?

Cannibalization exists when:

- Several pages target the same primary keyword. Three pages all optimized for "email marketing software" compete head to head.
- The pages satisfy the same intent. "Best CRM tools" and "Top CRM software" both serve comparison and selection. They compete.
- Google alternates between your pages for one query. When the ranking URL changes from week to week, Google cannot decide which page fits best.

Overlap is healthy when:

- The pages serve different intents. "Email marketing strategy" is an informational guide. "Email marketing software" is a product comparison.
- The pages cover different parts of a broad topic. A pillar on SEO and articles on technical SEO, on-page SEO, and link building support each other.
- The pages serve different stages. "What is keyword research" serves awareness. "Keyword research tools" serves evaluation.

The [search intent guide](/articles/search-intent-explained) explains how to classify intent when the difference is not obvious.

## Detect cannibalization

### Search Console query and page pairs

Google Search Console shows which pages receive impressions for which queries. It is the main detection source.

The standard export from the Performance report lists queries and pages in separate tables. It does not pair them. You need the pairs, so use one of three sources:

- The Search Console API, with both `query` and `page` as dimensions.
- The Search Console connector in Looker Studio, with a table of query and landing page.
- The bulk data export to BigQuery, for large sites.

The [Search Console API guide for data teams](/articles/search-console-api-data-teams) shows the API query.

Then work through the data:

1. Load the query and page pairs into a spreadsheet.
2. Sort by query.
3. For each query, list the pages that received impressions and clicks.
4. Mark every query with two or more pages. These are your candidates.

For a quick check of one query, filter the Performance report to that query and open the `Pages` tab.

Three patterns are red flags:

- A query shows three or more pages with impressions, and no page gets most of the clicks.
- The top page for a query has a CTR under 5 percent despite a reasonable position.
- The ranking page for a query changes from week to week.

Consider the query "content marketing strategy." Page A sits at position 12, with 400 impressions and 8 clicks: a 2 percent CTR. Page B sits at position 18 with 250 impressions and 3 clicks, a 1.2 percent CTR. Neither page ranks well, and the signals are split. That is cannibalization.

### The site: search test

The `site:` operator shows which of your pages Google associates with a phrase:

1. Open Google Search.
2. Enter `site:yourdomain.com "target keyword"`.
3. Read the top 10 results.

If two or three pages with the same intent appear, you probably have cannibalization. If one page dominates and the others mention the phrase in passing, you do not. If many pages mention the phrase briefly, look for thin content.

For example, `site:example.com "email deliverability"` returns "Email Deliverability Best Practices," "Improving Email Deliverability," and "Email Deliverability Tips." All three compete for the same query.

### Rank tracker history

Rank trackers such as Ahrefs, Semrush, and SE Ranking record which URL ranked for each keyword over time. Check the history for your target keywords. List every URL that ranked for each one in the last 90 days.

This pattern for "email automation tools" is a red flag:

| Week | Ranking URL | Position |
|---|---|---|
| 1 | `/email-automation-software/` | 9 |
| 2 | `/best-email-tools/` | 12 |
| 3 | `/email-automation-software/` | 11 |
| 4 | `/email-marketing-automation/` | 15 |

Three pages compete. Google cannot settle on one.

### Intent audit

Review similar pages by hand:

1. List all pages that target keywords in the same topic group.
2. For each page, record the primary keyword, the title, and the H1.
3. Classify the intent: informational, navigational, commercial, or transactional.
4. Mark pages that serve the same intent.

For example, "How to Choose Email Marketing Software," "Best Email Marketing Tools," and "Email Marketing Software Comparison" all serve commercial investigation. Users expect the same content from each: criteria, comparisons, and product lists. These pages compete.

## Rank the cases by impact

Cannibalization does not always cost the same. Rank the cases on four factors:

- Keyword value. High-volume keywords that convert need a fix first. Low-volume informational queries can wait.
- Upside. If both pages rank beyond position 20, a merge has more upside than when one page already sits at position 5.
- Traffic. Compare the combined traffic of the competing pages with the traffic one stronger page could earn.
- Conversions. Competing product or service pages on transactional queries cost revenue. Fix them first.

Cannibalization hurts most on competitive keywords. Low-volume, long-tail queries with little competition show less effect.

## Fix each case with one of four methods

### Method 1: merge the pages

A merge combines competing pages into one stronger page. Use it when the pages cover the same topic with no real difference.

1. Choose the strongest page: the most traffic, the best backlinks, and the most internal links.
2. Read each competing page and list its unique, useful content.
3. Move that content into the strongest page.
4. 301-redirect the weaker URLs to the strongest page.
5. Update internal links to point straight at the kept URL.
6. Request indexing for the kept page with the URL Inspection tool in Search Console.

For example, three pages target "email marketing tips":

| URL | Monthly visits | Backlinks |
|---|---|---|
| `/email-marketing-tips/` | 500 | 12 |
| `/email-marketing-best-practices/` | 200 | 3 |
| `/how-to-improve-email-marketing/` | 100 | 1 |

Keep `/email-marketing-tips/`. Move the unique best practices and improvement tactics into it. Redirect the other two URLs. The merged page usually climbs and earns more traffic than the three weak pages combined. The [content refresh strategy guide](/articles/content-refresh-strategy-guide) covers the rewrite itself.

Never delete a page with meaningful traffic or backlinks without a merge and a redirect.

### Method 2: reposition the pages

Repositioning gives each page a distinct intent or keyword variant. Use it when each page has unique value, but the titles and focus keywords do not show the difference.

1. Find the distinct angles or intents in the broad topic.
2. Assign one subtopic or intent to each page.
3. Rewrite the titles, H1s, and meta descriptions to match.
4. Rewrite the content to stress each page's angle.
5. Change internal links so each page gets links for its own focus.

For example, `/content-marketing-guide/` and `/content-marketing-strategy/` both target "content marketing." Make the guide a beginner's resource on what content marketing is and the types of content. Title it "Content Marketing Guide: Fundamentals, Types, and Examples." Make the strategy page a framework to build a strategy and measure return. Title it "Content Marketing Strategy: Planning, Execution, and Measurement." Each page then ranks for its own variants.

### Method 3: canonical tags, for technical duplicates only

A canonical tag tells search engines which URL you prefer when near-duplicates stay live. It fits technical duplicates, such as URLs with sort and filter parameters and print versions. Add `<link rel="canonical" href="https://example.com/preferred-page/">` to the `<head>` of each duplicate.

Do not point paginated pages at page 1. Page 2 of a category lists different items, so give it a self-referencing canonical. The [canonical tag guide](/articles/canonical-tags-developers) covers the details.

Do not use a canonical tag for two distinct articles that compete for one keyword. Google can ignore a canonical tag between pages that are not duplicates, and the overlap stays. Merge or reposition instead.

### Method 4: delete and redirect

Deletion removes weak pages that add nothing but competition. Use it when a page has no unique value and a merge is not worth the effort.

1. Confirm that the page has no meaningful traffic, backlinks, or conversions.
2. Delete the page.
3. 301-redirect the URL to the most relevant remaining page.
4. Update internal links that pointed to the deleted page.
5. Remove the URL from the XML sitemap.

Good candidates are thin pages under about 500 words, outdated pages, and near-duplicates. For example, a site has five listicles on social media tips: `/social-media-tips/`, `/social-media-marketing-tips/`, `/social-tips-for-marketers/`, `/tips-for-social-media/`, and `/social-media-advice/`. Keep the strongest one, add any unique points from the others, delete four, and redirect them.

## Resolve three common patterns

### Product page and category page

An ecommerce category page `/running-shoes/` targets "running shoes." A product page `/nike-pegasus-running-shoes/` targets it too. Separate them by intent. The category page keeps the generic "running shoes" query and its comparison intent. The product page targets "Nike Pegasus running shoes." Rewrite its title and content around the brand and model.

### Blog post and landing page

A blog post `/blog/email-marketing-automation/` and a landing page `/email-marketing-automation/` target the same phrase. Separate them by stage. The blog post becomes the educational guide, such as "How email marketing automation works." The landing page becomes the product page. It carries features, plans, and calls to action. The blog post targets informational queries. The landing page targets commercial and transactional queries.

### Location pages

A service business has `/seo-services-new-york/`, `/seo-services-brooklyn/`, and `/seo-services-manhattan/`, and all three target "SEO services New York." Make each page specific to its area:

- Write distinct content for each location, such as local examples and area details.
- Add structured data with each location's address.
- Target the local phrase, such as "SEO services Brooklyn," not the generic one.
- Link the city page to the borough pages, and each borough page back to the city page.

## Prevent new cases

Detection fixes existing cases. A keyword map prevents new ones.

Keep a keyword map that assigns each target keyword to one page. Check it before anyone writes new content:

| URL | Primary keyword | Secondary keywords | Intent |
|---|---|---|---|
| `/email-marketing-guide/` | email marketing | email campaigns, email strategy | Informational |
| `/email-marketing-software/` | email marketing software | best email tools, email platforms | Commercial |

Review the editorial calendar against the map before each piece is assigned. Link to the same page for each topic every time; do not alternate between competing pages. Run the Search Console check each quarter, and each month on high-volume sites. Plan new content in keyword clusters from the start; the [keyword clustering guide](/articles/keyword-clustering-content-teams) shows how.

----

```text
                  .|########||.                                       .|########||.                                       .|########||.
               |##||.      .||##|.                                 |##||.      .||##|.                                 |##||.      .||##|.
             |#|.              .|#|.                             |#|.              .|#|.                             |#|.              .|#|.
           |#|                    |#|                          |#|                    |#|                          |#|                    |#|
         .#|                        |#.                      .#|                        |#.                      .#|                        |#.
        .#.                          .#|                    .#.                          .#|                    .#.                          .#|
       |#.                            .#|                  |#.                            .#|                  |#.                            .#|
      |#             ......             #|                |#             ......             #|                |#             ......             #|
     .#           ||#########|           #|              .#           ||#########|           #|              .#           ||#########|           #|
    .#.         |######||######|.        .#.            .#.         |######||######|.        .#.            .#.         |######||######|.        .#.
    #.        .##|###|##|#|######|        .#            #.        .##|###|##|#|######|        .#            #.        .##|###|##|#|######|        .#
   ||        |##|#||||||||||||#||#|        ||          ||        |##|#||||||||||||#||#|        ||          ||        |##|#||||||||||||#||#|        ||
   #        |#||||||||||||||||||||#|        #.         #        |#||||||||||||||||||||#|        #.         #        |#||||||||||||||||||||#|        #.
  ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||
  #       .#||||||||||||||||||||||||#|       #        #       .#||||||||||||||||||||||||#|       #        #       .#||||||||||||||||||||||||#|       #
 ||   ....|||#||||||##|#|||#|#||##||||....|. ||      ||   ....|||#||||||##|#|||#|#||##||||....|. ||      ||   ....|||#||||||##|#|||#|#||##||||....|. ||
 #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#      #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#      #.  .  ....|#  ....#|||   ||| .#|||  ....#. .#
 #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.     #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.     #   .  ||||#| .#####||  . .#| .#|||  ||||#   #.
.|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||    .|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||    .|   |||||  #. |#|||||. ||  #. |#||. .|||||   ||
||   |....  #. ....|#.      |. ...|. ....||   ||    ||   |....  #. ....|#.      |. ...|. ....||   ||    ||   |....  #. ....|#.      |. ...|. ....||   ||
#.  .||||||##||||||##||####|||||||#||||||#|   .#    #.  .||||||##||||||##||####|||||||#||||||#|   .#    #.  .||||||##||||||##||####|||||||#||||||#|   .#
#    .||####|###########################|.     #    #    .||####|###########################|.     #    #    .||####|###########################|.     #
#      .#||||||.#.|| # |. ..# #| #|||||#|      #    #      .#||||||.#.|| # |. ..# #| #|||||#|      #    #      .#||||||.#.|| # |. ..# #| #|||||#|      #
#      .#|||||| ..  |# ## |#| ...#|#|||#|      #    #      .#|||||| ..  |# ## |#| ...#|#|||#|      #    #      .#|||||| ..  |# ## |#| ...#|#|||#|      #
#      .#|||#|# .# .#| #| ##|.#..#|||||#|      #    #      .#|||#|# .# .#| #| ##|.#..#|||||#|      #    #      .#|||#|# .# .#| #| ##|.#..#|||||#|      #
#      .#||||||############|######|||||#|      #    #      .#||||||############|######|||||#|      #    #      .#||||||############|######|||||#|      #
#   |...||#||||||#||||#|#||||||#|||||#||| |.|  #    #   |...||#||||||#||||#|#||||||#|||||#||| |.|  #    #   |...||#||||||#||||#|#||||||#|||||#||| |.|  #
#. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#    #. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#    #. .. ||||# .|||##|.  |#| .|| || .|||#. #|  # .#
|| |  ...||  ...##| |  #| .|. |. #####  .. .| ||    || |  ...||  ...##| |  #| .|. |. #####  .. .| ||    || |  ...||  ...##| |  #| .|. |. #####  .. .| ||
|| ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||    || ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||    || ||||| || ||||#|  .  |. |. |#. ||||| |#| || ||
.# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.    .# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.    .# |.....#|....|#.||||.|||##.|#|....||.#||.#. #.
 #.|||||||#############################| ||| .#      #.|||||||#############################| ||| .#      #.|||||||#############################| ||| .#
 ||       ##||#||#||||||#||#||#||#||##.      ||      ||       ##||#||#||||||#||#||#||#||##.      ||      ||       ##||#||#||||||#||#||#||#||##.      ||
  #       .#|||||||||#||#|||||||||||#|       #        #       .#|||||||||#||#|||||||||||#|       #        #       .#|||||||||#||#|||||||||||#|       #
  ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||        ||       |#||||||||||||||||||||||#|       ||
  .#        |#||||||||||||||||||||#|        #.        .#        |#||||||||||||||||||||#|        #.        .#        |#||||||||||||||||||||#|        #.
   ||        |#||||||||||||||||||#|        ||          ||        |#||||||||||||||||||#|        ||          ||        |#||||||||||||||||||#|        ||
    #.        .######|#|#########|        .#            #.        .######|#|#########|        .#            #.        .######|#|#########|        .#
    .#.         |#####||||#####|         .#.            .#.         |#####||||#####|         .#.            .#.         |#####||||#####|         .#.
     |#           ||########||           #.              |#           ||########||           #.              |#           ||########||           #.
      |#             ......             #|                |#             ......             #|                |#             ......             #|
       |#.                            .#|                  |#.                            .#|                  |#.                            .#|
        |#.                          .#.                    |#.                          .#.                    |#.                          .#.
         .#|                        |#.                      .#|                        |#.                      .#|                        |#.
           |#|                    |#|                          |#|                    |#|                          |#|                    |#|
            .|#|.              .|#|.                            .|#|.              .|#|.                            .|#|.              .|#|.
               |##||.      .||##|                                  |##||.      .||##|                                  |##||.      .||##|
                 .||########||.                                      .||########||.                                      .||########||.

Scale With Search  2026  [scalewithsearch.com](https://scalewithsearch.com)
```
