Telegram Channel Member Scraper avatar

Telegram Channel Member Scraper

Pricing

from $200.00 / 1,000 runs

Go to Apify Store
Telegram Channel Member Scraper

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

akula.marketing

Maintained by Community

Actor stats

4

Bookmarked

41

Total users

3

Monthly active users

3 days ago

Last modified

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

  1. 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.
  2. Run the Actor with the channel username.
  3. 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

FieldTypeDescriptionRequiredDefault
usernameStringPublic channel or chat you administerYesdevs
webhookUrlStringOptional URL that also receives progress updatesNoβ€”

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:

FieldTypeDescription
resultStringsuccess, failed, or pending (the export is still running when the run ends)
stateStringTask state: created, in_progress, completed, error
channelStringThe channel you exported
usersCountNumberMembers exported
usersWithUsernamesCountNumberMembers who have a username
xlsxUrlStringDownload link for the Excel file (temporary; open resultUrl for a fresh one)
userIdsUrlStringDownload link for the username list (.txt)
resultUrlStringStatus page for this export. Works without an API key, any time later
downloadUrlStringOpens the latest Excel file directly
errorStringError 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:

  1. Text File: Contains a list of usernames, reusable in other software.
  2. Excel File: Includes detailed data for each discovered Telegram account:
Channel Name
User ID
First Name
Last Name
Username
Has Profile Photo (Yes/No)
Phone Number
Premium Status (Yes/No)
Online Status
Language
Bio (About)
Message Date
Message Text

excel result example 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

  1. Input Username: Provide a Telegram channel username (e.g., devs, @devs, or https://t.me/devs).
  2. Run the Actor: Start the export.
  3. Get the file: When the run finishes, open the dataset row and download the Excel file from xlsxUrl, or open result.xlsx in 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 with xlsxUrl and 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.

Next stepActor
See who in your community actually writes, and what they write aboutTelegram Channel Message & Comment Scraper
See which of your posts get the most views and reactionsTelegram Channel Post & Media Scraper
Find channels with an audience similar to yours, for cross-promotionTelegram 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