One page per intent, one hub per topic
A 500-row keyword list isn't a strategy. Clustering turns it into a site structure and fixes the cannibalisation that's carving up your rankings.
What's keyword clustering?
Keyword clustering is putting keywords that deserve the same page together, because they share one intent. "Keyword clustering", "keyword grouping" and "cluster keywords for seo" are one cluster, so they get one page. "Best keyword clustering tool" is a different intent, so it gets its own page. The working unit in SEO is the cluster, not the individual keyword.
How to cluster keywords into topical hubs (without a $99/mo tool)
- Start from your expanded list. Seeds into expansion into intent labels. Get 100+ rows before clustering earns its keep.
- Group by SERP overlap, not word similarity. Two keywords belong together when Google already ranks the same pages for both. Word-match clustering ("keyword tool" plus "keyword tool io") throws up false groups all day long.
- Name each cluster by its intent. The name becomes the page's working title. If you can't name the intent in one line, the cluster is actually two.
- Arrange the clusters into a hub. The head-term cluster is the pillar page. Every subtopic cluster is a spoke that links back up. Internal links follow intent adjacency, not chronology.
- Map every cluster to one URL, and write it down. The keyword map (a simple sheet: cluster, URL, status) is the artefact that stops cannibalisation happening in future.

Fixing keyword cannibalisation
Cannibalisation is the opposite problem. Two of your pages fight over one intent, Google flips between them, and both rank worse than either would on its own.
- Find it: in Search Console, group by query and page. Any query where two or more of your URLs swap impressions is a candidate. Programmatic discovery runs the same grouping across every page in one pass.
- Fix it: merge the weaker page into the stronger with a 301, or re-point the weaker page at a genuinely different intent and re-title it.
- Prevent it: that keyword map from step 5. No new page ships without checking which cluster it claims.
Run the whole workflow with the Role SEO MCP:
Using the Role SEO MCP + Search Console: pull my queries grouped by
query and page, flag queries where two of my URLs alternate, and
propose merge/redirect fixes. Then cluster my researched keywords
by shared intent and output a cluster → URL keyword map.Keyword clustering FAQ
What's the best keyword clustering tool?
For SERP-overlap clustering at scale there are paid tools that do it well. For most sites, Role SEO's research plus an intent-grouping pass (the MCP prompt above) is enough. Judge any tool on whether it clusters on SERP overlap. Word-similarity clustering is a toy.
Is there a free keyword clustering tool?
Not an unlimited one. The grouping step itself is free (the MCP prompt above handles it), but it needs researched keywords underneath, and quality keyword data is the part that costs money everywhere. Role SEO bundles clustering into the research, so there's no separate clustering tool to buy. You can start for free, and paid plans start at £15/month.
What's a keyword mapping template?
A sheet with one row per cluster: primary keyword, supporting keywords, intent, target URL, status. The keyword map above is the worked example, so copy the structure. Add a forecast column and it becomes a build order: size each cluster before you commit the quarter to it.
Run this strategy in Role SEO
Run the MCP prompt in this guide with Role SEO. Role SEO is open source, free to try, and does not require a credit card.