Why cluster keywords before you write
A keyword list isn’t a content plan. “Keyword grouping tool”, “keyword clustering tool” and “group keywords by topic” are one search with three phrasings, and one good page can rank for all of them. Write three pages instead and they compete with each other, split your links, and risk being treated as near-duplicates. On our own product we ended up noindexing near-duplicate pages; the Versely case study covers what that taught us.
Ahrefs defines keyword clustering as grouping keywords with the same or similar intent so you can target them with one page instead of several. Clustering turns the list into a plan: one group, one page. The group’s label is the main topic, and the other keywords become the phrasings, H2s and FAQs on that page.
How keyword clustering works
There are three common ways to decide that two keywords belong together:
- Same search results. SERP-based tools compare the URLs Google ranks for each keyword. Keyword Insights documents a default of 40% or more shared URLs in the top 7, and claims that beats language-based clustering. It is the closest thing to asking Google, and it needs live results for every keyword.
- Same parent topic. Ahrefs’ Parent Topic is the keyword sending the most traffic to the top-ranking page, and keywords that share one are grouped.
- Same meaning. What this tool does. It needs no search data, so it is fast and free.
How the grouping works here
- Each keyword goes through an embeddings model, BAAI’s bge-base-en-v1.5 on Cloudflare Workers AI. It turns text into a list of 768 numbers where phrases with similar meaning end up close together. It is an English-language model.
- We compare every pair with cosine similarity: 1 means the same meaning, lower means further apart.
- Average-linkage clustering starts with every keyword alone and keeps merging the two closest groups, as long as their average similarity stays above your cut-off. The presets are Tight (0.80), Balanced (0.74) and Loose (0.70), our own starting points from tests on one sample list.
- Each group is named after its most central keyword: the one with the highest average similarity to the rest. That’s usually the most generic phrasing, which makes a good primary keyword.
Turning groups into pages
- Check intent, not only meaning. “What is search intent” and “search intent tool” are close in meaning but want different pages. When the intent model is available (Jev, TypeSafe’s decision model), we label every keyword’s search intent and flag a group whose keywords want different kinds of page: split those by hand.
- Settle borderline pairs in the results. Ahrefs’ advice for two keywords you can’t decide on is to eyeball the search results for both. Do it in the SERP checker: if the same URLs show up for both, they get one page.
- Singletons aren’t failures. An unclustered keyword may be a page on its own, or a long-tail question to answer inside a bigger page.
- Pick the order. Check each group’s label in the keyword difficulty checker and start with the low-difficulty ones that have real searches. Then plan the structure around them with the topic cluster generator.
- Outline next. Paste a group label into the blog outline generator and use the other keywords as H2 and FAQ ideas.
Common mistakes
- Grouping by shared words, not by intent. Two keywords can share every word and want different pages, and two with no words in common can want one.
- Treating the output as final. Ahrefs says clustering results will never be “perfect” and are almost always open to interpretation. Review every group.
- Setting the cut-off too loose or too tight. Too loose and one group mixes page types. Too tight and you get near-duplicate pages that compete with each other (see keyword cannibalization).
- Clustering a messy list. Remove irrelevant and branded keywords first. We lowercase and de-duplicate, but we can’t tell which keywords are off-topic for you.
Honest limits
The model knows language, not Google. It doesn’t see search volume, difficulty or what currently ranks, and it’s an English model. Very short or ambiguous keywords (“apple”) group unpredictably. The limit is 200 keywords of up to 80 characters each. Treat the output as a fast first pass that you review.