Skip to main content

Content Filters — Block Links, Media, Words and More

The complete guide to Telm content filters: link allow and block lists, external promotion, forwards, images, stickers, GIFs, video, profanity and stop-words.

10 min read
In short

Content filters are independent switches that decide which message types belong in your group. Each one runs on top of the automatic anti-spam engine and only ever touches regular members — admins, the creator, anonymous admins and whitelisted members are always exempt. Turn on only the filters your community needs: link filter with per-domain allow and block lists, external promotion, forwards, the full set of media blocks, profanity, your own stop-words (with r: regex support), duplicate detection, rate limit and the go-to-DM catcher. Roll changes out with Monitoring Mode first, then watch the journal.

Media Filters — control images, GIFs, stickers and files.

Want to set this up? Do it right in your Telm account.

Open in your dashboard

1What content filters do

The anti-spam engine already removes obvious spam on its own — scams, phishing, mass campaigns, known spammer accounts. Content filters are a separate layer for the house rules that are specific to your community: the things software cannot guess, such as whether links are welcome, whether the chat should be text-only, or which words you never want to see.

Every filter is an independent toggle. Turning one on does not require any of the others — you assemble your policy by flipping exactly the switches that match how your group should behave. There is no single all-filters button, and that is on purpose: the right mix for an announcement channel is very different from the right mix for a lively support chat.

Content filters run only on regular members. Admins, the group creator, anonymous admins and whitelisted members are never punished by a content filter. That means you can be strict with the room without ever getting in the way of your own team.

Every filter lives under your group in the dashboard, on the Filters page. Changes apply instantly — there is no need to restart the bot or re-add it to the group.
Message Types — block forwards, channel posts and cross-promotion.

2Every filter at a glance

These are the content types you can control independently. Enable a filter and matching messages from regular members are removed; depending on your escalation settings the sender may also collect a warning that can build toward a mute:

  • Link filter — restrict URLs, backed by a per-group allowed-domains list and a blocked-domains list.
  • External promotion filter — block forwards and hidden links that push other people's channels and bots, with an allow list for your own.
  • Block forwards — delete any forwarded message.
  • Block images — delete photos.
  • Block stickers — delete stickers.
  • Block GIFs — delete GIFs and animations.
  • Block videos — delete videos and video notes.
  • Block audio files — delete music and audio files.
  • Block voice messages — delete voice notes.
  • Profanity filter — filter obscene language.
  • Stop-words — your own list of banned words and phrases; prefix an entry with r: to match a regular expression.
  • Duplicate detection — catch the same message posted over and over, a classic broadcast-spam pattern.
  • Rate limit — cap how many messages one member can post inside a time window.
  • Go-to-DM filter — catch invitations to move the conversation into private messages, one of the most common spam hooks.
Do not switch everything on at once. Start with the two or three filters your community actually needs, keep Monitoring Mode on, and watch the journal for a few days before you enforce.
Links tab — allow or block domains and control who can post links.

3The link filter and domain lists

The link filter is the one most groups reach for first. When it is on, links from regular members are restricted — but you stay in full control through two lists that work together.

The allowed-domains list holds domains that always pass, no matter who posts them: your own site, your documentation, your partners. The blocked-domains list holds domains that are always removed, no matter who posts them. Both lists are edited right on the Filters page, one domain per line.

Think of the allowed list as the exception to the filter and the blocked list as an always-on kill switch that works even if the general link filter is off. A domain on the allowed list is trusted for the whole group; if you instead want one person to post any link freely, whitelist the person rather than every domain they might use.

The link filter is a medium-risk change — it can remove legitimate posts from members who share links in good faith. Keep frequent, trusted link-sharers on the whitelist and add the domains your community relies on to the allowed list.
Text Filters — profanity, stop-words and custom patterns.

4External promotion and forwards

The external promotion filter is the smarter cousin of the link filter. Instead of every URL, it targets forwards and hidden links that advertise third-party channels and bots — the classic drive-by promo. Your own cross-posts stay safe through its own allow list, so promoting your sister channel never trips it.

The block-forwards filter is blunter and simpler: it deletes any forwarded message from a regular member, whatever it contains. Reach for it when forwarded content is off-topic by definition in your group — for example a focused support chat where every message should be original.

