Keyword Cannibalization Checker Skill

See which of your pages fight each other for the same Google queries, and which pair to fix first.

Keyword Cannibalization Checker Skill cover

What it does

Find the queries where your own pages compete with each other in Google, from your Search Console data: which pages split the impressions and clicks, which ones keep swapping places, which page pairs overlap across many queries, and which URL variants (trailing slash, www, tracking parameters) split signals.

python3 -m cannibal query-page.csv --brand 'widgetly' --csv reports
python3 -m cannibal bigquery-export.csv --search-type web --json > cannibal.json

What you get

The screenshot is real output from the kit’s own commands. Tested from a fresh download of this exact zip: ./run_tests.sh ran 5 tests OK on Python 3.13 and 3.10.

Real terminal output from Keyword Cannibalization Checker Skill: demo and passing tests

Data it reads

Search Console query and page together (the UI export only gives them separately):

  • Search Analytics API, Looker Studio or a Sheets add-on export with columns like query, page/url, clicks, impressions, position (comma, semicolon or tab separated; 1,234 and 1.234,5 numbers handled).
  • BigQuery bulk export rows from searchdata_url_impression (query, url, impressions, clicks, sum_position, data_date, search_type, is_anonymized_query). Rows are aggregated, average position is computed as sum_position / impressions + 1 (Google's formula), anonymized queries are skipped and --search-type filters web/image/video.

What it reports

  • Cannibalized queries: two or more pages each with at least 10% of the query's impressions (--min-share) within the top 30 positions, graded HIGH (real clicks split between two top-10 pages, or the ranking page flipping 3+ times when daily data is present), MEDIUM and LOW.
  • Competing page pairs: pages that share the most queries, with example queries and advice (merge and 301, or sharpen titles and internal links).
  • URL variants: the same page under different URLs splitting a query.
  • CSV (--csv DIR): cannibalization.csv and page-pairs.csv.

Agent skill

skills/keyword-cannibalization/SKILL.md tells Claude Code (or any agent that reads skills) how to get the right data, run the check and recommend fixes. Copy it into .claude/skills/; the kit is also a Claude Code plugin (.claude-plugin/plugin.json).

Run ./demo.sh for the example (9 queries, 6 cannibalized, one ranking flip) and ./run_tests.sh for the tests. Python 3.9+, no dependencies, works offline.

Honest limits

It sees Search Console numbers, not intent: two pages can rightly rank for one query. Review both pages and the live results before merging anything. Queries Google anonymizes aren't in the data.

Pairs with the SEO Log File Analyzer and SEO Audit MCP Server. License: LICENSE.txt.

Format and license

Zip, 14 KB, v1.0, 15 files. You may use and modify this kit for your own work and for clients you serve, including paid client work. Not affiliated with or endorsed by Google.

FAQ

Can I use the normal Search Console export?
It lists queries and pages separately; use the API, Looker Studio, a Sheets add-on or BigQuery export, which keep query and page together.
Does it connect to my Google account?
No, it reads the file you export.
Will merging pages always help?
No; it shows where pages compete, and you check intent before merging.
How do I get the files?
Right after payment, Stripe’s confirmation page shows your download link.
Refunds?
Email hello@youraitools.co within 14 days if it doesn’t work and we can’t fix it.
Can I pay with crypto?
Yes. Pay the same price in USDC or USDT on Base, Ethereum, Arbitrum, Optimism, Polygon or Solana from the "Pay with crypto" button, with no account or KYC. We check the payment on-chain and show your download links as soon as it confirms.

Get Keyword Cannibalization Checker Skill

Find keyword cannibalization in Search Console data: pages splitting the same query, ranking flips, competing pairs, with merge-or-sharpen advice. $19.

Save with a bundle

Pairs well with

Download$19

Content Decay Finder Skill

Find pages losing Google clicks and why: rankings, demand or click-through, with lost queries and a refresh plan. Reads Search Console exports. $19 once.

View Content Decay Finder Skill
DownloadFree

Open Graph Checker (Free)

Free Open Graph checker: missing og: tags, broken or wrong-size preview images, X card errors and canonical mismatches, for live URLs or a local build.

View Open Graph Checker (Free)
Download$19

Meta Catalog Feed Checker Skill

Check a Facebook/Instagram catalog feed against Meta's field reference: upload blockers, duplicate ids, prices, images, variants, with a fixed copy. $19.

View Meta Catalog Feed Checker Skill

Related