Telegram Channel Analytics & Engagement Report avatar

Telegram Channel Analytics & Engagement Report

Pricing

$8.00 / 1,000 channel reports

Go to Apify Store
Telegram Channel Analytics & Engagement Report

Telegram Channel Analytics & Engagement Report

Turn any public Telegram channel into a performance report: median views, views per subscriber, reaction rate, posting frequency, best hour and weekday to post, content mix and top posts. One row per channel, stating the post count and date span every figure is based on.

Pricing

$8.00 / 1,000 channel reports

Rating

0.0

(0)

Developer

Hamza

Hamza

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Categories

Share

Paste a list of public Telegram channels and get one clean performance report per channel — median and mean views, how many of the channel's subscribers actually see a post, reaction rate, how often it publishes, the best hour and weekday to post, what kind of content it publishes, and its best-performing posts. It is built for marketers sizing up placements, agencies reporting on client channels, analysts tracking competitors, and anyone who has ever been handed a subscriber number and asked "yes, but does anyone read it?".

Every figure is computed from posts the actor actually read, and every report states how many posts it is based on and what date span they cover — so nothing is implied and nothing is extrapolated.

What you can do with it

  • Vet a channel before you pay for a placement. A big subscriber number means nothing on its own; the views-per-subscriber ratio tells you what a post there is really worth.
  • Benchmark yourself against competitors. Run your channel and five rivals in one go and compare median views, reaction rate and posting frequency side by side.
  • Find your best time to publish. The report ranks every hour and weekday by how well posts published then actually performed, in the time zone you choose.
  • Track performance over time. Schedule a weekly run and each report becomes a dated snapshot you can chart.
  • Build a media kit or a placement price list. One row per channel, ready for a spreadsheet.
  • See what a channel actually publishes — the split between plain text, photos, videos and albums, its most-used tags, and where it sends people.

What you get

One row per channel. Abridged sample:

{
"channel": "varlamov",
"title": "Илья Варламов",
"isVerified": true,
"subscriberCount": 238921,
"subscriberCountIsExact": true,
"postsAnalyzed": 300,
"serviceMessagesExcluded": 0,
"firstPostDate": "2025-12-20T16:27:36.000Z",
"lastPostDate": "2026-08-05T13:08:12.000Z",
"daysCovered": 227.86,
"activeDays": 207,
"basisSummary": "300 posts analysed, published 2025-12-20 to 2026-08-05 (227.86 days).",
"viewsMedian": 303000,
"viewsMean": 252228,
"viewsMin": 22100,
"viewsMax": 428000,
"viewCountsAreRounded": true,
"viewToSubscriberRatioPercent": 126.82,
"engagementRatioIsApproximate": true,
"reactionsPublished": true,
"reactionsMedian": 257,
"reactionRatePercent": 0.085,
"topReactions": [
{ "emoji": "👍", "totalCount": 83379, "postCount": 300 },
{ "emoji": "👎", "totalCount": 8183, "postCount": 300 }
],
"postsPerDay": 1.32,
"postsPerWeek": 9.22,
"medianHoursBetweenPosts": 11.4,
"bestPostingHour": 13,
"bestPostingHourLabel": "13:00–13:59",
"bestPostingHourBasis": "median_views",
"bestPostingWeekday": "Saturday",
"timezone": "UTC",
"mediaMix": { "text": 128, "photo": 91, "video": 49, "album": 30 },
"forwardedPostCount": 6,
"topLinkDomains": [{ "domain": "youtu.be", "count": 132 }],
"topPostsByViews": [
{
"messageId": 9871,
"date": "2026-03-14T09:31:02.000Z",
"viewCount": 428000,
"reactionCount": 1204,
"mediaType": "video",
"textPreview": "Почему в этом городе не осталось ни одного трамвая…"
}
],
"scrapedAt": "2026-08-05T13:41:07.000Z"
}

Input reference

FieldTypeDefaultWhat it does
Telegram channelslist of textThe channels to analyse. A channel link or a @username, one per line. Each channel produces one report. Required.
Posts per channel to analysenumber, 10–2000200How many of the channel's most recent posts the report is based on. More posts gives a steadier picture of typical performance; fewer is faster and cheaper and reflects right now.
Reporting time zonetextUTCThe zone used for the best hour, the best weekday and the hourly breakdown — for example America/New_York, Europe/London or Europe/Moscow. An unrecognised zone falls back to UTC and says so in the log.
Top posts to includenumber, 1–205How many best-performing posts to attach to each report, by views and by reactions.
Browse fromselectUnited StatesThe country the run browses from. A few channels are restricted in some countries, so this can change what a channel returns.
Channels analysed in parallelnumber, 1–3216How much work the run does at once. Raise it to get through a long list sooner.

Output fields

