7 days free Every tool opens the moment you sign up — no payment, no card Start free
ToolsScraperWarmerInvitingGuidesAboutPricingLog in
ENRU
Audience building

Telegram scraper: collect chat and channel members

Four collection modes, a checker that verifies the usernames you collected with live accounts, segmentation and CSV export. The job is computed on the server, so your machine does not have to stay on.

Updated 20 September 2026

01

What a Telegram scraper is and why you need one

Without a recipient list there is no campaign. A scraper is what builds that list.

A Telegram scraper opens a public chat or channel using an ordinary account and copies out the public profile data it can see there: username, display name, whether the person was active, and their last-seen time when they have not hidden it. What you get is a list of people you can message directly, show a story to or mention in a group post.

It is the only honest way to get a fresh audience for a specific topic. A purchased database is somebody else's contacts of unknown age: half the accounts are deleted, some are bots, and the rest have already received a dozen identical pitches. A list collected today from a topical chat behaves differently — the people are real, the subject is already relevant to them, and the reply rate shows it.

The boundary matters. A scraper sees exactly what Telegram shows any member of that chat. It does not break into private groups, does not extract phone numbers and does not bypass privacy settings. Telegram never hands out the full subscriber list of a channel to anyone — that is a platform limit, and no software removes it. Anything that promises otherwise is either lying or running a grey scheme that your accounts will pay for.

In TGBLAST, scraping lives at /parsing in the Audiences menu. It is wired into the rest of the dashboard: a collected list turns into an audience with one button, the audience is picked inside a campaign, and replies land in the Inbox. There is no separate program to install and no CSV shuffling between tools.

02

The four scraping modes

The mode follows the source. Chats take one pair, channels take the other.

MODE 01

Chat members

The full member list of a public group. The widest reach and the coldest one: it will include people who joined a year ago and never came back. The limit runs from 5,000 to 200,000 and defaults to 50,000. In chats above roughly ten thousand people Telegram does not return the list in full, so the system tops it up with letter-by-letter search — that job takes longer.

Member limit5,000 – 200,000
MODE 02

People who posted

The authors of the recent messages. It works even where the admins have hidden the member list, which makes it the fallback that matters.

You set the depth: "Recent messages" from 100 to 20,000 (2,000 by default), a time window, and "Minimum messages per person". That last field cuts out passers-by: set it to 3 and only people who actually took part in the conversation make it into the list.

Recent messages100 – 20,000Minimum messages
MODE 03

Channel commenters

People who wrote comments under the channel's posts. The warmest selection of the four: the person did not just subscribe, they spent time writing a reply.

You set "Recent posts" from 10 to 500 (100 by default), a window, and a minimum number of comments per person. The channel must have a discussion chat attached — without one the mode returns an error.

Recent posts10 – 500Minimum comments
MODE 04

Channel audience

The combined mode: members of the discussion chat plus the commenters under the posts. It gives more people than commenters alone and stays tied to the channel's topic. Three settings in the form: post depth, time window and a member limit for the discussion chat. This is the right default if you are working with a channel and are not sure what to pick.

Posts + discussion chat

The rule is simple. Source is a group: start with Chat members and switch to People who posted if it fails. Source is a channel: only Channel commenters or Channel audience. Pointing Chat members at a channel always returns "The channel subscriber list is hidden by Telegram".

03

How it works in the dashboard

Six moves from an empty screen to a finished list.

  • Prerequisites. You need at least one account with the Active status and an active subscription. Otherwise the form answers "No active account found" or "Subscription is not active".
  • New scrape, then the mode. Pick one of the four cards in the "What to collect" block. The "Source: …" line under the cards tells you exactly what to enter next.
  • The source. Paste @username, a t.me/name link or an invite link t.me/+… into the Chat or Channel field. The start button activates from three characters. An invite link makes the account actually join the chat — that is visible to the admins, so keep it in mind.
  • Account and filters. "Account" is either "Any active" or a specific one (accounts with a proxy are marked "· proxy"). The "Result filters" block holds "With username only" (on by default), "With a photo only", "Premium only" and a "Last seen within" list. Bots and deleted accounts are never collected.
  • Launch and watch. The job list refreshes every 4 seconds. Badges: Queued, Running with a "Processed: N · found: N" counter, Done, Error. The square button stops the scrape and saves whatever was collected.
  • The result. The "Results · @source" card holds a table with User, Username, Source, Messages and Last seen columns. The screen shows the first 200 rows; the full list comes out through the CSV and To audience buttons.

Every field, status and error message is broken down in the scraping guide, including what to do about access errors on private chats.

04

Numbers and limits

