Telegram Group Member Scraper: Fast Export to JSON/Excel avatar

Telegram Group Member Scraper: Fast Export to JSON/Excel

Pricing

$18.99/month + usage

Go to Apify Store
Telegram Group Member Scraper: Fast Export to JSON/Excel

Telegram Group Member Scraper: Fast Export to JSON/Excel

nstantly extract thousands of Telegram members from any public group. Capture premium status, usernames, and member metadata with 99% reliability. High-speed, API-based, and no browser needed—perfect for targeted outreach and lead generation.

Pricing

$18.99/month + usage

Rating

0.0

(0)

Developer

Scrape Pilot

Scrape Pilot

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

1

Monthly active users

2 days ago

Last modified

Share

Telegram Group & Channel Scraper | Metadata, Member Count, Post Authors & Channel Data

Scrape public Telegram groups and channels — group name, description, member count, verified status, and recent post authors — without a Telegram API key or bot token. Works on any public t.me link.


📌 Table of Contents


📡 What Does This Actor Do?

This Telegram group scraper extracts publicly available data from Telegram groups and channels using their t.me public preview pages — without a Telegram API key, bot token, or account login.

Paste in one or many Telegram group/channel links. The actor returns:

  • Group or channel metadata — name, description, member/subscriber count, verified status, type
  • Recent post authors — names, usernames, verified and premium flags from public channel posts
  • Structured JSON records — one group_info record + individual post_author records per group
  • Member count — parsed from the public preview page (supports K, M, B formatting)
  • Multi-group monitoring — scrape hundreds of Telegram groups in one run

This actor works on the publicly visible data Telegram exposes at t.me/groupname and t.me/s/channelname — the same pages anyone can view in a browser without an account.


⚡ Quick Start — 3 Steps

Step 1 — Add your Telegram group or channel links

{
"telegram_urls": [
"https://t.me/binanceexchange",
"@durov",
"t.me/telegram"
],
"max_results": 30
}

Step 2 — Click Run The actor fetches the public preview page, parses group metadata, scrapes recent post authors from the channel feed, and optionally queries the widget API for additional member data.

Step 3 — Get your Telegram data

{
"group_name": "Binance Exchange",
"username": "@binanceexchange",
"type": "channel",
"member_count": 14820000,
"description": "Official Binance Exchange channel...",
"is_verified": true,
"record_type": "group_info"
}

Your data is in the Dataset tab — export as JSON, CSV, or Excel.


🏆 Why This Telegram Group Scraper?

FeatureThis ActorManual ResearchOther Telegram Tools
No Telegram API key needed✅ But slow❌ Most require bot token
No account or login needed
Group metadata (name, description, count)⚠️ One at a time
Member/subscriber count✅ Parsed from page⚠️
Verified channel badge⚠️
Recent post authors✅ From public channel feed⚠️
Multi-group bulk scraping✅ Unlimited groups⚠️
@username input format✅ Direct⚠️⚠️
Keyword filter✅ Built-in
Deep search (widget API)✅ Optional
Structured JSON per record typegroup_info + post_author⚠️
Residential proxy support✅ Required⚠️

No Telegram bot. No API credentials. No account. Paste public t.me links — get structured group intelligence back.


⚠️ What You Actually Get — Honest Overview

Read this before purchasing. Telegram's privacy architecture means full member lists are never publicly exposed. Here is exactly what this actor can and cannot access:

✅ What This Actor CAN Extract

  • Group/channel metadata — official name, description, member or subscriber count, verified badge, group vs channel type
  • Recent post authors — names and usernames of people who posted in public channels (visible in t.me/s/{channel})
  • Channel overview — up to 20 unique post author names per channel
  • Widget API data — member count fallback when not in main page

❌ What This Actor CANNOT Extract

  • Full member list — Telegram does not expose member lists publicly. Full member lists require Telegram API credentials (MTProto API with a registered phone number)
  • Private groups or channels — only public t.me/ links work
  • Member phone numbers or emails — Telegram never exposes these even with full API access
  • Message history — post content/text is not extracted, only author names from the public channel feed
  • Real-time member online status — not available from public pages