FieldDescription
channel, channelUrl, title, descriptionWho the report is about, and a link to the channel.
channelIdTelegram's own numeric id for the channel — stable even when a channel answers on more than one name, so it is the right key to join or dedupe on.
isVerifiedWhether Telegram shows the verified mark.
subscriberCount / subscriberCountIsExactSubscribers at the moment of collection, and whether that figure is exact or a rounded one published by Telegram.
postsAnalyzed, postsRead, postsRequestedHow many posts the report is built on, how many were collected, and how many were asked for.
serviceMessagesExcludedAutomatic notices ("channel photo updated", "pinned …") removed before any average was computed — they carry no views and would drag every figure down.
firstPostDate, lastPostDate, daysCovered, activeDaysThe exact window the report covers, and how many separate days in it had a post.
basisSummaryThe same thing in one human-readable sentence.
newestPostIdAnalyzed, oldestPostIdAnalyzedThe identifiers of the newest and oldest analysed posts. These are identifiers, never a post count.
reachedStartOfHistoryTrue when the whole published history of the channel was covered.
viewsMedian, viewsMean, viewsMin, viewsMax, viewsTotalReach across the analysed posts.
postsWithViews, viewCountsAreRoundedHow many posts published a view figure, and whether any of those figures are rounded by Telegram.
viewToSubscriberRatioPercentMedian views as a percentage of subscribers — the single number that says whether the audience is real. meanViewToSubscriberRatioPercent is the same on the mean.
engagementRatioIsApproximateTrue when the ratio rests on a rounded view or subscriber figure.
reactionsPublishedFalse when the channel publishes no reactions at all. Every reaction field is then null rather than 0.
reactionsMedian, reactionsMean, reactionsTotal, postsWithReactionsReaction volume across the analysed posts.
reactionRatePercentMedian reactions as a percentage of median views.
topReactionsThe most-used reactions with their totals. Standard reactions arrive with the emoji itself; custom ones are identified by their own code, and paid ones are flagged as paid.
postsPerDay, postsPerWeek, medianHoursBetweenPostsHow often the channel publishes.
bestPostingHour, bestPostingHourLabel, bestPostingWeekdayWhen its posts do best, in your chosen zone.
bestPostingHourBasis, bestPostingWeekdayBasismedian_views when performance decided it, post_volume when the channel publishes no view figures and only frequency could.
bestPostingHourMedianViews, bestPostingWeekdayMedianViews, …PostCountThe evidence behind those picks.
postsByHour, postsByWeekdayThe full distributions — 24 hourly slots and seven named days.
mediaMix, mediaMixSharePercentPosts by kind: plain text, photo, video, album, sticker and so on.
postsWithText, postsWithLinks, postsWithMedia, albumCount, editedPostCount, replyPostCountContent composition.
unviewableMediaCountPosts carrying media Telegram does not make viewable outside the app.
forwardedPostCount, forwardedPostSharePercent, forwardSourcesHow much of the channel's output is content forwarded in from other channels, and where from.
topHashtags, topLinkDomainsThe tags it uses most and the destinations it sends people to most.
topPostsByViews, topPostsByReactionsIts best posts, each with date, views, reactions, kind and a short text preview.
timezone, scrapedAtThe zone the report was computed in, and when it was collected.

Pricing

You pay per channel report.

What you pay forPrice
Channel report$8.00 per 1,000 reports — $0.008 each

Nothing else is billed: the depth you choose, the top-post count and the number of channels analysed at once do not change the price. Channels that cannot be analysed — a name that does not exist, a group, a channel with no public post history — are reported in the log and are not charged.

Worked example: analysing 50 channels at 200 posts each produces 50 reports and costs $0.40. Re-running the same 50 channels every week for a month costs about $1.60. A one-off sweep of 1,000 channels costs $8.00.

Limits & what this actor cannot do

  • Only public Telegram channels are covered. Private channels, invite-only groups and one-to-one chats are not publicly viewable and are reported as unavailable rather than returned as an empty report.
  • Groups cannot be analysed. Only channels publish a public post history; a group is reported as having none. Personal profiles, sticker sets and anything else that is not a channel are reported as such.
  • Telegram publishes a limited amount of public history, so very large targets return what Telegram makes available rather than an unlimited archive. The report says whether it reached the start of the channel's history.
  • View, reaction and subscriber counts are a snapshot at the moment of collection and keep changing afterwards. Two runs a day apart will not match exactly.
  • Telegram publishes very large counts in rounded form, so the biggest numbers are approximate rather than exact. Any figure resting on a rounded number is flagged in the report itself.
  • Some channels publish no view counts and some publish no reactions. Those fields come back as null — meaning "not published" — and never as 0, which would be a claim the data does not support.
  • Some posts carry media Telegram does not make viewable outside the app; they are counted and flagged rather than dropped.
  • Some channels are restricted in some countries, so the same channel can return a different result depending on the country the run browses from.
  • Telegram does not publish how many times a post was shared, who the subscribers are, or any historical subscriber figure. Nothing here is reconstructed or estimated.
  • Speed depends on the size of the job and on Telegram's own response times; no fixed throughput is promised.
  • Telegram's terms govern automated access. You are responsible for using the data lawfully and in line with the source site's terms, and for handling any personal data in line with applicable privacy law.

FAQ

Do I need a Telegram account? No. There is nothing to connect and nothing to sign in to — paste channel names and run it.

Does it need my phone number or login? No. It never asks for a phone number, a password or any credential of any kind, and it only ever reads what Telegram already publishes to everyone.

Can I schedule it? Yes. Schedule it daily, weekly or monthly and each run produces a dated snapshot, which is exactly what you want for tracking a channel over time.

Is the data complete? It is complete for what Telegram publishes publicly, and the report is explicit about its own basis: how many posts it used, what dates they span, how many days of that window had a post, and whether it reached the start of the channel's history. Where Telegram publishes nothing — reactions on a channel that has them switched off, for instance — you get null, not a zero.

Why is the views-per-subscriber ratio above 100%? Views are not limited to subscribers: posts get forwarded and shared, so a good channel can be seen far more often than it has subscribers. A ratio well under 100% is the more common signal to look at.

What counts as a "post" here? Anything the channel actually published. A photo album counts once, not once per image, and automatic notices such as "channel photo updated" are excluded from every statistic — they carry no views and would distort the averages.

Can I get the individual posts too? Not from this actor — it deliberately returns one computed report per channel rather than raw posts. Use a post-level Telegram scraper if you need the posts themselves.