Telegram Channel Scraper (No Login) avatar

Telegram Channel Scraper (No Login)

Pricing

from $1.00 / 1,000 messages

Go to Apify Store
Telegram Channel Scraper (No Login)

Telegram Channel Scraper (No Login)

Scrape public Telegram channels without login or API keys: messages, views, reactions, media, links, forwards and channel subscribers. Filter by keyword and date.

Pricing

from $1.00 / 1,000 messages

Rating

0.0

(0)

Developer

Smoldesk Studios

Smoldesk Studios

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 hours ago

Last modified

Security

Limited permissions

Share

Telegram Channel Scraper – Messages, Views, Reactions & Subscribers

Telegram Channel Scraper: messages, views, reactions and subscribers from public channels

Scrape public Telegram channels without a Telegram account, phone number or API keys (no api_id / api_hash, no Telethon session). Get every message with its views, reactions, photos, videos, links, forwards and hashtags, plus channel info like subscriber count and verified badge.

Filter by keyword and date range, scrape many channels in parallel, and export the channel to JSON, CSV, Excel or via API. Schedule it to monitor channels for new posts.

What you can use it for

  • Crypto & trading signal tracking: collect every call from signal channels with timestamps for backtesting.
  • Brand & competitor monitoring: track what channels in your niche post and which posts get the most views and reactions.
  • News & research: archive channels for media analysis, OSINT research or academic datasets.
  • Lead generation & influencer research: compare channels by subscribers and engagement before buying ads.
  • AI / LLM pipelines: feed clean message text into summarization, sentiment or RAG workflows.

How to use it

1. Add channels. Paste channel names or t.me links, set how many messages to read, and add a keyword if you only want matching posts.

Step 1: add channels and the options you need

2. Click Start. Messages are read newest first. No Telegram account or phone number is needed.

Step 2: click Start and watch the run log

3. Get clean data. One row per message with its date, views, reactions, media and links. Export it as JSON, CSV or Excel, or read it through the API.

Step 3: get one row per message and export it as JSON, CSV, Excel or via API

How to scrape a Telegram channel

  1. Create a free Apify account (no credit card needed to start) and open this Actor.
  2. Add channels. Paste public channel links or @usernames (one per line) in Channels. Private channels and groups you must join are not available.
  3. Set the limits. Max messages per channel is how many of the newest messages to read. Use Messages newer than / older than to cut a period, or Keyword search to read only matching messages.
  4. Choose extras. Leave Include channel info on to also get subscribers, description and photo count.
  5. Click Start. Results appear in the Output tab while it runs.
  6. Download or connect. Export as JSON, CSV, Excel or HTML, or read the dataset through the API, Make, Zapier, n8n, Google Sheets or a webhook.
  7. Automate it. Open Schedules, add a daily schedule and set Messages newer than to yesterday to build a running archive of a channel.

Tips

  • Channels must be public, with a preview at t.me/s/
  • Use Keyword search to track a brand or ticker inside a channel without reading everything.
  • Raise Delay between pages if you scrape many channels in one run.

Why this scraper

  • ✅ No login, no phone number, no ban risk to your account: it only reads Telegram's public web preview (t.me/s/<channel>).
  • ✅ Rich data: views, per-emoji reactions (including paid ⭐ Stars reactions), media URLs, link previews, polls, forwards, replies, hashtags.
  • ✅ Full history: paginates back through the whole channel, or stops at your date.
  • ✅ Fast & cheap: plain HTTP, no browser. Hundreds of messages in seconds.
  • ✅ Pay only for results: you are charged per message returned, nothing for failed or skipped channels.

Input

FieldDescription
channelsUsernames or links: durov, @durov, https://t.me/durov
maxMessagesPerChannelNewest first. 0 = whole history
searchQueryKeyword or #hashtag, using Telegram's in-channel search
dateFrom / dateToOnly messages within this range
includeChannelInfoAdd one item per channel with title, description and subscribers
{
"channels": ["durov", "https://t.me/telegram"],
"maxMessagesPerChannel": 500,
"dateFrom": "2026-01-01",
"searchQuery": "update"
}