If you need full member lists, you need the Telegram MTProto API with verified credentials. This actor provides publicly available group intelligence without any credentials — which is a different but legitimate use case.


🎯 Use Cases

📊 Telegram Channel Research & Competitive Analysis

Compare member counts, description copy, and verified status across multiple Telegram channels in your niche. Identify the largest communities, monitor audience size changes, and benchmark your own channel against competitors.

🔍 Crypto & Finance Community Monitoring

Scrape Telegram groups used by crypto projects, DeFi protocols, or trading communities. Extract member count, description, and recent active contributors as part of project due diligence or market research.

📣 Influencer & Community Discovery

Find and catalogue large Telegram communities in a specific topic area. Member count and description data help rank channels by audience size and relevance without manually visiting each one.

🏢 Brand & Reputation Monitoring

Monitor public Telegram groups that mention your brand, products, or competitors. Use keyword filtering to surface only relevant groups from a bulk scan of Telegram links.

🤖 Marketing Agency Intelligence

Identify the largest Telegram channels in a client's industry for potential advertising, partnership, or sponsorship outreach. Member count and verified status help qualify channels quickly.

📰 Journalism & Investigative Research

Document and archive public Telegram channels involved in news events. Record metadata (name, description, member count, verified status) at a specific point in time for reporting purposes.

🔬 Academic & Social Media Research

Build datasets of Telegram communities for research on digital communication, community size distribution, or information spread patterns across messaging platforms.

🛡️ Trust & Safety Research

Catalogue public Telegram groups for disinformation research, coordinated inauthentic behavior studies, or platform safety analysis — all from publicly accessible pages.


📋 What Data You Get

Each group produces two record types — a group_info record and up to 20 post_author records:

Group Info Record Fields

FieldTypeDescriptionExample
group_namestringOfficial group or channel name"Binance Exchange"
usernamestringTelegram @username"@binanceexchange"
idstringUsername used as identifier"binanceexchange"
typestring"channel" or "group""channel"
member_countintegerMembers/subscribers count14820000
descriptionstringGroup bio/description (up to 500 chars)"Official Binance Exchange channel"
is_verifiedbooleanOfficial verified badgetrue
is_premiumbooleanTelegram Premium indicatorfalse
is_scambooleanScam warning flag (from Telegram)false
is_fakebooleanFake warning flag (from Telegram)false
last_seenstringActivity indicator"online"
record_typestringRecord category"group_info"
source_urlstringOriginal URL provided"https://t.me/binanceexchange"
processed_atstringISO 8601 extraction timestamp"2024-10-30T10:15:00Z"

Post Author Record Fields

FieldTypeDescriptionExample
first_namestringAuthor's first name"CryptoTrader"
last_namestringAuthor's last name (if available)"Pro"
usernamestringAuthor's Telegram username"@cryptotraderpro"
usernamesarrayUsername list["cryptotraderpro"]
group_namestringWhich group this author posted in"Binance Exchange"
is_verifiedbooleanVerified author badgefalse
is_premiumbooleanTelegram Premium usertrue
descriptionstringContext — which group they posted in"Posted in @binanceexchange"
member_countintegerParent group member count14820000
record_typestringRecord category"post_author"
processed_atstringISO 8601 extraction timestamp"2024-10-30T10:15:00Z"

📊 Record Types Explained

Every run produces two distinct record types — both in the same Dataset:

record_type: "group_info"

One record per Telegram group or channel. Contains all metadata — name, description, member count, verified status, and type. This is the primary intelligence record for each group.

record_type: "post_author"

One record per unique recent post author visible in the public channel feed (t.me/s/{channel}). Contains the author's name, username (when linked), verified and premium flags. Up to 20 unique post authors per channel.

Filtering by record type: Use your export tool or the Apify Dataset filter to separate group_info records (metadata) from post_author records (contributor list) for different workflow stages.


🔧 3-Source Extraction System

This Telegram group scraper queries three public endpoints per group in sequence for maximum data coverage:

Source 1 — Public Preview Page (t.me/{username})

The standard Telegram public preview page exposes group name, description, member/subscriber count, verified badge, and whether the entity is a group or channel. This is always queried first and always produces the group_info record.

