Keyword clustering is the process of grouping keywords that share the same search intent (and usually the same top-10 results) so that one page targets the whole group instead of one keyword per page. Done well, it turns a list of 500 keywords into 40 to 60 page briefs, stops your own pages competing with each other, and tells you exactly which page should rank for what. Below is the exact method I use, a worked example you can copy, and current tool prices as of September 2026.
- Cluster by SERP overlap, not by shared words. If two keywords share 3 or more URLs in Google’s top 10, they belong on the same page.
- One cluster = one page. A typical blog post cluster holds 5 to 30 keywords; a commercial page cluster is often 3 to 10.
- You can do this for free in Google Sheets or with a Claude/ChatGPT prompt; paid tools (Keyword Insights from $58/mo, Keyword Cupid from $9.99/mo) mainly save time at scale.
- Clustering is the cheapest cannibalization fix there is: the mapping doc decides which URL owns each intent before the content is written.
- Skip clustering for tiny keyword sets, brand terms, or lists where every keyword already has a distinct intent.
What keyword clustering is (and what it is not)
Keyword grouping by shared words, the way most tools did it in 2018, is not clustering. “Standing desk” and “standing desk mat” share two words but have completely different results pages and buy different products. Google decides what belongs together by returning the same URLs, and that is the signal to copy.
Semantic keyword grouping means putting keywords together when Google treats them as the same question. You check that two ways: SERP overlap (do the top 10 URLs match?) or an LLM’s judgement of intent. SERP overlap is more reliable; LLM grouping is faster and free.
No raw list yet? Start with the keyword research guide and the long-tail keyword process. Clustering is step two.
Worked example: 12 standing desk keywords into 3 clusters and 3 pages
Here is a small but realistic list for a home-office furniture site. Volumes are rounded US monthly estimates and will differ by tool. The point is the grouping logic, not the exact numbers.
| Keyword | Approx. volume | Cluster | Intent | Target page |
|---|---|---|---|---|
| best standing desk | 40,000 | A – Best-of | Commercial | /best-standing-desks/ |
| best standing desks 2026 | 6,000 | A – Best-of | Commercial | /best-standing-desks/ |
| top rated standing desk | 1,900 | A – Best-of | Commercial | /best-standing-desks/ |
| standing desk reviews | 2,400 | A – Best-of | Commercial | /best-standing-desks/ |
| best electric standing desk | 5,400 | A – Best-of | Commercial | /best-standing-desks/ |
| are standing desks worth it | 4,400 | B – Worth it / benefits | Informational | /are-standing-desks-worth-it/ |
| standing desk benefits | 6,600 | B – Worth it / benefits | Informational | /are-standing-desks-worth-it/ |
| do standing desks help with back pain | 1,300 | B – Worth it / benefits | Informational | /are-standing-desks-worth-it/ |
| standing desk pros and cons | 2,900 | B – Worth it / benefits | Informational | /are-standing-desks-worth-it/ |
| standing desk height | 9,900 | C – Correct height | Informational (how-to) | /standing-desk-height-guide/ |
| how high should a standing desk be | 2,900 | C – Correct height | Informational (how-to) | /standing-desk-height-guide/ |
| standing desk height calculator | 3,600 | C – Correct height | Informational (tool) | /standing-desk-height-guide/ |
Two things to notice. “Best electric standing desk” stays in cluster A because its top 10 is mostly the same roundups; if you see 7 electric-only pages, split it out. And “standing desk height calculator” joins cluster C only if you actually embed a calculator. If you will not build one, drop the keyword.
The SERP-overlap method: 3+ shared URLs in the top 10 means the same cluster
This is the method every serious clustering tool uses under the hood, and it is the one I trust for money pages. The rule I use: if two keywords share 3 or more URLs in Google’s top 10, they go on one page. Some tools default to 2; I find 2 groups too aggressively for commercial terms and 4 splits informational terms that clearly belong together.
- Pull the top 10 organic URLs for every keyword (Semrush, Ahrefs, SE Ranking, or a SERP API such as DataForSEO). Same country, same device, same day.
- Pick the highest-volume keyword as a seed. Compare every other keyword’s top 10 against it and count shared URLs.
- Any keyword with 3+ matches joins the seed’s cluster and is removed from the pool.
- Take the next highest-volume unclustered keyword as the new seed. Repeat until the pool is empty.
- Name each cluster after its highest-volume keyword, then label intent (informational, commercial, transactional, navigational) by looking at what actually ranks. Our search intent guide covers how to read those signals.
Why this beats word-matching: “cheap standing desk” and “standing desk under $200” share no words but share 6 or 7 URLs in most US SERPs. For more on reading results pages, see the SERP analysis guide.
How to group keywords for free in Google Sheets
You do not need a paid tool for lists under about 300 keywords. This takes an hour with the sheet below.
- Column A: keyword. Column B: volume. Columns C to L: the top 10 ranking URLs (paste from a free Ahrefs Webmaster Tools export, Google Search Console, or manual searches in an incognito window with the country set).
- Strip URLs to domains plus path with
=REGEXREPLACE(C2,"^https?://(www\.)?","")so tracking parameters do not break matches. - Add a column M with a seed keyword in a cell (say N1) and this formula to count overlap:
=SUMPRODUCT(COUNTIF(C2:L2, FILTER($C$2:$L$500, $A$2:$A$500=$N$1))). It returns how many of row 2’s URLs appear in the seed’s top 10. - Filter column M for values of 3 or more, tag those rows with the seed name in column N, then change the seed and repeat.
- Add columns for intent and target URL. This sheet becomes your keyword map, which is the document that actually prevents cannibalization later.
No SERP data at all? Search each keyword, note the top 5 domains, and group by eye. Slow past 100 keywords, but accurate.
Clustering with ChatGPT or Claude: a prompt that works
LLM grouping is intent-based rather than SERP-based, so it is about 80 to 85 percent as accurate as overlap clustering in my experience, and it is free. Use it as a first pass, then spot-check the commercial clusters against real SERPs. Here is the prompt I use.
You are an SEO strategist. Group the keywords below into clusters where every keyword in a cluster can be satisfied by ONE page targeting ONE search intent. Rules: - Group by searcher intent and expected page type, not by shared words. - Intent labels: informational, commercial, transactional, navigational. - Name each cluster after its most representative keyword. - Suggest a page type (blog guide, comparison, category page, product page, tool). - If a keyword doesn't fit any cluster, put it in "Unassigned" and say why. - Output as a table: Cluster | Intent | Page type | Keywords (comma separated). Keywords: [paste your list, one per line, optionally with volume]
Keep lists under about 300 keywords per prompt; beyond that the model starts merging clusters that should stay apart. For a comparison of AI-assisted tools that do this at scale, see the AI SEO tools roundup.
Keyword clustering tools and what they cost as of September 2026
Prices below are from each vendor’s pricing page, checked September 2026. Monthly billing unless noted.
| Tool | Clustering method | Price (Sept 2026) | Best for |
|---|---|---|---|
| Keyword Insights | SERP overlap plus intent labelling and briefs | Basic $58/mo (10,000 credits), Professional $99/mo (20,000 credits); $1 seven-day trial | Agencies clustering 5,000+ keywords a month |
| Keyword Cupid | SERP-based “neural” clustering with visual maps | Starter $9.99/mo (500 credits), Freelancer $49.99/mo (5,000), Agency $149.99/mo (20,000) | Freelancers on a budget |
| Semrush Keyword Manager | SERP overlap clustering inside Keyword Manager lists | Plans start at $117.33/mo billed annually (SEO plan), then Starter $165.17, Pro+ $248.17, Advanced $455.67 | Teams already paying for Semrush |
| Ahrefs Keywords Explorer | “Clusters by parent topic” and “clusters by terms” views | Starter $29/mo, Lite $129/mo, Standard $249/mo (clusters need Standard or higher) | Teams already paying for Ahrefs |
| SE Ranking Keyword Grouper | SERP overlap with adjustable similarity threshold | Core $129/mo ($103.20 annual), Growth $279/mo ($223.20 annual); grouper included | Mid-size sites wanting rank tracking too |
| ChatGPT / Claude | Intent-based via prompt | Free tiers available; paid plans around $20/mo | First pass on any list under 300 keywords |
My take: clustering should not decide between Semrush and Ahrefs; both are adequate. If clustering is the main job, Keyword Insights is the strongest dedicated tool and Keyword Cupid the cheapest usable one. The Ahrefs vs Semrush comparison and the affordable SEO tools list cover the wider platforms.
Keyword clusters stop cannibalization before it starts
Cannibalization is two of your URLs ranking for the same query and swapping positions. Google’s guidance on consolidating duplicate URLs targets true duplicates, but the same logic applies to near-duplicate intent: one page per intent.
Clustering fixes this at the planning stage. When “standing desk benefits” and “are standing desks worth it” sit in one cluster, nobody writes two posts. The keyword map is also the document you check before approving any new brief.
For existing sites, run the cluster exercise on your current keywords from Google Search Console (the Search Console tutorial shows the export). Any cluster with two or more of your URLs ranking is a merge or redirect candidate. Then use internal links to point every mention of that topic at the surviving page.
How many keywords per page is right
There is no fixed number; the cluster decides. But these ranges hold up across the sites I have worked on:
- Informational guides: 10 to 30 keywords, one primary, the rest as H2/H3 topics and natural variants. A 2,000-word guide rarely ranks for more than 40 meaningful terms, so a 100-keyword cluster usually means two pages.
- Commercial comparisons and best-of lists: 5 to 15 keywords. Modifiers like “for small spaces” or “under $300” only merge if the SERP overlap says so.
- Product and category pages: 3 to 8 keywords. These pages are short, so every keyword must map to on-page copy, filters, or the title.
- Local service pages: 2 to 5 keywords per city and service; see the local SEO audit guide for the location-page structure.
A cluster with 60 keywords and three different question types is not one page. Split by sub-intent, then link the pieces together as a hub.
When not to cluster
- Fewer than about 30 keywords. You can map them by hand in ten minutes; running a tool is overhead.
- Brand and navigational terms. “Semrush login” does not need a cluster; it needs the login page to exist.
- Keyword lists where every term already has distinct intent. A list of 20 different product names is already 20 pages.
- Volatile SERPs. News queries and queries dominated by AI Overviews change their top 10 daily; overlap scores measured on Tuesday are meaningless by Friday. Our piece on AI Overviews and SEO covers how those results behave.
- Before you have checked intent yourself. Tools group; they do not know that your site cannot build a calculator or does not sell electric desks.
Common mistakes I see in cluster reviews
In audits I have run for SaaS and ecommerce clients, the same five problems come up repeatedly:
- Trusting the tool’s threshold. A tool set to 2 shared URLs merged “CRM software” and “CRM software for real estate” for one client. The SERPs share two generic roundups and nothing else. Always eyeball commercial clusters.
- Clustering without volumes attached. The cluster name should be the highest-volume keyword, and the title tag should use it. Without volumes, writers pick the wording they like.
- Mixing countries. UK and US top 10s overlap far less than people assume. Cluster per market or you will get one mushy page that ranks in neither.
- Treating the cluster as a keyword list to stuff. Twenty keywords in a cluster means twenty questions the page should answer, not twenty phrases to repeat. Google’s helpful content guidance is still the standard here.
- Never revisiting. SERPs shift. I re-cluster the top 20 percent of a site’s keywords by traffic every six months and after every core update; the 2026 algorithm update log is a good trigger list.
FAQ
What is the difference between keyword clustering and keyword grouping?
In practice the terms are used interchangeably. Historically, grouping meant sorting by shared words, while clustering meant sorting by SERP overlap or semantic intent. Use the SERP-based method whichever name you call it.
How many keywords should be in a keyword cluster?
Usually 5 to 30 for an informational page and 3 to 10 for a commercial or product page. If a cluster grows past 40 keywords with several different question types, split it into a hub page plus supporting pages.
Can I do keyword clustering for free?
Yes. Google Sheets with a COUNTIF-based overlap formula works for lists under 300 keywords, and a ChatGPT or Claude prompt gives a fast intent-based first pass. Paid tools are worth it once you regularly cluster several thousand keywords.
Does keyword clustering still matter with AI Overviews?
Yes, arguably more. AI Overviews and answer engines cite pages that cover a whole intent thoroughly, and a well-built cluster is the blueprint for that coverage. Volatile AI-heavy SERPs just mean you should re-check overlap more often.



