Telegram Channel Search Scraper (topic, subscribers, no login) avatar

Telegram Channel Search Scraper (topic, subscribers, no login)

Pricing

from $3.00 / 1,000 result items

Go to Apify Store
Telegram Channel Search Scraper (topic, subscribers, no login)

Telegram Channel Search Scraper (topic, subscribers, no login)

Telegram channel search by topic keyword: every public channel as one row with subscriber count, title, description, last post and photo. Telegram groups search is included, with a member-count filter. No login, no bot token, no API key; you pay only for the rows you get.

Pricing

from $3.00 / 1,000 result items

Rating

0.0

(0)

Developer

Viktor Dubnytskiy

Viktor Dubnytskiy

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Find public Telegram channels and groups by topic and get one flat row per community: subscriber count, title, description, photo, last post time and whether it is a channel or a group. No Telegram account, no phone number, no bot token, no API key — the actor reads only the public t.me pages Telegram serves to anyone.

What you get

One row per channel or group: id/username, url, title, subscribers, subscribersText, description, kind (channel or group), photoUrl, lastPostAt, verified, available (always true: dead t.me links and unread pages are never emitted), detailsFetched, query, rank, source, scrapedAt.

Example output

Real rows (query crypto signals, plus @durov):

FieldChannelGroup
urlhttps://t.me/durovhttps://t.me/chat_crypto
titlePavel DurovCrypto Chat — Degen Calls
subscribers10800000 (10.8M)1426 (1 426 members, 37 online)
kindchannelgroup
descriptionFounder of Telegram.Crypto Chat- DEGEN community for finding alpha…
lastPostAt2026-09-11T16:04:02+00:00– (no public preview)
verifiedtruefalse

Use cases

  • Build a list of the Telegram communities in one niche and sort them by size before buying a post or joining.
  • Telegram groups search for a city or a language: find where a topic is actually discussed, with the member count next to each group.
  • Track a set of channels and get an alert when the subscriber count, title or description changes.
  • Find small communities to work with: set maxSubscribers and skip the crowded channels.

How it works

  1. Discovery — each topic is searched in a public search-engine index restricted to t.me, so you get the channels Telegram itself has published to the open web. Post links (t.me/name/1234) and preview links (t.me/s/name) collapse into one channel; private invite links (t.me/+hash, joinchat) and site sections are skipped.
  2. Enrichment — every hit's public page is opened before it can become a row: the preview t.me/s/<name> when the channel serves one (that is where lastPostAt comes from), otherwise the plain t.me/<name> card, which is what Telegram serves for groups and for channels with previews disabled. subscribers/members from that page also decide kind.
  3. FilterminSubscribers / maxSubscribers are applied after enrichment.
  4. Empty search answers are retried once; a challenge on every query is reported as a block, a genuine zero-hit answer ends as no_matches. An empty dataset never hides a wall, and never claims one either.

Input

FieldMeaningDefault
queriesTopics to search, e.g. crypto signals, київ новини["crypto signals"]
channelUrlsKnown t.me links or @usernames to enrich directlyempty
resultsPerQuerySearch hits scanned per topic (1-200)10
minSubscribers / maxSubscribersSize bounds applied after enrichmentempty
maxItemsStop after this many rows20
modescrape or monitor (only new/changed since last run)scrape
monitorKey, webhookUrl, telegramBotToken, telegramChatIdMonitor-mode state key and alert targetsempty

Pricing

EventPrice
result$0.003 per channel ($3 per 1,000)
monitor-check$0.006 per monitor run
change$0.003 per new/changed channel

Charged only for rows actually pushed. No proxy is needed, so platform usage stays small.

Why this actor

  • No login, no phone number, no bot token and no API key — nothing to keep alive, nothing to get banned.
  • Channels and groups come out of the same run, and kind tells them apart.
  • Size filters in the input, so you can ask for "communities between 1,000 and 20,000 members" directly.
  • Monitor mode with webhook and Telegram alerts on subscriber, title and description changes.
  • A run that finds nothing pushes nothing and charges no result events; the run summary explains why.

Limits

  • A search hit whose t.me page could not be read (dead link, or the page did not answer after retries) is dropped, not returned half-empty: every row comes from a page that was actually read, so the personal-account check has always run.

  • Telegram has no public channel search of its own, so discovery depends on the search-engine index: channels that are never linked from the open web will be missing. Give the topic in the language the channel is written in.

  • subscribers is the number Telegram prints on the public page; large channels show it rounded (10.8M), and the raw text is kept in subscribersText.

  • lastPostAt exists only for channels that serve a public preview. Groups and preview-less channels return null there.

  • While minSubscribers or maxSubscribers is set, rows whose count could not be read (a channel that is gone, or a page that did not answer) are dropped, because an unknown count cannot satisfy a bound.

  • Personal Telegram accounts and bots are never returned: every candidate's t.me page is opened first, and a page without a subscriber or member counter is skipped, not emitted. There is no setting that turns this off. No members, no admins, no message authors.

  • Message text is out of scope here — use the telegram-public-channels actor for posts, views and media.

FAQ

Does it need a Telegram account, phone number or bot token? No. There is no credential field at all; every request is a plain public web request.

Can it find groups, not just channels? Yes. Public groups appear with kind: "group" and their member count in subscribers; the raw label (1 426 members, 37 online) stays in subscribersText.

Does it return members or message authors? No. Only channel-level facts. Personal profiles found by the search index are dropped before anything is pushed.

What happens when there are no results? No rows are pushed and no result events are charged. The RUN_SUMMARY record in the run's key-value store carries emptyReason, which separates "the topic has no public channels in the index" from "the search index answered with a challenge".

Changelog

  • 0.1: initial release — topic discovery, channel and group enrichment (subscribers, description, last post, photo), size filters, monitor mode; empty search results are retried and reported as a block instead of an empty dataset.

If this actor saved you time, a short review on its Store page genuinely helps other people find it. Found a bug or need a field that is missing? Open a ticket on the Issues tab.