Source 2 — Channel Posts Feed (t.me/s/{username})

Public channels have a web-accessible post feed at t.me/s/{channelname}. The actor parses this feed to extract recent post authors — names, linked usernames, verified badges, and premium indicators. Up to 20 unique authors are extracted. This source only works for public channels (not private groups).

Source 3 — Widget API (t.me/{username}?embed=1)

When deep_search is enabled, the actor queries the embedded widget endpoint for additional member count data. This is used as a fallback to fill in member count when the preview page doesn't display it in a parseable format.


⚙️ Input Parameters

{
"telegram_urls": [
"https://t.me/binanceexchange",
"@coinbase",
"t.me/ethereum",
"https://t.me/s/telegram"
],
"telegram_url": "",
"keyword": "crypto",
"deep_search": true,
"max_results": 50,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}
ParameterTypeDefaultDescription
telegram_urlsarray or string[]List of Telegram group/channel URLs or @usernames. Mix formats freely.
telegram_urlstring""Single URL shortcut — added to telegram_urls automatically
keywordstring""Filter results — only return records where keyword appears in description or group name
deep_searchbooleanfalseEnable widget API query for additional member count data
max_resultsinteger50Maximum records to return per group (across both group_info and post_author records)
proxyConfigurationobject⚠️ RequiredApify proxy config — RESIDENTIAL proxy is required. Telegram blocks datacenter IPs.

📥 Input Formats Supported

This Telegram group scraper accepts four input formats — mix them in a single run:

https://t.me/binanceexchange ← Full t.me URL
https://t.me/s/binanceexchange ← Channel posts URL
@binanceexchange ← @username format
binanceexchange ← Plain username

All formats are normalized automatically before scraping.


📦 Example Input & Output

Single Channel Scrape

Input:

{
"telegram_urls": ["https://t.me/binanceexchange"]
}

Output — Group Info Record:

{
"source_url": "https://t.me/binanceexchange",
"id": "binanceexchange",
"username": "@binanceexchange",
"group_name": "Binance Exchange",
"type": "channel",
"first_name": "Binance Exchange",
"last_name": null,
"usernames": ["binanceexchange"],
"is_verified": true,
"is_premium": false,
"is_scam": false,
"is_fake": false,
"lang_code": "en",
"last_seen": "online",
"member_count": 14820000,
"description": "Official Binance Exchange channel. Trade crypto safely.",
"record_type": "group_info",
"processed_at": "2024-10-30T10:15:00Z"
}

Output — Post Author Record (one of up to 20):

{
"source_url": "https://t.me/binanceexchange",
"id": "7823412900",
"username": "@cryptopro_trader",
"group_name": "Binance Exchange",
"type": "user",
"first_name": "CryptoPro",
"last_name": "Trader",
"usernames": ["cryptopro_trader"],
"is_verified": false,
"is_premium": true,
"is_scam": false,
"is_fake": false,
"lang_code": null,
"last_seen": null,
"member_count": 14820000,
"description": "Posted in @binanceexchange",
"record_type": "post_author",
"processed_at": "2024-10-30T10:15:01Z"
}

Bulk Channel Intelligence — 20 Crypto Groups

Input:

{
"telegram_urls": [
"https://t.me/binanceexchange",
"https://t.me/coinbase",
"https://t.me/ethereum",
"@bitcoin",
"@solana"
],
"keyword": "crypto",
"max_results": 100
}

Output: One group_info record per channel (filtered to keyword match) + up to 20 post_author records per channel. Full member count and verified status for each — ready for ranking by audience size.


Deep Search — Widget API for Member Count

Input:

{
"telegram_urls": ["https://t.me/durov"],
"deep_search": true
}

When deep_search: true, the actor additionally queries the widget embed endpoint to fill in member count when it's not available from the main preview page.


⚡ Performance & Speed

ConfigurationGroupsEstimated Time
1 group, basic1~10–20 seconds
5 groups, basic5~30–60 seconds
10 groups, basic10~1–2 minutes
20 groups, deep search ON20~3–5 minutes
50 groups, deep search ON50~7–12 minutes
100 groups, basic100~8–15 minutes

