Keyword Clustering: How to Group Keywords by Page
You exported 4,000 keywords from your research tool. Now what? Most teams stall right here. The list sits in a spreadsheet for weeks, someone eventually picks a few "obvious" topics, and six months later two of those pages are fighting each other for position 9 while the rest of the list gathers dust.
Keyword grouping is the step that prevents all of that. It sits between raw keyword research and your content plan, and it answers one question for every term on your list: which page should rank for this? Get the groups right and a single page can pull rankings for dozens of related queries. Get them wrong and you publish ten thin pages that split your authority ten ways, with none of them strong enough to win.
This guide covers the whole job: what keyword groups are, how to group keywords by hand, how to do keyword clustering with SERP data when your list runs into the thousands, which tools handle it, and how to turn finished groups into a hub-and-spoke site architecture. Examples lean B2B because that is where we work, but the method transfers to any site.
What keyword grouping means (and what a keyword group is)
A keyword group is a set of search queries that one page can satisfy with a single piece of content. "CRM for small business", "best small business CRM", and "small business CRM software" are three queries with one intent. A buyer typing any of them wants the same thing: a shortlist of tools that fit a small company. One page answers all three, so they form one group.
You will also hear "keyword clustering". In practice the two terms describe the same task, and this article uses them interchangeably. Where a distinction exists, "grouping" tends to mean any way of bucketing keywords (by topic, funnel stage, or campaign), while "clustering" usually refers to the specific algorithmic step of grouping by SERP or semantic similarity. Either way, the output is identical: a map where every keyword belongs to exactly one page.
Why this works comes down to how Google ranks pages now. It stopped matching one page to one keyword years ago. It reads a page, understands its topic, and ranks it for every query the page can plausibly answer. A well-built page in a competitive niche commonly ranks for anywhere from 20 to several hundred keywords (an illustrative range, the spread depends heavily on your topic and authority). Your job is one page per intent, and a keyword group is simply the set of terms that share that intent.
Why keyword groups decide your rankings before you write a word
Skip grouping and three problems show up on schedule.
Cannibalization. You publish "how to choose a CRM" and "CRM selection guide" as separate articles. Both target the same searcher. Google cannot decide which to rank, so it rotates them, splits your internal links and backlinks across two URLs, and often ranks neither in the top 10. You are competing with yourself, and you paid twice for the privilege.
Thin content. Chasing every keyword variant produces pages with nothing to say. A 300-word post on "CRM software cost" and another on "CRM pricing" each lack the depth to beat one thorough page that covers the whole money question, pricing models, hidden costs, and negotiation included.
Wasted production budget. Writing, editing, designing, and linking a page costs real hours. Building ten pages where three would do triples your cost for a worse result. Grouping tells you, before anyone writes a word, exactly how many pages your keyword list actually needs.
The grouping rule: one intent, one page
Here is where most keyword grouping goes wrong. Teams group by how similar the words look. Searchers do not care how the words look.
Take two queries: "CRM comparison" and "compare CRM features". Heavy word overlap, and yes, same intent, so same page. Now take "what is a CRM" and "best CRM for B2B". The word "CRM" appears in both, yet the first comes from someone learning basics and the second from someone building a vendor shortlist. Different intent, different pages. Force them onto one URL and the page serves neither reader: the beginner drowns in feature tables, the buyer scrolls past definitions.
So the test for every group is a single question: would one page, with one main purpose, satisfy a person searching any of these terms? If yes, they group. If a query would make its searcher bounce because the page answers something subtly different, it belongs elsewhere. Classifying queries correctly is its own skill, and our breakdown of search intent and keyword types covers the four intent buckets and how to spot each one before you start grouping.
Keyword grouping data: what to collect before you group
Grouping quality depends on the data sitting next to each keyword. A bare list of terms forces you to guess. Aim for these columns before you start:
- Search volume. Intent decides what to group; volume helps you pick each group's primary keyword and prioritize which groups to build first.
- Keyword difficulty or competition. A rough signal for sequencing: win the easier groups early while authority builds.
- Current ranking and URL, from Search Console. If your site already ranks somewhere for a term, note which URL. This exposes existing cannibalization instantly: two of your URLs trading places for one query is a merge waiting to happen.
- Top 10 ranking URLs per keyword. The raw material for SERP-based clustering, covered below. Manual grouping can skip this; clustering at scale cannot.
- CPC, optionally. A high cost per click flags commercial value that raw volume hides, useful when you prioritize groups by revenue potential.
If your list itself is weak, grouping will faithfully organize weak keywords. The collection step, seed terms, competitor gaps, and question mining, is covered in our guide to keyword research for a B2B website. Clean the list first: strip competitor brand terms you cannot rank for, obvious typos, and queries with zero relevance to your offer.
How to group keywords by hand: a step-by-step process
For lists under a few hundred terms, manual grouping in a spreadsheet beats setting up any tool. It is also the best training you can get, because it forces you to read queries the way your buyers write them. The process:
1. Sort alphabetically and skim
Patterns surface immediately. Every "CRM for [industry]" term lines up together. Every "CRM vs [competitor]" term reveals itself as comparison intent. A few minutes of skimming a sorted list hands you 60 to 70% of your groups (an estimate from doing this many times, your list will vary).
2. Tag each keyword with intent
Add a column. Mark every term informational, commercial, or transactional. This one step prevents most cannibalization later, because it stops a "how to" query from sneaking into a "best tools" group.
3. Assign each keyword to a group
Work down the list. A keyword joins a group when it shares both topic and intent with that group's other members. Unsure about a term? Search it. Thirty seconds of looking at what Google actually ranks settles most arguments.
4. Pick a primary keyword per group
Choose the highest-volume term whose phrasing matches the group's intent most naturally. That term anchors your title tag and H1. Everything else becomes a secondary keyword to weave into H2s and body copy.
5. Write a one-line brief per group
"Page: CRM comparison guide. Goal: reader leaves with a shortlist of three tools." One sentence per group. If you cannot write that sentence, the group probably mixes intents and needs splitting.
A finished keyword group looks like this:
| Keyword | Monthly volume | Role |
|---|---|---|
| crm comparison | 1,900 | Primary |
| compare crm software | 720 | Secondary |
| best crm comparison 2026 | 390 | Secondary |
| crm feature comparison | 210 | Secondary |
One page, one primary, several secondaries, one intent. That is the unit everything else in your SEO plan is built from.
How to do keyword clustering with SERP data
Manual grouping breaks past a few hundred keywords. Your judgment also gets fuzzy on borderline pairs: do "CRM implementation" and "CRM onboarding" share a page? You can debate it in a meeting, or you can ask Google, which has already answered by choosing what to rank.
SERP-overlap clustering reads that answer at scale. The core logic: if Google shows largely the same URLs for two keywords, Google treats them as one intent, so they belong on one page. Here is the full method, step by step.
Step 1: pull the top 10 URLs for every keyword. A SERP API (DataForSEO, Serper, SerpApi, or your clustering tool's built-in data) returns ranking URLs per query. Pull from the country and device your buyers use, since SERPs differ by locale.
Step 2: sort keywords by volume, descending. The highest-volume unassigned keyword seeds each new cluster. This way clusters form around your most important terms rather than around long-tail noise.
Step 3: compare every remaining keyword against the seed. Count shared URLs between the two SERPs. Position does not need to match; presence in both top 10s counts.
Step 4: apply a threshold. The common convention: 3 or 4 shared URLs out of 10 means same cluster. This number is your main quality dial. Raise it to 5 or 6 and you get tight, high-confidence clusters but more total pages. Drop it to 2 and clusters get broad, which suits low-authority sites that need consolidated pages, at the cost of occasionally merging distinct intents.
Step 5: choose hard or soft clustering. Hard clustering admits a keyword only if it overlaps with the cluster's seed keyword. Soft clustering admits it if it overlaps with any existing member. Soft mode builds bigger clusters but risks chaining: A matches B, B matches C, yet A and C share nothing, and now your "CRM pricing" cluster somehow contains "CRM data migration". For page mapping, hard clustering against the seed is the safer default.
Step 6: repeat until every keyword is assigned or left as a singleton. Singletons either become their own pages (if volume and intent justify it) or get parked for the next research round.
Step 7: review the borders by hand. No threshold is perfect. Skim clusters near your cutoff, check that each cluster's one-line brief still writes itself, and split anything that reads like two intents stapled together.
An illustrative example of what the overlap math produces:
| Keyword | Shared top-10 URLs | Decision at threshold 4 |
|---|---|---|
| compare crm software | 7 of 10 | Same cluster |
| crm feature comparison | 5 of 10 | Same cluster |
| best crm for small business | 3 of 10 | Separate cluster |
| what is a crm | 0 of 10 | Separate cluster |
One caveat worth planning around: SERPs move. A cluster map built on January data will have drifted by summer, especially in niches Google keeps reinterpreting. Treat clustering output as a snapshot, and recheck clusters for pages that underperform.
Semantic clustering: the fast, cheap alternative
The second family of methods groups keywords by language similarity, using embeddings or simpler text analysis. No SERP data needed, so it costs almost nothing and chews through 50,000-keyword lists in minutes. The trade-off is accuracy: it groups by words rather than by what ranks, so it happily merges "java course" the programming language with "java course" the island tour if your list is messy, and it misses cases where differently-worded queries share a SERP.
A practical hybrid gets you most of the way: run semantic clustering for a fast first pass, then verify commercially important and borderline clusters against live SERPs. You spend API credits only where mistakes are expensive.
SEO keyword grouping tools compared
SEO keyword grouping tools split into three camps: SERP-based platforms, semantic engines, and do-it-yourself pipelines. Which one fits depends on list size, budget, and how often you recluster. Pricing shifts often, so treat the cost column as a rough tier and check current plans.
| Option | Method | Comfortable scale | Cost tier | Best fit |
|---|---|---|---|---|
| Keyword Insights | SERP overlap plus NLP | Thousands to tens of thousands | Paid, credit-based | Agencies and large content plans |
| Semrush Keyword Manager | SERP-informed clustering | Thousands | Included in Semrush plans | Teams already on Semrush |
| SE Ranking grouper | SERP overlap, adjustable threshold | Thousands | Paid, per-check credits | Budget SERP clustering with threshold control |
| DIY: spreadsheet plus SERP API | SERP overlap, your rules | Limited by your patience and API budget | API costs only | Technical teams wanting full control |
| Embeddings or LLM clustering | Semantic similarity | Effectively unlimited | Near free | First pass on huge lists, long-tail sorting |
Under a few hundred keywords? Skip the table. A spreadsheet and an afternoon beat every tool at that scale, and you learn your market's language while you work.
From keyword groups to hub-and-spoke architecture
A finished cluster map is an inventory. Site architecture is what turns it into rankings, and the hub-and-spoke model (also called pillar and cluster) is the standard way to arrange it.
The hub is one broad page targeting your topic's head keyword group, say "CRM software" or a full buyer's guide. Spokes are the specific pages around it: "CRM comparison", "CRM pricing", "CRM implementation", "CRM for manufacturing". Every spoke links up to its hub, the hub links down to every spoke, and spokes cross-link where topics genuinely touch. Google reads that structure as topical depth: you have covered the subject from every angle, and your internal links declare which page answers which query.
Your cluster map hands you this architecture almost automatically. Broad informational clusters become hubs. Narrow commercial and long-tail clusters become spokes. Industry-modified keywords deserve a special note here: clustered industry keywords ("CRM for construction", "CRM for logistics", "CRM for healthcare") almost always separate cleanly into per-industry spokes, because each industry's searchers expect examples, integrations, and objections specific to their world. Those pages convert far better than a generic page stuffed with industry mentions.
Two rules keep the structure honest. Every spoke needs enough substance to stand alone; a two-paragraph spoke is a thin page wearing an architecture costume. And hierarchy must match intent: a hub answers the broad question and routes readers onward, so how your URLs, navigation, and links express that is the backbone of your site structure for SEO. Once a cluster is assigned to its page, the per-page execution, title tag, H1, and heading placement for secondaries, follows standard on-page SEO practice: primary keyword in the title and H1, secondaries distributed across H2s where they fit naturally.
Keyword organization beyond page mapping
Page mapping is the core job, but keyword organization pays off in two more layers, and both reuse the same spreadsheet.
Funnel stage. Tag each group top, middle, or bottom of funnel. Now your content calendar can balance traffic plays against revenue plays instead of drifting toward whatever is easiest to write. A 200-volume bottom-funnel group of buyers comparing vendors is worth more to pipeline than a 5,000-volume group of students who will never purchase.
Channel reuse. Well-organized keyword groups map almost one-to-one onto paid search ad groups, and your SEO intent tags tell paid teams which terms deserve budget. One clustering effort, two channels served.
Common keyword grouping mistakes
Five failure patterns account for most broken cluster maps.
Splitting one intent across two pages. The classic cannibalization trap. If two planned pages would satisfy the same searcher, they are one page. Check Search Console quarterly for queries where two of your URLs alternate.
Forcing two intents onto one page. The mirror error: cramming "what is X" and "best X tools" onto one URL because both contain X. The page rambles, ranks for neither, and converts nobody.
Grouping by word similarity alone. Words lie about intent. "CRM demo" (someone wants to see a product) and "CRM demo script" (a salesperson preparing to give one) share almost every letter and zero audience.
Ignoring the SERP verdict. Two keywords feel related to you, but Google shows entirely different results for each. Google wins that argument every time. Thirty seconds of searching settles it.
Never revisiting the map. Queries appear, intent shifts, Google reinterprets. A cluster map from two years ago is wrong in places today, guaranteed. Reclustering the sections that matter takes an afternoon, and stale maps quietly leak traffic while nobody watches.
FAQ
What is keyword grouping in SEO?
Keyword grouping is sorting your keyword list into sets where each set can be fully answered by a single page. One group equals one page targeting one search intent, which prevents cannibalization and lets each page rank for many related queries.
How do I group keywords without a paid tool?
Sort your list alphabetically in a spreadsheet, tag each term by intent (informational, commercial, transactional), then assign keywords to groups that share both topic and intent. Google borderline pairs and compare results: heavy overlap in the top 10 means one page. Under a few hundred keywords, this manual pass is genuinely faster than configuring a tool.
What is the difference between keyword grouping and keyword clustering?
Mostly vocabulary. Both mean organizing keywords into page-level sets. When people do draw a line, "clustering" refers to the automated, SERP- or similarity-based step, while "grouping" covers any bucketing, including manual work and PPC ad group organization. Treat them as one task.
How many keywords should be in one keyword group?
No fixed number, three keywords or fifty can both be right. The only test is shared intent: every term in a group must be satisfiable by one page with one purpose. If you catch yourself stretching to justify a term's membership, it wants its own page.
What data do I need for keyword clustering?
At minimum, the keyword list with search volumes. For SERP-based clustering, add the top 10 ranking URLs per keyword from a SERP API or clustering tool. Current-ranking data from Search Console and difficulty scores help you prioritize, and CPC flags commercial value that volume hides.
How often should I redo my keyword groups?
Review the map every 6 to 12 months as part of a content refresh, plus whenever Search Console shows two of your pages trading positions for one query. New product lines, new markets, and visible SERP shifts in your niche are all triggers to recluster the affected section rather than the whole map.
Checklist before you publish your cluster map
- Every keyword is assigned to exactly one group, and every group maps to exactly one page.
- Each group holds a single intent (no "learn" and "buy" sharing a URL).
- Each page has one primary keyword, chosen by volume and phrasing fit, plus listed secondaries.
- Borderline groups were checked against live SERPs, word similarity alone decided nothing.
- Groups carry funnel-stage tags, and production is sequenced by business value rather than raw volume.
- Hub and spoke relationships are drawn, with internal links planned in both directions.
- A recheck date is on the calendar.
Keyword grouping is the quiet step that decides whether your SEO compounds or cannibalizes. Done well, one page does the work of ten. Done badly, ten pages do the work of none, and you find out six months and a production budget later.
If you are sitting on a big keyword list and a site that ranks below where it should, misgrouped keywords and overlapping pages are the usual suspects. Book a 15-minute call with Lead The Way: we will map your keywords against your existing URLs and show you exactly where pages overlap, where groups are missing, and what to build first.