---
title: "How to Find Cannibalizing Pages in Search Console Without a Paid Tool"
description: "Learn how to find keyword cannibalization in Search Console without a paid tool. Filter non-branded queries, read the Pages tab, and log only real URL splits."
url: "https://articles.flowcrews.com/how-to-find-cannibalizing-pages-in-search-console-without-a-paid-tool"
category: "Guides"
date_published: 2026-11-04
reading_time_minutes: 7
word_count: 1613
---

# How to Find Cannibalizing Pages in Search Console Without a Paid Tool

*A fail-closed Pages-tab check that logs a split only when two URLs truly compete.*

![How to Find Cannibalizing Pages in Search Console Without a Paid Tool](https://pub-07fb5e4955ba485b822d6b388be96d9a.r2.dev/2e474d51-a072-472e-ab2f-1a43a8990566/how-to-find-cannibalizing-pages-in-search-console-without-a-paid-tool/hero-28c2a647-f70c-4e9f-a4e9-2aee77da3f36.jpg)

**TL;DR:**

- Search Console has no cannibalization report; the Pages tab shows which URLs were shown for one query.
- Chart totals can hide a split because two results from the same site count as one impression.
- More than one URL is a candidate, not proof of cannibalization or duplicate content.
- Confirm only material, same-intent splits over at least the default three months, and skip branded queries.
- The UI table stops at about 1,000 rows and one dimension, so a full query-and-page join needs the free Search Console API.

## How to see which pages rank for one query

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

## Which date range to use, how to spot a URL swap, and why branded queries don't count

## Why chart totals and the Pages table don't match

## How to export past 1,000 rows — and why query groups are not the report

## Canonical problem, or two real articles?

## Conclusion

- Pages view — Search Console has no cannibalization report; the official check is Performance, then Search results, then Queries, then the query, then Pages, and the decision belongs on those filtered rows, not the property-level chart.
- Split, not a double listing — Two URLs on one query are only a candidate. Log a split when both earn meaningful impressions, the flip rate is above 0.2, top click share is below 70%, and the intent is the same; a 90% click share with no flips is a double listing.
- Window and brand — Use at least the default three-month range, treat a leading-URL change across periods as swap evidence rather than an automatic merge, and exclude branded queries by hand if the branded filter is missing.
- Chart mismatch — Chart totals count the property once, while Pages are page-aggregated, so two competing URLs can look like one impression; privacy-omitted queries and grouping can also drop rows.
- Free export limits — The UI export stops at 1,000 rows and cannot pair query and page; the Search Analytics API and BigQuery are the free bulk options, and query groups cluster similar queries without showing which pages compete.
- Canonical versus two articles — Most Performance data is assigned to the canonical URL, so parameters, anchors, and near-duplicates are canonical fixes. Same-intent splits stay on the log until a separate audit chooses merge, redirect, or hold.

Before you brief another page on a topic you already cover, run this Search Console check on the exact non-branded query and log a split only when the Pages rows meet the flip, click-share, and intent tests.

## Frequently Asked Questions

### Does Google Search Console have a keyword cannibalization report?

No. The official path is Performance, then Search results: open Queries, click the query, and open the Pages tab to see which URLs were shown.

### Why can the Performance chart hide two competing URLs?

Chart data is aggregated by property. If two results from the same site appear for one query, they count as a single impression in the chart total. The Pages tab is the view that separates them.

### Are multiple pages ranking for one query always cannibalization?

No. John Mueller has said three pages in one result are not a problem just because there is more than one, and pages are not duplicates merely because they appear on the same results page. Confirm a material split and the same intent before you treat it as a conflict.

### How long a date range should I use?

Use at least the default three months of Search clicks and impressions. A short range can turn a one-off appearance into a false conflict. Compare periods, or compare the two page filters, to see whether the leading URL flips.

### Should branded queries be included in a cannibalization check?

Skip them. Homepage, About, and contact pages are supposed to show together. The branded and non-branded filter has data from 11 March 2025 and a 16-month history from that introduction, but it is unavailable on low-impression sites and URL-prefix sub-properties.

### When do I need the Search Console API instead of the UI?

The Performance table cannot list query and page side by side and shows at most 1,000 rows. A full join needs the free Search Analytics API, which returns at most 25,000 rows per response and exposes a maximum of 50,000 rows per day per search type. Grouping by page and query can still drop rows.

## Sources

- [https://support.google.com/webmasters/answer/17010961?hl=en](https://support.google.com/webmasters/answer/17010961?hl=en)
- [https://developers.google.com/search/blog/2021/04/performance-report-data-filtering](https://developers.google.com/search/blog/2021/04/performance-report-data-filtering)
- [https://www.searchenginejournal.com/google-answers-seo-question-about-keyword-cannibalization/556472/](https://www.searchenginejournal.com/google-answers-seo-question-about-keyword-cannibalization/556472/)
- [https://queryscope.dev/blog/keyword-cannibalization-gsc](https://queryscope.dev/blog/keyword-cannibalization-gsc)
- [https://seosandwitch.com/query-cannibalization-report-search-console/](https://seosandwitch.com/query-cannibalization-report-search-console/)
- [https://support.google.com/webmasters/answer/7576553](https://support.google.com/webmasters/answer/7576553)
- [https://support.google.com/webmasters/answer/17011259?hl=en](https://support.google.com/webmasters/answer/17011259?hl=en)
- [https://developers.google.com/webmaster-tools/v1/how-tos/all-your-data](https://developers.google.com/webmaster-tools/v1/how-tos/all-your-data)
- [https://gscpap.com/guides/detect-keyword-cannibalization](https://gscpap.com/guides/detect-keyword-cannibalization)