The two overlap but are not the same. With an empty whitelist the external-promotion filter removes forwarded messages as such, so whitelist the sources you trust. External promotion is about intent (someone advertising elsewhere) and leaves ordinary forwards alone; block-forwards is about the message type and does not care what the forward says. Many groups run external promotion on and block-forwards off, so genuine shares still work while promo does not.

5Media filters — images, stickers, GIFs, video, audio and voice

Each media type has its own independent switch, so you can shape exactly what your chat allows. A study group might block stickers and GIFs to keep the noise down; an announcements room might block everything except text; a voice-averse community might block voice notes only.

When a media filter is on, matching content from regular members is deleted on arrival:

  • Block images — photos are removed.
  • Block stickers — stickers are removed.
  • Block GIFs — GIFs and animations are removed.
  • Block videos — videos and round video notes are removed.
  • Block audio files — music and audio files are removed.
  • Block voice messages — voice notes are removed.
If you want spoken messages checked for spam rather than blocked outright, leave the voice filter off and turn on voice moderation instead — it transcribes the audio and runs the text through the anti-spam engine (Pro and above).

6Profanity and your own stop-words

The profanity filter removes obscene language using a built-in list, so you do not have to maintain one yourself. Turn it on and the crude stuff goes automatically.

Stop-words are your own banned list — words and phrases specific to your community that the general engine has no way to know about. A match is case-insensitive and works on a substring basis, so the entry scam catches scammer and scams too. Each hit deletes the message.

For precise control, prefix a stop-word entry with r: to treat the rest as a regular expression — for example r:free\s?gift matches free gift and freegift. This lets one entry cover many spellings, spacing tricks and variants at once. A pattern that fails to compile is skipped and logged rather than silently ignored.

Substring matching is powerful but easy to over-reach with: a stop-word of ass would also delete class and passport. Keep entries specific, use word-boundary regex (r:\bword\b) when you need it, and check the journal after adding one.

7Rate limit and duplicate detection

Rate limit caps posting speed. You set two numbers: how many messages are allowed (default 5, from 1 to 100) and the length of the window in seconds (default 10, from 1 to 3600). A member who exceeds the cap is throttled. It is the cleanest way to stop a single account flooding the chat without banning anyone outright.

Duplicate detection watches for the same text posted repeatedly — across a member's own messages or across accounts — which is exactly how broadcast spam looks. It is a low-risk filter and safe to leave on in almost every community.

8The go-to-DM catcher

The go-to-DM filter is separate from links and media entirely. It looks for the write me privately / move to my DM pattern that scammers use to pull victims out of the moderated chat and into a place where no bot can protect them.

This is one of the highest-value filters for support and finance communities, where fake support agents routinely try to lure members into a private conversation. Because the pattern is a strong spam signal on its own, the filter is safe to run in most groups — but as with any text filter, keep an eye on the journal for the first few days in case your community genuinely tells newcomers to DM someone.

9How filters fit with the rest of protection

Content filters do not replace the anti-spam engine — they run alongside it. The engine still catches universal spam regardless of your filter settings, while filters add your local house rules on top. If you need if-this-then-that logic with richer conditions and actions (reply, notify admins, buttons), that is what triggers are for, and they run before everything else.

Every filter respects the same exemptions. Admins, the creator, anonymous admins and whitelisted members skip all content filters. That is why the whitelist is the right tool for one trusted link-sharer, and a domain allow list is the right tool for a source everyone should be able to post.

Every removal a filter makes is written to the moderation journal, tagged with the filter that acted, so nothing happens silently and you can always see and undo what a filter did.

10Best practices and common mistakes

A few habits keep filters helpful rather than annoying:

  • Enable filters one at a time and watch the journal, rather than turning on a dozen at once and guessing which one caused a complaint.
  • Prefer the whitelist for trusted people and the allowed-domains list for trusted sources — do not weaken a filter for the whole group to accommodate one member.
  • Keep stop-words specific; a broad substring or greedy regex is the number-one cause of false positives.
  • Use Monitoring Mode when you roll out a medium-risk filter (links, external promotion, profanity, stop-words) so you can see what it would remove before it actually does.
  • Do not use content filters to fight scams and phishing — that is the engine's job and it is already on. Filters are for your own policy, not for spam the system already handles.
If a filter is removing something it should not, open the entry in the journal, mark it as a false positive, and adjust the filter or add the member or domain to the appropriate allow list.
Was this article helpful?

Ready to protect your group?

Add Telm to your Telegram group and let it handle the spam.