← Semantic search
Explainer

How semantic channel search works

Semantic search finds channels by what they are about, not by the letters in their names. Here is what happens between pressing Search and seeing results, without the jargon.

1. We read what each channel is about

Ahead of time, for every channel with a description and topics, we build a picture of its subject from its public profile: title, category, topics and description. Topics count for more than the description, because descriptions are often padded with contacts, ad prices and links.

2. Your query gets the same treatment

When you search, your words are turned into the same kind of picture. “Baking recipes”, “cake ideas” and “what to bake on Sunday” end up very close to each other, even though they share almost no words.

3. We look for the closest channels

We search the whole index and keep the 500 channels closest to your query by meaning. This takes a fraction of a second.

4. Name search runs at the same time

In parallel, the classic search looks for your text inside channel usernames and titles. It catches channels that have no description yet and names that carry no meaning, like brand names and nicknames.

5. The two lists are merged

A channel that ranks high in both lists rises to the top; one that shows up in only one keeps its place from that list. If your query is exactly a channel’s username, that channel goes first, whatever the rest says.

The same reading of channels draws our map of Telegram channels: channels with similar meaning sit next to each other there.

What we deliberately leave out

A channel's country is not part of its meaning. If it were, a query like “football news” would drag in every channel from whichever country appears most in the index. Country and language work as filters instead, so you choose them, not the search.

The same goes for the generic texts many catalogs attach to channels (“a popular channel with a growing audience…”). They make every channel look alike, so they are not used for matching.

Popularity plays only a small part: between two channels that match equally well, the bigger one comes first. It never lifts an off-topic channel above a relevant one.

Coverage
  • 3 million channels are searchable by meaning. A channel without a description or topics is still found by its name.
  • Channels added after the last index update are found by name until the next one. Why a channel may be missing.
  • We use only what a channel shows publicly. Searching does not read anyone's posts or private chats.

See it for yourself

Search apartment renovation and look at the titles: most are in Russian and none contains the word “apartment”. Then search for a username you know, such as durov, and it comes first, with name matches below it. More on the difference in semantic vs keyword search.