EN
Open CopyPost

A News Aggregator from Dozens of Telegram Channels: Fast, No Duplicates, No Ads

3 min readNews aggregatorsSpeedFilters

Build a Telegram news aggregator that combines many channels into one: multiple sources per pipeline, turbo receive, ad filters and duplicate protection.

Contents
  1. The setup
  2. Step 1. Accounts for reading
  3. Step 2. Speed
  4. Step 3. A clean feed
  5. No duplicates or loops
  6. A feed for a website or bot
  7. How much it costs

An aggregator is a channel that collects news on a topic from dozens of sources: economy, city news, crypto, sports. Readers come for speed and to avoid subscribing to everything. So a Telegram news aggregator has to be fast, free of ads and without repeats.

The setup #

source 1 ─┐
source 2 ─┼─► pipeline: filters + rewrites ─► your channel
   …      │                              └─► webhook (optional)
source N ─┘

One pipeline can read any number of sources and post to several recipients. Create as many pipelines as you need — they’re free.

Step 1. Accounts for reading #

The sources are other people’s public channels, so they need to be read by a user account subscribed to those channels: a bot only sees channels where it’s an administrator. Use a separate account rather than your personal one, and subscribe it to channels gradually.

Posting to your channel is easiest with a bot that’s an administrator — that’s what most aggregators do.

Step 2. Speed #

Telegram doesn’t always deliver posts from large channels to subscribers instantly. Turbo receive solves this: your own account polls the channel every half second, like an app with the channel open on screen. It turns on by itself, for up to 10 channels per account; mark your most important sources with “Turbo priority”. More than ten sources — connect a second reading account. More details in the article on turbo receive.

CopyPost itself spends a fraction of a millisecond on a post; the rest of the time is Telegram’s response. Unchanged posts are copied by Telegram itself, without downloading files, and albums go out whole at once.

Step 3. A clean feed #

Add filters to the pipeline:

  • “Skip if it has buttons” — removes most ad posts;
  • “Skip if text contains erid” — labeled advertising;
  • “Skip if it is forwarded” — sources’ reposts from other channels;
  • a regular expression for giveaways and “subscribe to the channel”.

A walkthrough with examples is in the article on ad filters. Source signatures (“Subscribe to @source”) are easy to cut with a rewrite — see text and link rewrites.

No duplicates or loops #

  • If several of your accounts read the same source, the post is copied once.
  • A post that CopyPost published itself won’t be read and sent again, even if your channel ends up among the sources of another pipeline.
  • After a connection drop or a restart, missed posts are caught up, and already published ones are not repeated.

A feed for a website or bot #

The same pipeline can send every news item to your server via a webhook — for example, to publish the feed on a website or in an app. How to receive such a request and verify its signature is in the article on webhooks.

How much it costs #

Speed is the same on every plan: turbo receive is included in the free one too. Three accounts are free — enough for an aggregator with 20 sources: two accounts read, a bot posts. Get started in the CopyPost panel.