Output

Each message:

{
"type": "message",
"channel": "durov",
"messageId": 531,
"url": "https://t.me/durov/531",
"date": "2026-07-16T20:45:25+00:00",
"text": "Telegram now has a Rich Text Editor...",
"views": 5800000,
"reactions": [{"emoji": null, "customEmojiId": "5265077361648368841", "paidStars": false, "count": 54600}],
"totalReactions": 95000,
"photos": [],
"videos": ["https://cdn4.telesco.pe/file/....mp4"],
"links": [],
"hashtags": [],
"forwardedFrom": null,
"linkPreview": null,
"channelTitle": "Pavel Durov",
"channelSubscribers": 10400000,
"scrapedAt": "2026-10-14T03:00:00+00:00"
}

Each channel (when includeChannelInfo is on):

{
"type": "channel",
"channel": "durov",
"title": "Pavel Durov",
"description": "Founder of Telegram.",
"verified": true,
"subscribers": 10400000,
"photos": 102,
"videos": 47,
"links": 200
}

Pricing

Pay per result, no monthly rental:

EventPrice
Message$1.00 per 1,000 messages
Channel info (only when includeChannelInfo is on)$2.00 per 1,000 channels

Example: the last 500 posts from 10 channels (5,000 messages) cost $5. Set "Maximum cost per run" in the run options to stay within budget. The scraper stops cleanly when the limit is reached and never charges for messages it doesn't return.

Use with AI agents (Claude, ChatGPT, Cursor, MCP)

Add the Actor as a tool through the Apify MCP server: https://mcp.apify.com?actors=smoldesk/telegram-channel-scraper. Then paste this into your agent's system prompt or tool notes, so it knows when to call it:

Tool: smoldesk/telegram-channel-scraper (Telegram Channel Scraper, Apify)
Use it when: the user wants messages from public Telegram channels (t.me/<name>) with views, reactions, media, links and forwards, channel info and subscriber counts, or messages matching a keyword or date range. No login or Telegram API key needed.
Don't use it when: the user wants private channels or groups, group member lists, direct messages, or anything that needs a Telegram account.
How to call: run the Actor with JSON input and read the dataset items. Results cost money per item, so keep the counts small unless the user asks for more.
Example input: {"channels": ["durov"], "maxMessagesPerChannel": 50, "dateFrom": "2026-10-01"}

Questions an agent can answer with it:

  • What did this crypto channel post this week, and which posts got the most views?
  • How many subscribers do these 10 Telegram channels have?
  • Find every message mentioning our brand in these public channels.

Your agent can pay for its own runs. This Actor is approved for agentic payments on Apify, so an agent with a Skyfire token or an x402 wallet can call it and pay per result without an Apify account. Skyfire: use https://mcp.apify.com?payment=skyfire. x402: buy a prepaid Apify token with USDC. Setup: Apify agentic payments docs.

Use with AI (LangChain / LlamaIndex / CrewAI)

Each message's text field is clean plain text, so channels drop straight into summarization, sentiment or RAG pipelines. With LangChain (pip install langchain-apify):

from langchain_apify import ApifyWrapper
from langchain_core.documents import Document
apify = ApifyWrapper() # reads APIFY_API_TOKEN
loader = apify.call_actor(
actor_id="smoldesk/telegram-channel-scraper",
run_input={"channels": ["durov", "telegram"], "maxMessagesPerChannel": 100},
dataset_mapping_function=lambda m: Document(
page_content=m.get("text") or "",
metadata={k: m.get(k) for k in ("url", "channel", "date", "views", "totalReactions")},
),
)
docs = loader.load()

