Public Telegram channels publish a subscriber counter. It is the most gamed number in the ecosystem, and if your tooling ingests it raw you are letting channel operators write their own credibility score. The fix is cheap: turn the scalar into a time series and compute four features before you trust anything built on top of it.
Feature 1: daily delta series. Poll t.me/s/<channel> once a day (the preview page carries the count), store (date, subscribers). The delta series is what you mine; the scalar is marketing.
Feature 2: the overnight step. Purchased subscribers arrive as a step function: +1,800 overnight, then flat. Organic growth is a noisy ramp with weekday seasonality. A one-line test - max single-day jump over the trailing 30-day sigma of deltas - flags purchased bursts with good precision.
Feature 3: growth/view divergence. Growth with a flat view curve = the channel is buying audience to look bigger to advertisers and to analysts like you. Growth with a proportionally rising view curve = real event interest. This is the single most informative 2D plot in channel vetting, and both axes are public.
Feature 4: the decay tail. Purchased audiences churn visibly: after a purchased spike, subscriber counts drop over the following days as the seller's batch accounts expire. Organic audiences never leave in synchronized waves. A negative-delta cluster after a spike is a purchase confession.
Implementation notes that prevent garbage:
- Parse the count from the preview HTML, not from screenshots; store raw plus normalized (k/M suffixes are locale-dependent).
- Poll at a fixed UTC hour; intra-day jitter adds fake deltas.
- Channels below the ~1000-subscriber threshold hide view counts in preview - compute features 2/3/4 only when the view axis exists; otherwise fall back to post cadence.
These four features feed the audience-quality axis of the channel scorecard my collection sets run: origin, language consistency, cadence regularity, audience quality (this post), link hygiene, plus the rules for mirror and ring detection. The full scoring sheet ships in the Telegram & Web OSINT Bundle ($5); a free sample brief shows the output format.
Runs free on GitHub Actions - no server, no paid APIs.
Top comments (0)