Telegram Channel Scraper – Messages, Views & Reactions avatar

Telegram Channel Scraper – Messages, Views & Reactions

Under maintenance

Pricing

from $1.20 / 1,000 messages

Go to Apify Store
Telegram Channel Scraper – Messages, Views & Reactions

Telegram Channel Scraper – Messages, Views & Reactions

Under maintenance

Scrape public Telegram channels without login or API keys. Get messages with views, reactions, media, links and forwards, search inside channels, filter by date, monitor only new posts, or get subscriber counts for lists of channels.

Pricing

from $1.20 / 1,000 messages

Rating

0.0

(0)

Developer

Shaig

Shaig

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 days ago

Last modified

Share

Telegram Channel Scraper – Messages, Views, Reactions & Subscribers

Telegram Channel Scraper

Scrape public Telegram channels without a Telegram account, phone number or API keys. Get every post with its text, views, reactions, photos, videos, files, link previews, links, hashtags, mentions, forwards and replies – or just the channel info and subscriber count for long lists of channels.

Fast (no browser), cheap, and built for monitoring: schedule it with Only new messages and each run returns just the posts published since the last one.

Why this Telegram scraper?

  • 🔓 No login, no sessions – uses Telegram's public web preview, so there are no account bans, "flood wait" errors or broken sessions, and parallel runs never clash.
  • 🎯 Filters before charging – date range and keyword filters are applied before saving, so you only pay for messages you asked for.
  • 📦 Complete messages – text, views, reactions (incl. paid Stars and custom emoji), photos, videos, files, link previews, forwards (forwardedFrom), replies, hashtags and mentions.
  • 🔁 Built for monitoring – Only new messages returns just the posts since your last run.
  • 💬 Clear feedback – if a channel has no public preview, the log tells you instead of silently returning nothing.

What can you use it for?

  • 📈 Crypto & finance signals – track announcement and signal channels, pull every post with view and reaction counts.
  • 📰 News & brand monitoring – watch channels for mentions of your brand, product or competitors with the keyword filter.
  • 🔎 Research datasets – export complete channel histories with dates for sentiment and trend analysis.
  • 📣 Influencer & ad buying – compare channels by subscribers, views per post and engagement before buying a promo.
  • 🤖 AI agents & automations – structured JSON for n8n, Make, Zapier, LangChain and the Apify MCP server.

Engagement metrics included

Every message has viewRate (views ÷ subscribers – how much of the audience saw it) and reactionRate (reactions per 100 views). Use them to compare channels before buying a promo post.

Input

FieldWhat it does
ChannelsUsernames or links: durov, @durov, https://t.me/durov, or a single message https://t.me/durov/528
What to scrapeMessages, or Channel info only (one row per channel – title, subscribers, description, last post date)
Max messages per channelNewest first; 0 = whole history
Keyword filterOnly messages containing any of these words (you pay only for matches)
Telegram search (quick)Telegram's built-in search – fast, but only ~20 top matches
Messages from / untilDate range
Only new messages since the last runFor scheduled monitoring
{
"channels": ["durov", "https://t.me/cointelegraph"],
"maxMessagesPerChannel": 200,
"keywords": ["ETF", "solana"],
"dateFrom": "2026-09-01",
"onlyNewMessages": false
}

Output

{
"messageId": 548,
"url": "https://t.me/durov/548",
"channel": "durov",
"channelTitle": "Pavel Durov",
"channelSubscribers": 10500000,
"date": "2026-09-11T16:04:02+00:00",
"text": "🤝 Telegram has become the sponsor of Codeforces — the largest competitive programming platform…",
"views": 1970000,
"reactions": [
{ "emoji": "⭐", "isPaid": true, "count": 21100 },
{ "emoji": null, "customEmojiId": "5265077361648368841", "count": 31200 }
],
"totalReactions": 69930,
"author": "Pavel Durov",
"photos": [],
"videos": [],
"linkPreview": {
"url": "https://codeforces.com/blog/entry/156620",
"siteName": "Codeforces",
"title": "Telegram Returns as Title Sponsor of Codeforces!"
},
"links": ["https://codeforces.com/blog/entry/156620"],
"hashtags": [],
"mentions": [],
"forwardedFrom": null,
"replyToUrl": null,
"edited": false
}

Channel info mode returns: channelTitle, channelUsername, channelVerified, channelDescription, subscribers, photosCount, videosCount, linksCount, channelAvatarUrl, lastMessageDate, channelUrl.

Pricing

Pay per message (or per channel in channel info mode) – see the Pricing tab. Set Maximum cost per run to cap spending.

Tips & limits

  • Works for public channels with web preview enabled. Private channels, invite links (t.me/+...) and groups are not supported – they need a logged-in account.
  • Monitoring: schedule the scraper (e.g. hourly) with Only new messages on. The first run returns the latest messages; later runs only new ones.
  • Custom (premium) emoji reactions have emoji: null and a customEmojiId.
  • Media URLs come from Telegram's CDN and may expire after some time – download files soon after the run.

FAQ

Do I need a Telegram account or API key? No.

Something missing or broken? Open an issue in the Issues tab – I usually reply within a day.

⭐ If this scraper saved you time, please leave a review – it really helps!

More tools from this developer