Each group includes a 2–4 second random delay between requests. Telegram blocks aggressive scrapers — the delay is mandatory for stable large runs.


💰 Cost Estimate

Subscription: $18.99/month · Free Trial: 1 Full Day (no credit card required)

Run TypeApify Compute UnitsApprox. Compute Cost
5 groups, basic~0.02–0.04 CU< $0.01
20 groups, basic~0.05–0.10 CU< $0.01
50 groups, deep search~0.15–0.30 CU~$0.01–$0.02
100 groups~0.25–0.50 CU~$0.02–$0.04
Scheduled daily (30-day month)~0.5–1.5 CU/month~$0.04–$0.12

Compute costs are very low — the $18.99 subscription is the primary cost. Most users will pay only the subscription with negligible compute fees regardless of run frequency.

Use the 1-day free trial to test on your target Telegram groups before subscribing.


⚠️ Limitations — Read Before Buying

Full transparency about what this Telegram group scraper can and cannot do:

  • Full member lists are not available — Telegram's privacy design never exposes complete member rosters on public pages. The actor extracts recent post authors (up to 20 per channel) — not a full member directory. Full member lists require the Telegram MTProto API with verified phone number credentials.
  • Private groups and channels — Only public Telegram groups and channels with a t.me/ link are accessible. Private or invite-only groups cannot be scraped.
  • Message text/content — Post content is not extracted. Only post author names and usernames are captured from the channel feed.
  • Historical post archives — Only the most recent posts visible on the public preview page are scraped. Full message history requires Telegram API access.
  • Member phone numbers or emails — Telegram never exposes these, even with full API credentials.
  • Real-time online member count — The member count extracted is the total subscriber/member count shown on the public page, not current online members.
  • ⚠️ Residential proxy is mandatory — Telegram blocks all datacenter IPs. Without residential proxy, most requests will return 403. The actor logs a clear warning if proxy is not configured.
  • ⚠️ Channel vs group variability — Post author extraction works best on public channels (t.me/s/{channel}). Public groups do not always expose post authors on the preview page.
  • Scam/fake flag accuracy — The is_scam and is_fake fields reflect Telegram's own labels when present on the page. The actor does not perform independent scam detection.

🔌 Integrations

Google Sheets — Channel Intelligence Dashboard

Export the Dataset to Google Sheets. Filter record_type = "group_info" for a clean channel comparison table. Sort by member_count to rank channels by audience size. Use is_verified as a column filter to separate official channels.

Airtable — Community Database

Push Telegram channel records to Airtable. Build a searchable community database with member count, description, and verified status. Add manual fields for outreach status and notes.

Apify API — Scheduled Monitoring

// Trigger a Telegram group scrape via API
const run = await fetch("https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_TOKEN"
},
body: JSON.stringify({
telegram_urls: [
"https://t.me/binanceexchange",
"https://t.me/ethereum",
"@bitcoin"
],
max_results: 50
})
});

Zapier / Make — Monitoring Alerts

Schedule weekly runs and connect to Zapier. When a monitored channel's member count changes significantly (compare across runs), fire a Slack alert or email digest automatically.

n8n — Research Pipeline

Use the Apify node in n8n to scrape a list of Telegram groups on a schedule, filter by keyword, and push structured records to a database or Google Sheet for ongoing community tracking.


❓ FAQ

Q: Can I get the full list of members in a Telegram group? A: No — and no public scraper can. Telegram's platform design never exposes full member lists on public pages. This actor extracts recent post authors from public channel feeds (up to 20 per channel) and complete group metadata. Full member lists require the Telegram MTProto API with a verified phone number. Be cautious of any tool claiming to provide full Telegram member lists without API credentials — it is not technically possible from public pages.

Q: Does this work on private Telegram groups? A: No. Only public groups and channels with a publicly accessible t.me/username page can be scraped. Private or invite-only groups are not accessible without API credentials.

Q: Why is residential proxy required? A: Telegram aggressively blocks datacenter IP ranges (AWS, Google Cloud, Azure). Residential proxy routes requests through real consumer IPs that Telegram treats as regular browser traffic. Without it, most requests return 403 Forbidden.