The honest frame the scraper works inside.

2 hoursthe hard ceiling for one job. After that it times out and what was collected is saved partially
200,000the highest member limit in Chat members mode. The lowest is 5,000
1 accounthandles a whole job. On a FloodWait it turns Restricted and the job ends in Error
100 jobskept in the history. There is no search across jobs or collected people
  • The full subscriber list of a channel is out of reach — here and everywhere else. Only commenters and the discussion chat are available.
  • A private chat can only be scraped if the account already belongs to it. Otherwise you get "The channel/chat is private — the account has no access".
  • The "Last seen within" filter drops everyone who hides their last-seen time. If the result suddenly shrinks, clear that filter.
  • The CSV and To audience buttons only appear on jobs with the Done status. The partial result of a stopped job cannot be exported.
  • A job cannot be edited after launch and there is no Repeat button — create a new one.
05

What to do with the list

A raw list is not a database yet. Two steps sit between scraping and the campaign.

The checker: dropping dead profiles and bots

The Checker runs your usernames past live warmed-up accounts and sorts the result into statuses: OK — alive and through the filters, Filtered — alive but excluded (the reason is in the Details column), No — that username does not exist. The Flags column shows premium, bots, restricted and scam. The checker needs one warmed-up account per 20 usernames, and results only live for an hour — save them right away.

Segments: splitting the list per account

Sending a whole database from one account is a reliable way to lose it. Both scraping and the checker can split a list: the Split tab, a "Size of each part" field (25 by default) and a name prefix. What comes out is a set of audiences of 20–50 people each, handed to different accounts in different campaigns.

If you are building one topic out of a dozen chats, create the audience up front and pick it in the "Save to audience" field on every job — people are appended automatically and duplicates are skipped.

06

Common mistakes

Five things almost everyone trips over in the first week.

  • Scraping with the same account your campaigns run on. A job uses one account end to end, and a FloodWait turns it Restricted — the campaign on it stalls. Keep a separate account with its own proxy just for collection.
  • Maxing out the limits on the first job. 200,000 members or 20,000 messages means hours of work and a real chance of hitting the two-hour ceiling. Start at 2,000 messages or 100 posts.
  • Sending a raw list into a campaign. Every chat has deleted accounts, bots and people who have not logged in for a year. A high share of failed sends is its own signal to Telegram that the account behaves like a spammer.
  • Overlooking the invite link. A t.me/+… link makes the account join the chat — admins see it, and in closed communities that ends in a ban.
  • Deleting a job before saving it. Deletion is final: both the job and the people collected are gone. Audiences created from it earlier survive; the result itself does not.
07

Questions and answers

What support gets asked most often.

Does my computer have to stay on while a scrape runs?

No. The job runs on the server: you start it and can close the tab. The job list refreshes every 4 seconds, so when you come back you will see the Done status and the result. Each job gets 2 hours; if the chat is huge and the scrape does not finish in time you get the timeout message and whatever was collected is saved partially.

Can I scrape a channel's subscribers?

Telegram does not hand the full subscriber list of a channel to anyone — that is a platform limit, not a limitation of the scraper. That is why channels are covered by the Channel commenters and Channel audience modes: they collect the people who wrote comments under posts and the members of the discussion chat. It is a much smaller group than the whole subscriber base, but it is the live, engaged part of it.

What do I do when the member list is hidden by the admins?

Run the same chat in the People who posted mode. It never touches the member list — it reads the recent messages and collects their authors. A hidden member list is the most common reason the Chat members mode fails.

How many accounts does scraping need?

One job uses exactly one account with the Active status. We recommend keeping a dedicated account with its own proxy just for scraping: if Telegram issues a FloodWait, that account turns Restricted and the job ends with an error — better that than losing an account your campaigns are running on.

How do I turn a scrape into an outreach list?

A finished job has a CSV button and a To audience button. To audience saves the result as one list, or splits it straight away (Split into parts, 25 people by default). Before you launch a campaign, run the list through the Checker: it verifies usernames with live warmed-up accounts and filters out profiles that do not exist, bots and people who have not been online for a long time.

Does the scraper collect phone numbers?

No. Scraping collects the public profile data that any chat member can see: username, display name, activity and last-seen time when the person has not hidden it. Telegram does not expose phone numbers by default and a scraper cannot get around that. We also do not sell ready-made databases — you build the audience yourself and you are responsible for how you use it.

Build your first list today

Scraping, the checker, audiences, warm-up and campaigns all sit in one plan — there is nothing extra to buy. Got a promo code: full access for 7 days, no payment.

no annual lock-in · cancel any time · support on Telegram