Already have a run? Load its dataset with ApifyDatasetLoader(dataset_id="<run's dataset ID>", dataset_mapping_function=...). LlamaIndex: ApifyActor from llama-index-readers-apify. CrewAI / Claude / MCP clients: add it as a tool via the Apify MCP server: https://mcp.apify.com?actors=smoldesk/telegram-channel-scraper.

Limitations

  • Only public channels that have web preview enabled. Private channels, groups and user chats are not accessible (by design).
  • Counts are as Telegram displays them (e.g. 10.4M → 10400000), so large numbers are rounded.
  • Video URLs from Telegram's CDN are temporary; download them soon after scraping.

FAQ

Do I need a Telegram API key or phone number? No. Unlike Telethon or Pyrogram scripts, there is no api_id, api_hash, phone login or session file. Your Telegram account can't get banned because none is used.

Can it scrape private channels or groups? No. Only public channels with web preview (t.me/s/<channel>) are supported.

Do I need proxies? No. It works without a proxy.

How do I monitor a channel for new posts? Schedule the Actor (e.g. hourly) with dateFrom set to a recent date or a small maxMessagesPerChannel, and send results to Slack, Google Sheets or a webhook with Apify integrations.

Is it legal? This Actor only collects data that Telegram publishes openly on the web to anyone, without logging in. You are responsible for how you use the data. Respect privacy laws (e.g. GDPR) and Telegram's terms, and don't use personal data for spam.

Feedback

Found a bug or missing a field? Open an issue in the Issues tab. If the Actor saved you time, a short review on this page helps other people find it.

Code examples and a quick reference are also on GitHub: smoldesk/telegram-channel-scraper.

More Actors from Smoldesk Studios

  • Contact Details Scraper: emails, phone numbers, social profiles and contact forms from any list of websites, with email domains checked and junk removed, charged only when contacts are found
  • Google Maps Scraper: places with phones, websites, ratings and hours from any search, plus emails and social profiles from each business website, lead filters and new-place monitoring
  • WeChat Articles Scraper: WeChat Official Account (公众号) articles from keyword search, full text as Markdown, images, account IDs and publish dates, no login
  • Toutiao Scraper: Toutiao (今日头条) news search with date ranges, reads and likes, comments and the hot board (热榜), no login
  • YouTube Scraper: videos, Shorts, channels and comments from search, channels and playlists — exact views, likes, publish dates and durations, no API key
  • YouTube Comments Scraper: comments and replies from videos, channels, playlists or keyword searches, with likes, pinned/hearted flags and authors
  • YouTube Channel Scraper: subscribers, exact total views, join date, country and social links of any channel, plus its latest videos
  • Google Ads Transparency Scraper: every ad a competitor runs on Google Search, YouTube and Shopping — creatives, landing pages, countries, EU impressions and new-ad alerts
  • Weibo Scraper: keyword and hashtag search, posts, comments, profiles and the hot-search board from China's biggest microblog, no login
  • Tennis Scraper: ATP, WTA, Challenger and ITF results and fixtures with odds from 15 bookmakers, H2H, players and rankings, back to the 2000s
  • Google Hotels Scraper: hotel prices for your dates in any currency, ratings, review aspects and booking-site prices, worldwide
  • Google Hotels Price Calendar: the cheapest nightly rate for every check-in date up to a year ahead, for any hotel, with taxes and booking-site prices
  • Bilibili Scraper: videos, danmaku, comments and creator stats from China's YouTube (哔哩哔哩)
  • Google Trends Scraper: interest over time, by region and city, related queries and Trending now — no API key
  • Substack Scraper: newsletters, subscriber counts and posts
  • Shopify Store Analyzer: apps, contacts and products of any Shopify store
  • SEEK, JobStreet & JobsDB Scraper: jobs and salaries across Australia and Southeast Asia
  • Career Site Jobs Scraper: live jobs from 12,000+ company career sites (Greenhouse, Lever, Workday, Ashby) with salary and seniority