Semantic Core
Модуль 3Кластеризация и контент2/6

Query clustering methods: by SERP, by meaning, and on embeddings

5 min read

You've built your core — a thousand queries stacked in a column. Now you have to lay them out across pages: which phrases live on one page, and which need a page of their own. That's clustering. There are three ways to group them, and each answers the question "are these two queries alike" differently.

Let's walk through all three on one example: the queries "buy a bike," "buy a bike cheap," "how to choose a bike for an adult."

Three views on how queries are 'alike'
By meaning (words)
  • Looks at the words themselves and their forms
  • "bike" is in all of them → all in one pile
  • Fast and cheap, gets intent wrong
vs
By SERP (top results)
  • Looks at which sites already rank in the top 10
  • "buy" and "how to choose" → different sites → different clusters
  • Accurate on intent, slower and more expensive
The same list of phrases gets split differently by each method. Your choice of method decides how many pages you'll end up with.

Method 1. By SERP (SERP-based): Hard, Middle, Soft

The most reliable way. The logic is simple: if two queries really are about the same thing, the search engine already shows the same pages for both. So you take the top 10 for each query and see how many URLs overlap. Lots of shared links — one cluster. Few — different ones.

The overlap threshold (how many shared URLs you need, usually 3–5) sets the strictness. And how exactly queries get linked into a group is where the three modes differ.

Hard — strict

Every query in a cluster must overlap with every other one. If one falls below the threshold, it doesn't make it into the cluster. The result: small, clean groups where a mistake is almost impossible. The downside — lots of "loners" that didn't stick to anything.

Middle — moderate

A compromise: connection counts through "bridges." A query joins a cluster if it overlaps with the group's core, even if it doesn't match every member. Clusters are larger, purity is slightly lower. The default working mode for most projects.

Soft — loose

A link with at least one query in the group (via a chain) is enough. The clusters come out large, catching the whole tail, but phrases with a different intent can slip inside. Good for a rough draft of the structure, not for the final version.

A rule of thumb: Hard — when purity matters (commerce, money on the line), Soft — when completeness matters (a large content project, a draft), Middle — when you don't want to think about it.

The cost of the method: to compare search results, you first have to collect them — pull the top 10 for each query. That's search-engine scraping, which is slow and costs money. But the result matches reality as closely as it can.

Method 2. Semantic — by the meaning of words

Here we don't touch the search results. The method looks at the words themselves: it reduces them to their base form (lemma), spots synonyms and phrases close in meaning, and groups the similar ones.

It will confidently put "buy a bike" and "buy a bike cheap" together — the words are the same. But it may also pull "how to choose a bike" into the same group, because the shared word "bike" outweighs everything else. And that's a mistake: the intent is different (buy versus figure out).

The upside — instant and free, no need to scrape results. The downside — it doesn't sense intent, because it can't see that the search engine shows different pages for these phrases.

Method 3. On embeddings — by meaning, but smarter

An advanced version of the semantic method. Each query is turned into a vector — a set of numbers that encodes the phrase's meaning (an embedding). Queries are then grouped by how close these vectors are (with algorithms like DBSCAN).

The difference from plain semantics is that the vector captures the meaning as a whole, not individual words. The model understands that "two-wheeled transport for the city" and "city bike" are about the same thing, even without shared words. And that "buy" and "how to choose" are about different things, even though the word "bike" is shared.

The upside — it catches meaning more finely than anything else, works in any language, and needs no scraping. The downside — computing embeddings costs money (a call to an AI model), and on purely commercial queries it still loses to the SERP-based method: the "buy" intent is seen best right there in the top results.

What to pick for your task

Quick method pick
Go SERP-based (Hard/Middle)
  • Commercial queries, a store, services
  • Getting the structure right matters
  • You're ready to wait and pay for scraping
vs
Go by meaning / embeddings
  • A large informational core, a blog, a wiki
  • You need a quick rough grouping
  • Queries in different languages
There's no single right answer. There's one that fits your type of queries and your budget.

The working combo in practice: first run the core by meaning or on embeddings — you'll get rough groups in seconds and for free. Then re-check the debatable and money clusters by SERP. That way you pay for the expensive method only where the cost of a mistake is high.

Try it on your own queries

Our free clusterizer groups a list of phrases by meaning through AI — that's the third-category method, without scraping results and without the wait. Paste your queries into /free/cluster, see how they split into groups, and estimate how many pages you'll need.

Common questions

Which method is the most accurate?

SERP-based in Hard mode — it leans on what the search engine has already decided. Embeddings come close and are often more convenient, since they need no scraping. Purely semantic by words is the weakest on intent.

If SERP-based is so accurate, why not cluster everything that way?

Because it's expensive and slow: you need to pull the top 10 from search for each query. On a core of 10,000 phrases that's real money and hours. The cheap methods take the load off the expensive one.

What's this threshold of 3, 4, 5?

It's how many shared URLs two queries must have in the top 10 to count as one cluster. A threshold of 3 is looser and clusters are larger, a threshold of 5 is stricter and cleaner. The standard is 3–4.

Next — how to turn finished clusters into a brief for the copywriter, so each page covers its cluster in full.

Read next