Telegram Channel Scraper — Posts, Views & Engagement avatar

Telegram Channel Scraper — Posts, Views & Engagement

Pricing

from $2.99 / 1,000 results

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

Telegram Channel Scraper — Posts, Views & Engagement

Extract posts, view counts, subscriber numbers, and engagement metrics from public Telegram channels. Pure HTTP via t.me/s/ public preview — no API key, no login. Track competitors, monitor channels, and analyze reach for growth and market research. Clean JSON.

Pricing

from $2.99 / 1,000 results

Rating

0.0

(0)

Developer

ScrapeAI

ScrapeAI

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Share

Extract posts, view counts, subscriber numbers, and engagement metrics from public Telegram channels with high speed. Pure HTTP via t.me/s/ public preview — no API key, no session token, no login required.


What does Telegram Channel Scraper do?

Telegram Channel Scraper extracts posts, views, channel metrics, and media content from public Telegram channels via public web preview.

It serves as a fast, reliable, and lightweight alternative to Telegram API credentials for competitor analysis, channel monitoring, trend detection, content aggregation, and market research.

  • Extract Posts & Metrics: Scrape post IDs, text content, publication timestamps, view counts, and calculated engagement rates (% of subscribers viewing posts).
  • Channel Overview: Extract total subscriber counts, channel title, description/bio, profile photo, and official verification status.
  • Media & Attachments: Detect photos, videos, documents, and external link previews, along with direct media asset URLs.
  • Dynamic Dataset Outputs: Export clean JSON, CSV, Excel, HTML, or XML datasets dynamically based on your INPUT.json configuration.

Why use Telegram Channel Scraper?

  • Zero Credentials Needed: Operates completely via public web preview (t.me/s/) without requiring API_ID, API_HASH, or phone logins.
  • Blazing Fast Speed: Built on Cheerio HTTP parsing without browser automation overhead — scrape hundreds of channel posts in seconds.
  • Automatic Pagination: Automatically paginates backwards through channel history to fetch up to your specified maxPosts limit.
  • Engagement Rate Analysis: Automatically calculates post reach and engagement rates ((views / subscribers) * 100) for data-driven channel benchmarking.
  • Apify Integration: Run on schedules, trigger via Webhooks, or consume via Apify REST API.

What data can Telegram Channel Scraper extract?

Post Output Fields

Field NameTypeDescription
itemTypeStringData type identifier ("post")
channelUsernameStringTelegram channel handle (e.g. durov)
channelTitleStringChannel display title
postIdIntegerUnique numeric post ID
postUrlStringDirect web URL to the post (e.g. https://t.me/durov/215)
publishedAtStringISO 8601 publication timestamp
textStringClean plain text message content
htmlStringFormatted HTML content of the post
viewsIntegerNumeric view count
viewsFormattedStringFormatted view count string (e.g. 15.2K, 1.2M)
subscriberCountIntegerTotal subscriber count of the channel
subscriberCountTextStringFormatted subscriber text
engagementRateFloatCalculated view-to-subscriber percentage (views / subscribers * 100)
hasPhotoBooleantrue if post contains images
hasVideoBooleantrue if post contains video files
hasDocumentBooleantrue if post contains downloadable documents
hasLinkPreviewBooleantrue if post includes a web link preview card
mediaUrlsArrayDirect URLs to attached photo/video assets
isVerifiedBooleantrue if channel has Telegram's verified badge
telegramUrlStringPublic web URL for channel (https://t.me/durov)
scrapedAtStringISO 8601 timestamp when data was extracted

Channel Summary Fields (itemType: "channel_summary")

Field NameTypeDescription
channelUsernameStringTelegram handle
channelTitleStringDisplay title
descriptionStringChannel bio / description
subscriberCountIntegerNumeric subscriber count
subscriberCountTextStringFormatted subscriber count
isVerifiedBooleanVerification status
photoUrlStringChannel profile photo URL
telegramUrlStringChannel URL

Input Parameters

ParameterTypeDefaultDescription
channelsArray["durov", "telegram"]List of channel handles or URLs
channelListString""Alternative newline-separated channel list
maxPostsInteger50Max posts per channel to extract
outputTypeString"all"Output dataset mode ("posts", "channel_summary", "all")
includeChannelInfoBooleantrueEmbed channel title & subscriber count in each post
proxyConfigurationObject{}Apify proxy configuration
maxConcurrencyInteger10Maximum parallel requests
debugLogBooleanfalseEnable verbose debug logging

Example INPUT.json

{
"channels": [
"durov",
"https://t.me/techcrunch"
],
"maxPosts": 50,
"outputType": "all",
"includeChannelInfo": true,
"debugLog": false
}

Output Example

[
{
"itemType": "channel_summary",
"channelUsername": "durov",
"inputUrl": "durov",
"channelTitle": "Durov's Channel",
"description": "Thoughts from Pavel Durov, founder of Telegram.",
"subscriberCount": 11340520,
"subscriberCountText": "11 340 520 subscribers",
"isVerified": true,
"photoUrl": "https://cdn4.cdn-telegram.org/file/...",
"telegramUrl": "https://t.me/durov",
"scrapedAt": "2026-08-06T14:50:00.000Z"
},
{
"itemType": "post",
"channelUsername": "durov",
"channelTitle": "Durov's Channel",
"subscriberCount": 11340520,
"subscriberCountText": "11 340 520 subscribers",
"postId": 215,
"postUrl": "https://t.me/durov/215",
"publishedAt": "2026-08-01T15:30:00+00:00",
"text": "Telegram has surpassed 950 million active users this month.",
"views": 2400000,
"viewsFormatted": "2.4M",
"engagementRate": 21.16,
"hasPhoto": true,
"hasVideo": false,
"hasDocument": false,
"hasLinkPreview": false,
"mediaUrls": [
"https://cdn4.cdn-telegram.org/file/..."
],
"isVerified": true,
"telegramUrl": "https://t.me/durov",
"scrapedAt": "2026-08-06T14:50:01.000Z"
}
]

How to use Telegram Channel Scraper

  1. Enter Channels: Add usernames or URLs in the channels list (e.g. "durov", "@telegram").
  2. Set Post Limit: Choose how many recent posts to fetch per channel using maxPosts.
  3. Select Output Mode: Set outputType to "posts", "channel_summary", or "all".
  4. Run Scraper: Click Start on Apify Console or run locally with apify run.
  5. Export Data: Download in JSON, CSV, or Excel format.

Disclaimer: This Actor extracts data publicly available via Telegram web preview (t.me/s/). It does not bypass private channel access control or extract private user data. Users are responsible for ensuring compliance with applicable data protection regulations (such as GDPR) and terms of service.