Telegram Channel Member Scraper
Pricing
from $200.00 / 1,000 runs
Telegram Channel Member Scraper
Export Telegram channel member lists to Excel for lead generation. Requires adding our bot as channel admin; supports large exports via webhook.
Pricing
from $200.00 / 1,000 runs
Rating
5.0
(1)
Developer
akula.marketing
Maintained by CommunityActor stats
4
Bookmarked
41
Total users
3
Monthly active users
3 days ago
Last modified
Categories
Share
Telegram Channel Member Export
π¬ Questions, bulk pricing, or a custom solution? Talk to us on Telegram β @KoteamSupport.
Export the member list of a public Telegram channel or chat you administer to Excel. See who your audience really is: account types, Premium share, bots, empty accounts, and languages.
What it's for
- Audience analysis: Premium share, languages, and how many members have a username or a profile photo.
- Bot and fake account cleanup: find bots and empty accounts in your community.
- Growth tracking: export every month and compare how your audience changes.
- Community management: get a member list you can filter by bio keywords or online status.
How it works
- Add our Telegram bot as an administrator to your channel. Only a channel admin can do that, so the Actor works only with channels you manage.
- Run the Actor with the channel username.
- In about 5 minutes the run's dataset gets a row with links to an Excel file and a username list. No webhook needed.
Under the hood, the Actor uses the public Telegram API method channels.getParticipants.
To get more functionality use akula.marketing
Limitations
- Bot Administrator Requirement: To collect participant accounts using the Telegram API's channels.getParticipants method, you must add our Telegram bot as an administrator to the channel. This is a safe operation, but you need to have administrator rights in the channel to add the bot.
- Channel Requirements: The channel must be public and have a username (e.g., @channelname). Telegram bots cannot work with private channels or invite links.
- Data Collection Limit: Telegram imposes a limit of up to 200 accounts per channel when using the channels.getParticipants method. The Actor runs several queries to return up to 4,000 accounts from a single channel.
- Parsing Time: The approximate time to complete the parsing task is about 5 minutes.
π‘οΈ Data & compliance
- Your channels only. The bot must be an admin, so you can export only channels and chats you manage.
- Public profile fields only. The export contains what Telegram shows to a channel admin: ID, username, name, bio, account flags. A phone number appears only if the member made it visible in their Telegram privacy settings; hidden fields stay hidden.
- Your responsibility. Use the data in line with Telegram's Terms of Service and the privacy laws that apply to you (for example, GDPR). Don't use it for unsolicited bulk messaging.
π₯ Input
| Field | Type | Description | Required | Default |
|---|---|---|---|---|
username | String | Public channel or chat you administer | Yes | devs |
webhookUrl | String | Optional URL that also receives progress updates | No | β |
The username can be provided as @channelname, channelname, or a Telegram URL like https://t.me/channelname.
π€ Output
You don't need a webhook. The run waits for the export (usually about 5 minutes, up to 12) and pushes one row to its dataset with the result and download links:
| Field | Type | Description |
|---|---|---|
result | String | success, failed, or pending (the export is still running when the run ends) |
state | String | Task state: created, in_progress, completed, error |
channel | String | The channel you exported |
usersCount | Number | Members exported |
usersWithUsernamesCount | Number | Members who have a username |
xlsxUrl | String | Download link for the Excel file (temporary; open resultUrl for a fresh one) |
userIdsUrl | String | Download link for the username list (.txt) |
resultUrl | String | Status page for this export. Works without an API key, any time later |
downloadUrl | String | Opens the latest Excel file directly |
error | String | Error message, null on success |
The Excel file is also saved in the run's key-value store as result.xlsx.
You don't have to keep the run open: the status link appears in the log right after the export starts (and in the key-value store as task-result-link.json). Stop the run and open the link later if you like.
Example Output
{"result": "success","state": "completed","channel": "devs","usersCount": 3820,"usersWithUsernamesCount": 2914,"xlsxUrl": "https://β¦/users.xlsx?X-Amz-β¦","userIdsUrl": "https://β¦/users.txt?X-Amz-β¦","resultUrl": "https://β¦/parsing-tasks/link/β¦","downloadUrl": "https://β¦/parsing-tasks/link/β¦/download","error": null}
Error Messages
If the Telegram bot lacks channel administrator privileges:
Unable to parse channels without channel administrator privileges. To proceed with parsing, please add our Telegram bot as an administrator to the channel (this is safe).
Add our Telegram bot as an administrator to the channel and run again.
If the output is restricted due to subscription limits:
Output is restricted. To use without limitations upgrade to a paid subscription.
File Output
The actor generates two output files:
- Text File: Contains a list of usernames, reusable in other software.
- Excel File: Includes detailed data for each discovered Telegram account:
Channel NameUser IDFirst NameLast NameUsernameHas Profile Photo (Yes/No)Phone NumberPremium Status (Yes/No)Online StatusLanguageBio (About)Message DateMessage Text
To refine the collected data, it is recommended to filter the database based on: Presence of a profile photo, Online status, Keywords in the "Bio" (About) field.
Usage
- Input Username: Provide a Telegram channel username (e.g.,
devs,@devs, orhttps://t.me/devs). - Run the Actor: Start the export.
- Get the file: When the run finishes, open the dataset row and download the Excel file from
xlsxUrl, or openresult.xlsxin the key-value store.
FAQ
Why does the bot have to be an admin?
Telegram shows a channel's member list only to its administrators. Our bot reads the list on your behalf, so it needs admin rights in that channel.
Can I export members of a channel I don't manage?
No. You can only add the bot as an admin to a channel where you're an admin yourself. To research other channels, use Telegram Channel Post & Media Scraper (posts and engagement) or Telegram Username Checker (subscriber count).
Why do I get at most 4,000 members?
Telegram returns up to 200 accounts per request for this method. The Actor sends several requests to get up to 4,000 accounts from one channel.
Does it work with private channels?
No. The channel must be public and have a username, such as @channelname. Telegram bots can't work with private channels or invite links.
I got "Unable to parse channels without channel administrator privileges". What now?
The bot isn't an admin in that channel yet. Add @AkulaMarketingBot as an administrator and run the Actor again.
Can I remove the bot after the export?
Yes. The bot needs admin rights only while the export runs. Add it again before your next export.
π Run it on a schedule
Apify Schedules run this Actor for you: Console β Schedules β Create new β add this Actor or one of your saved tasks β set how often it runs.
Monthly is enough for most channels. Keep the bot as an admin, schedule a saved task with your channel, and send each run's dataset row (member counts and file links) to a Google Sheet through Make or Zapier. You'll see how the share of Premium accounts, bots, and empty profiles changes over time.
π Automate with Zapier & Make
No code needed β trigger this Actor from your existing tools.
- Zapier: search for the "Apify" app β action Run Actor β select
akula.marketing/telegram-get-channel-participantsβ wait for the run to finish β use Get Dataset Items to get the row withxlsxUrland the counts. Docs - Make: add the Apify β Run an Actor module with "Run synchronously" set to
Yes, then chain a Get Dataset Items module to pull the row into your scenario. Docs
Example: monthly scenario runs this Actor on your channel β member counts and the Excel link get appended to a Google Sheet.
π€ Use with AI agents (MCP)
This Actor works as a tool in Claude, ChatGPT, Cursor, and other MCP clients through the Apify MCP server. Add this server URL to your client:
https://mcp.apify.com?tools=akula.marketing/telegram-get-channel-participants
The first time you connect, the client asks you to sign in to Apify. Runs are billed to your Apify account, the same as runs from the Console.
Then ask in plain language, for example: "Export the members of my Telegram channel @mychannel and tell me how many have Telegram Premium". The agent reads the input schema, fills in the fields, and gets the result row with the file links back.
π§© Related Actors
| Next step | Actor |
|---|---|
| See who in your community actually writes, and what they write about | Telegram Channel Message & Comment Scraper |
| See which of your posts get the most views and reactions | Telegram Channel Post & Media Scraper |
| Find channels with an audience similar to yours, for cross-promotion | Telegram Similar Channels Finder |
Support
Support 24/7 - @KoteamSupport. We also offer specialized solutions for Telegram-related tasks β contact us to learn more
β Found this useful? Leave a review β it helps others find this Actor and tells us what to build next.
π·οΈ Find This Tool When You Search For "telegram channel member export" - Export members of a channel you manage "telegram audience analysis" - Account types, Premium share, and bots in your audience "telegram member list export" - Up to 4,000 accounts per channel to Excel "telegram community member data" - Export members with profile details "telegram group analytics" - Get real member counts and community data π― Know who your channel's audience really is π‘οΈ Spot bots and inactive accounts in your community