Q: What is the difference between group_info and post_author records? A: Every Telegram group produces one group_info record (channel metadata — name, description, member count, verified status) plus up to 20 post_author records (people who recently posted in that channel's public feed). Filter by record_type in your export to separate these.

Q: Can I monitor member count changes over time? A: Yes. Schedule the actor to run weekly or monthly on the same channel list. Each run produces fresh member_count values with a processed_at timestamp. Export to Google Sheets and track count changes across runs.

Q: What does deep_search: true do? A: It adds a third HTTP request to the Telegram widget embed endpoint (t.me/{username}?embed=1) for each group. This is useful for getting member count when it isn't displayed on the standard preview page. It adds ~5–10 seconds per group.

Q: Can I input @username directly instead of a full URL? A: Yes. All four formats work: https://t.me/groupname, @groupname, t.me/groupname, and groupname. The actor normalizes all formats to the correct URL automatically.

Q: Can I use keyword filtering to find only relevant groups? A: Yes. Set "keyword": "bitcoin" and only groups/channels where "bitcoin" appears in the name or description are included in the output. Useful when scraping a large list of groups to surface only topic-relevant ones.

Q: How many groups can I scrape in one run? A: There is no hard limit. Add as many telegram_urls as needed. For 100+ groups, residential proxy is strongly recommended and the 2–4 second delay between requests ensures stable long runs.


📜 Changelog

v1.0.0 (Current)

  • ✅ Telegram group and channel metadata extraction from t.me/{username} public preview
  • ✅ Recent post author extraction from t.me/s/{channel} public channel feed (up to 20 per channel)
  • ✅ Widget API (t.me/{username}?embed=1) member count fallback via deep_search mode
  • ✅ Member count parsing — supports K, M, B formatted counts (e.g., "1.2M members", "325,897 subscribers")
  • ✅ Verified badge detection
  • ✅ Channel vs group type auto-detection
  • is_verified, is_premium, is_scam, is_fake flag extraction
  • ✅ Input normalization — accepts https://t.me/, @username, plain username, t.me/s/ formats
  • ✅ Keyword filter across group name and description
  • ✅ Multi-group bulk processing — unlimited groups per run
  • ✅ Deduplication of post authors within each group
  • record_type field: group_info vs post_author for easy filtering
  • ✅ 2–4 second random delay between requests
  • ✅ 3 retry attempts on failed requests with 20-second wait on 429
  • 403 detection with clear proxy recommendation in logs
  • ✅ Results pushed to Dataset and Key-Value Store (results.json)
  • ✅ Residential proxy support via curl_cffi Chrome 110 impersonation
  • 🔜 Coming next: Telegram Bot API integration (optional), post content extraction for public channels

This Telegram group scraper accesses publicly visible data from Telegram's public preview pages (t.me/) — the same information anyone can view in a browser without an account or login.

Please use responsibly:

  • Only scrape public Telegram groups and channels — do not attempt to access private or invite-only groups
  • Comply with GDPR, CCPA, and applicable data protection regulations — Telegram usernames and names of individuals are personal data in most jurisdictions
  • Do not use extracted data for spam, targeted harassment, or unsolicited mass messaging to Telegram users
  • Do not republish or resell extracted Telegram community data without appropriate consent and attribution
  • Respect Telegram's Terms of Service regarding automated access
  • This actor is intended for research, competitive analysis, community monitoring, and legitimate business intelligence workflows

Privacy Note: Post author records contain publicly visible names and usernames from Telegram's own public channel pages. Users who post in public channels have chosen to make their contributions publicly visible. Handle this data in accordance with applicable privacy law in your jurisdiction.


🤝 Support

  • Getting 403 on most groups? Enable RESIDENTIAL proxy — this is the primary cause of Telegram blocks on datacenter IPs
  • Member count showing null? Enable deep_search: true — this triggers the widget API fallback for member count
  • Need Telegram Bot API or MTProto integration? Drop a feature request — this is on the roadmap
  • Works well for your community research workflow? A ⭐ review on the Apify Store helps others find this Telegram group scraper and keeps it actively maintained

Telegram Group & Channel Scraper · Built on Apify
Metadata · Member Count · Post Authors · Verified Status · Bulk · No API Key · No Login Required