Spam Filter
Spam filters detect typical spam patterns automatically and react based on your rules. Each filter is configured separately and runs live on incoming chat messages.
Dashboard overview
On this page you configure each filter card with Active/Inactive, action, timeout duration, and thresholds. Optionally you can post a chat notice per filter (with text or @mention). All settings are per channel.
Filter types and logic
- Links: Checks all detected links. Allows whitelist domains and optionally Twitch clips.
- Caps: Measures uppercase ratio in messages above a minimum length.
- Emotes: Counts total and unique emotes (Twitch, optional 7TV).
- Paragraph: Triggers on too many characters or lines.
- Special characters: Ratio of non-alphanumeric characters (after removing spaces).
- Repetition: Too many identical characters in a row or too many repeated words.
Check order (important)
- Filters run in a fixed order: Links → Caps → Emotes → Special characters → Repetition → Paragraph.
- Per message, at most one filter triggers (the first hit stops the chain).
Exceptions and roles
- Broadcaster is always ignored.
- Mods are only moderated if the bot is sending as the streamer.
- For Caps, Emotes, Paragraph, Special characters, and Repetition there are exceptions for Subs/VIPs.
- For the Link filter you can explicitly allow: Subs, VIPs, Mods, and Twitch clips.
Actions and timeout
- Action per filter: Delete message, Warning, Timeout, Ban.
- Timeout duration field appears when Timeout is selected.
- If deletion fails, a 1s timeout is set as fallback.
Chat notice (optional)
- You can post a notice per filter (plain chat message or with @mention).
- The text is sanitized (max. 200 characters, no line breaks).
- You can use these placeholders in the notice:
{user},{login},{display},{channel},{filter},{reason}. - Depending on the filter, additional values are available, e.g.
{ratio},{threshold},{domain},{total},{unique}.
Link allowlist
- One domain per line, wildcards like
*.example.comare allowed. - Protocol and path are ignored (https://, www. are removed).
- Maximum 50 entries; only valid domain characters are accepted.
Permit (link exemption)
- With the
!permitcommand you can temporarily allow users to post links. - Set the default duration for
!permitin the Link filter. !permitonly works when the Link filter is enabled.