Telegram Channel Search: How to Find Channels and Posts by Keyword
Updated
Telegram channel search has three levels: finding channels, searching posts inside one channel, and searching many channels for the same keywords. Telegram’s apps handle the first two well for a person at a keyboard. The third, and anything you want to repeat on a schedule, is where you need other tools. This guide covers each level, what the official Telegram API can and cannot do, and a workflow for finding, measuring and monitoring channels.
The facts about Telegram below come from Telegram’s own FAQ and API documentation, linked where they appear.
Search inside the Telegram apps
Global search: find channels
The search box at the top of the chat list searches your chats, messages and public usernames (Telegram FAQ). The Channels FAQ explains the split: “Public channels have a username. Anyone can find them in Telegram search and join.” Private channels need an invite link or an invite from the owner, so they never show up in search.
Tips for finding channels:
- Search for the topic word and for likely usernames. Many channels put their topic in the name or username, so try a few spellings and languages.
- Open the Channels tab of search results. Telegram’s search documentation says this tab shows channels you joined and “similar channels”, recommendations based on the channels you already follow.
- Open a channel you like and look at its similar channels list for more candidates.
Search posts across public channels
Telegram also has a Posts tab that searches post text globally in all public channels, including ones you have not joined. It is a paid feature: the search documentation says “Global post searches are paid: Premium users get a free amount of searches, after which each search costs a certain amount of stars.” The number of free daily searches is set by Telegram’s server and is not published as a fixed figure.
Hashtags
Tap a hashtag in a post and Telegram searches that hashtag in the current chat. Telegram’s API can also search a hashtag globally across public channels, including ones you have not joined (channels.searchPosts). Telegram describes the free slots and Stars payment only for full-text queries, not for hashtags. Hashtags only help when channels use them, and many do not.
In-channel search
Inside any channel you have open, the search icon finds posts that contain your words. You can filter by type, such as photos, links or files. This is the fastest way to check one channel by hand.
The web preview: t.me/s/ and its built-in search
Every public channel has a web preview at t.me/s/<channel>, for example t.me/s/telegram. It shows the newest posts with text, media, view counts and reactions, in any browser, with no Telegram account. It also has a search box, and the search runs through a q parameter you can type yourself:
https://t.me/s/telegram?q=update
When we checked on the day we wrote this, that link returned the matching posts from Telegram’s official channel. Telegram does not document the preview or the q parameter in its FAQ or API pages, so treat it as a public web page that can change.
What the preview covers:
- Public channels only. Private channels have no preview.
- Not groups. The preview is built for channels, so group chats are not covered.
- Not bots or user accounts.
- One channel at a time. To search 50 channels, you open 50 pages.
Most public channels have a preview, but not all. A channel without one has no posts to search on the web.
What the official Telegram API can do for search
Telegram has two APIs, and they answer this question differently.
The Bot API
The Bot API has no search method at all. A bot receives updates, and the Bots FAQ says all bots receive “all messages from channels where they are a member.” So a bot can only see channels it was added to, and only new posts from then on. The Bot API reference adds that updates are kept on Telegram’s server for at most 24 hours until the bot collects them. A bot cannot search other people’s channels.
MTProto, the user API
The MTProto API is what Telegram’s own apps use, and it has real search methods. Each of them carries the note “Only users can use this method”, which means you log in as a Telegram user with a phone number.
| Method | What it does | Limits from Telegram’s docs |
|---|---|---|
| contacts.search | Returns users, and the chats in its results, found by username substring | Short queries are rejected |
| messages.search | Searches messages in one chat or channel | Returns CHANNEL_PRIVATE for channels you have not joined |
| messages.searchGlobal | Searches across your chats; broadcasts_only limits it to channels |
Covers your own chats and channels |
| channels.searchPosts | Searches posts in all public channels by hashtag or full text | Full-text queries use a limited number of free slots, then cost Telegram Stars |
So the user API can search other people’s public channels, but it needs a real account, the hashtag or paid full-text route for global search, and code that handles MTProto sessions. Automated searches also run under your own account, so any limit or ban Telegram applies lands on that account.
Telegram channel stats: subscribers and views
Each post shows a view counter. The Channels FAQ says views from forwarded copies count too, and that the numbers are approximate: after about 4 days Telegram counts a repeat viewer again.
Detailed statistics, such as follower growth, views per post and shares per post, exist in the API as stats.getBroadcastStats. The stats documentation says only “administrators of channels of a certain size” can call it, with the size limit set on Telegram’s server. You cannot get those statistics for a channel you don’t run.
For channels you don’t own, you can still work out reach from public numbers: subscribers from the channel page and views from recent posts. Average views divided by subscribers is the quickest check for inflated channels.
Search many Telegram channels at once
Our three Telegram Actors run on Apify and read the public web preview, so they need an Apify account but no Telegram account, phone number or API keys. They only work with channels that have a public preview. Private channels, groups and bots are skipped.
- Telegram Channel Search searches many channels for many keywords in one run. Each matching post comes with a snippet around the keyword, date, views, reactions, media type, hashtags, forwards and link, plus the channel’s title and subscriber count.
- Telegram Channel Scraper collects every post of a channel, newest first: full text, date, views, reactions, photos, videos, files, links and forwards, with keyword and date filters.
- Telegram Channel Stats returns one row per channel: subscribers, posts per day, average and median views, views per subscriber, reactions, last post date, content mix, top hashtags and top posts, computed from the newest posts (60 by default, up to 500).
Store prices on the day we wrote this:
| Actor | Unit | Free plan | Starter | Scale | Business |
|---|---|---|---|---|---|
| Telegram Channel Search | 1,000 matching posts | $2.50 | $1.50 | $1.30 | $1.10 |
| Telegram Channel Scraper | 1,000 posts | $1.50 | $1.00 | $0.85 | $0.75 |
| Telegram Channel Stats | 1,000 channels | $8.00 | $5.00 | $4.50 | $4.00 |
Each run also has a start fee of $0.05 per 1,000 runs per GB of memory. Channels without a public preview cost nothing in Telegram Channel Stats. The cards below show current prices.
A workflow: find, measure, monitor
- Find candidate channels. Use Telegram’s global search, the similar channels list and hashtags to collect usernames in your niche. Aim for a longer list than you need.
- Measure them with Telegram Channel Stats. Run the whole list at once. Drop channels with low views per subscriber, no posts in the last month or a content mix that does not fit. This is the step that protects an ad budget.
- Monitor keywords with Telegram Channel Search. Put the channels that passed into one run with your brand, product or topic keywords, and set “Only posts after” to skip old posts. Schedule it daily in Apify Console and send new matches to Slack, email or a spreadsheet.
- Pull full history when you need it. For a deep look at one channel, run the Telegram Channel Scraper with a date filter.
If you monitor Reddit as well, the same approach works there: see our guide to the Reddit search API.
Which method to use
- Checking one channel by hand: the in-app search or
t.me/s/<channel>?q=<keyword>. - Finding new channels: Telegram’s global search and similar channels.
- Posting to your own channel or running a bot: the Bot API. Our Actors only read.
- Searching many public channels on a schedule, without an account: Telegram Channel Search.
Whatever you use, collect only public posts and follow Telegram’s terms and data protection law.
FAQ
- How do I search for Telegram channels?
- Use the search box at the top of the chat list in any Telegram app and type a name, username or topic. Public channels have a username, and Telegram's FAQ says anyone can find them in Telegram search and join. Private channels do not appear: you need an invite link.
- Can I search posts in a Telegram channel without joining?
- Yes, for public channels. Open t.me/s/<channel> in a browser to see the channel's web preview, and add ?q=<keyword> to search its posts, for example t.me/s/telegram?q=update. This works without a Telegram account. It does not work for private channels or groups.
- Can I search private Telegram groups?
- Only if you are a member. Private groups and channels are closed: you join through the owner or an invite link. Telegram's API returns a CHANNEL_PRIVATE error when you search a channel you have not joined, and our Telegram Actors skip private channels and groups.
- How do I check a Telegram channel's subscribers and views?
- The subscriber count is on the channel's t.me page and in its profile in the app, and each post shows a view counter. Telegram's detailed statistics are only for admins of channels above a size limit. For channels you don't own, our Telegram Channel Stats returns subscribers, average and median views, views per subscriber and posting frequency per channel.
- Is there a Telegram scraper that needs no phone number?
- Yes. Our Telegram Channel Scraper, Telegram Channel Search and Telegram Channel Stats read the public web preview of each channel, so they need an Apify account but no Telegram account, phone number or API keys. They only cover public channels.