Search & SEO Concepts
Keyword Clustering
In shortGrouping keywords that share a meaning, intent or set of ranking URLs, so one page or section can target each group.
Keyword clustering is the process of grouping a keyword list into sets that belong together, usually because they express the same need or are satisfied by the same page. It turns thousands of rows of keyword research into a manageable set of topics you can map to pages, prioritise and report on.
How it works
There are three broad approaches, and they answer slightly different questions:
- Semantic clustering. Each keyword is turned into an embedding with a model such as Sentence-BERT, then grouped with an algorithm like k-means, hierarchical clustering or HDBSCAN. Keywords close in meaning end up together.
- SERP-based clustering. Keywords are linked when their top 10 results share several URLs. If Google shows the same pages for two queries, one page can usually target both.
- Keyphrase or rule-based grouping. Tools such as KeyBERT extract the core unigram and bigram from each keyword, and those shared terms become cluster labels. N-gram analysis works in a similar spirit.
How it’s used in SEO and marketing
- Deciding which keywords one page should target and where you need separate pages (keyword mapping).
- Prioritising topics by summing search volume, averaging keyword difficulty or counting competitors per cluster.
- Spotting cannibalisation, where several of your URLs compete for one cluster.
- Planning topic clusters and briefs in a semantic keyword universe.
- Comparing markets: the same cluster can need one page in one country and two in another.
Example
In MLforSEO’s SERP analysis guide, keywords are linked when they share at least three of the same top-10 URLs, then grouped. The threshold is a judgement call: start at three and tune it by checking a few pairs by hand. In the KeyBERT tutorial, the clusters are then visualised in Looker Studio with search volume, difficulty and CPC per cluster.
Limitations and things to watch
- Fuzzy string matching is a poor way to cluster at scale, because it compares characters rather than meaning. MLforSEO’s fuzzy matching guide says so explicitly.
- Semantic and SERP-based methods can disagree. Two keywords can mean similar things but need different pages because the intent differs.
- Most algorithms need a parameter you choose (number of clusters, similarity threshold, minimum cluster size), and results change with it.
- Always review a sample of clusters by hand before building a content plan on them.
Learn it on MLforSEO
Where Keyword Clustering shows up on MLforSEO
Learn it in a course
Read about it on the blog
Try it yourself
- Coding Script or NotebookKnowledge Graph API Extraction and Entity Relationship Analysis for Semantic Keyword Research (Notebook)
- Visualization TemplateKeyword Cluster (KeyBERT) Looker Studio Demo Visualization Dashboard for SEO
- E-bookIntroduction to Machine Learning for SEOs (E-Book) — by Lazarina Stoy
- Code on GitHubAutomatically generate meta descriptions with Python: from BERT to LLMs
Sources and further reading
Other terms from Search & SEO Concepts
- Answer Accuracy Score (Search)How often a model's predictions are correct; in Google's short-answer patent, a predicted score that decides w…
- Augmented Search QueriesExtra queries a search engine (or user) builds from the entities and attributes in an original query, used to…
- E-E-A-TExperience, Expertise, Authoritativeness and Trust: the qualities Google's quality raters assess in content an…
- Featured SnippetA featured snippet is a highlighted answer Google shows near the top of the results, quoting a passage from on…
- Implicit User FeedbackImplicit user feedback is search behaviour, such as clicks, dwell time and query reformulation, that search sy…
- Information Gain (IG)How much new, useful information something adds beyond what is already known; in SEO, a page's novelty compare…
- Internal LinkingInternal linking is linking between pages on the same website, which helps people and search systems find cont…
- JSON-LDJSON for Linking Data: the script-based format Google recommends for structured data, describing a page's enti…
- Keyword MappingAssigning each keyword to the topic, cluster or page that should serve it, so your keyword research has a clea…




