Telegram Channel Scraper — Export Posts, Views & Reach avatar

Telegram Channel Scraper — Export Posts, Views & Reach

Pricing

from $5.00 / 1,000 channel scrapeds

Go to Apify Store
Telegram Channel Scraper — Export Posts, Views & Reach

Telegram Channel Scraper — Export Posts, Views & Reach

Export Telegram channel messages with view counts as real numbers, publishing cadence, media mix and views per subscriber.

Pricing

from $5.00 / 1,000 channel scrapeds

Rating

0.0

(0)

Developer

Kaan Salgır

Kaan Salgır

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

This Telegram channel scraper exports messages from any public Telegram channel: every post with its view count as a real number, the date it went out, media flags, outbound links, and the one figure that actually measures a channel — views per subscriber.

No account, no API key, no phone number. It reads the same public channel preview anyone can open in a browser.

Export Telegram channel messages and data

Give it a handle and it pages back through the archive, 20 posts per request, as far as you ask:

  • Telegram channel message export — post text, publish date, permalink, word count
  • View counts — as integers, not the 1.75M string Telegram renders
  • Media flags — photo, video, poll, document, and a media count per post
  • Forwards and replies — including which channel a post was forwarded from
  • Outbound links — every external URL a post points at

Output is JSON, CSV, Excel or XML through Apify's usual export, so it drops straight into a spreadsheet or a database.

Telegram channel analytics: the number that decides a media buy

Subscriber count is the number channel owners quote. It is also the easiest number to inflate. What a buyer needs is how many people actually see a post:

ChannelSubscribersAvg viewsViews per subscriber
Telegram News9,490,0002,103,1500.22
Pavel Durov10,700,0006,793,6670.64

Two channels of almost identical size, a threefold difference in reach. This scraper computes that ratio for every channel you pass it, alongside median and maximum views, posting cadence, and the share of posts carrying media or links.

Cadence is reported with its window. postsPerWeek always travels with measurementWindowDays, so you can see what the rate is based on. Raise Maximum posts per channel to widen it.

What you get

Per channel: title · username · subscribers · description · photoUrl · isVerified · photosCount · videosCount · linksCount

Per channel summary: postsAnalysed · firstPostDate · lastPostDate · postsPerWeek · measurementWindowDays · avgViews · medianViews · maxViews · viewsPerSubscriber · forwardedPosts · postsWithMedia · postsWithLinks · avgTextLength

Per post: postId · url · text · publishedAt · views · viewsRaw · isForwarded · forwardedFrom · isReply · hasPhoto · hasVideo · hasPoll · hasDocument · mediaCount · outboundLinks · textLength

How to use this Telegram scraper

{
"channels": ["durov", "@telegram", "https://t.me/breakingmash"],
"maxPostsPerChannel": 300,
"postsOutput": "separate"
}

Handles, @handles and t.me links all work.

postsOutput controls the shape: embedded gives one row per channel with a posts array; separate gives one flat row per post plus a profile row per channel, which loads straight into a spreadsheet.

FAQ

Do I need a Telegram account or API key? No. This scraper reads the public channel preview at t.me/s/<channel>, which is served to anyone without logging in.

Can it scrape private channels or groups? No. Private invite links (t.me/+…), group chats and user accounts are rejected before a request is made. Public channels only.

Can it export channel members or subscribers? No, and it never will. Telegram does not expose member lists on this surface and this scraper does not attempt to reach them. Channels are broadcast media: it reads what a channel published, not who reads it.

How far back can it go? As far as the channel's archive runs. Posts load 20 per request going backwards, so 1,000 posts is 50 requests.

Why are view counts sometimes missing? Very recent posts occasionally render before Telegram attaches a view count. The raw string is kept in viewsRaw so you can see exactly what the page showed.

Is scraping Telegram channels legal? This reads publicly published content without authentication. Telegram serves no robots.txt for t.me, so there is no crawl directive to breach, and the scraper caps its own request rate. How you use the output is your responsibility, including under GDPR where post content mentions people.

Pricing

Pay per event: one charge per channel and one per post. Nothing is charged for compute time or failed requests.

Development

npm install
npm test # offline regression tests against a saved page
npm start # local run; put an INPUT.json in storage/key_value_stores/default/