Skip to main content

Moderation

Moderation rules inspect incoming chat messages and perform an action when a message matches. Rules are ordered from top to bottom. The first matching active rule wins, so put specific rules above broader rules.

Open Moderation in the Kicklet dashboard to review rule counts, active rules, excluded roles, the rule table, and moderation history.

Think of a moderation rule as an if this, then that check for chat:

  1. The trigger decides whether a chat message matches the rule.
  2. The action decides what Kicklet should do when the trigger matches.
  3. The position decides when the rule is checked compared with your other rules.
  4. The active switch decides whether the rule is currently used.

Kicklet checks moderation before normal chat automation continues. If the sender is ignored, no moderation rule runs. If the sender is not ignored, Kicklet checks active rules in order. As soon as one rule matches, Kicklet executes that rule's action and stops checking the remaining rules for that message.

Use Moderation history to review moderation actions after they happen. History rows include the user, action, message, rule details, and matched text where available. Search by user when you need to inspect a viewer's recent moderated messages. Open the linked rule from a history row when you need to adjust a rule that is too broad or too narrow.

Who Is Ignored

Some users should not be moderated automatically. Kicklet always ignores the broadcaster, the Kicklet bot, moderators, and staff. You can also exclude OGs, VIPs, and subscribers from moderation rules in the Excluded roles section.

User or roleBehavior
BroadcasterAlways ignored.
Kicklet botAlways ignored.
ModeratorAlways ignored.
StaffAlways ignored.
OG, VIP, SubscriberIgnored when enabled in Excluded roles.

Excluded roles apply before triggers are checked. For example, if subscribers are excluded, a subscriber can send a message that would normally match a URL or spam rule and Kicklet will not act on it.

Triggers

A trigger is the condition part of a rule. It answers the question: Which messages should this rule catch?

Most text triggers use an item list. Each item is one phrase, word, domain, or pattern to check. For Contains, Equals, Starts with, and Ends with, you can choose whether matching should ignore uppercase/lowercase differences. Regex is always handled as a regular expression pattern, so case sensitivity should be controlled inside the pattern itself when needed.

TriggerMatches when
ContainsThe message contains one of the listed items.
EqualsThe whole message equals one of the listed items.
Starts withThe message starts with one of the listed items.
Ends withThe message ends with one of the listed items.
UppercaseThe message contains letters and all letters are uppercase.
SpamThe same user sends too many matching messages in a time window.
URLThe message contains a URL that is not in the allowed list.
RegexThe message matches one of your regular expressions.

Use the simplest trigger that fits the job. Contains is good for obvious blocked words or phrases. Equals is stricter and only catches messages that are exactly the listed text. Starts with and Ends with are useful for repeated command-like spam. URL is better than a custom regex when your goal is link moderation, because it understands normal URL formats and lets you maintain allowed domains.

Spam Trigger

The spam trigger looks at recent messages from the same viewer. It can require a minimum message length, a minimum number of messages, and a time window in seconds. It can compare messages by similarity or by exact equality. If Ignore emote-only is enabled, emote-only messages are not counted toward the spam rule.

The default spam settings start with 5 messages within 30 seconds, similarity checking enabled, 60% similarity threshold, and emote-only messages ignored.

URL Trigger

The URL trigger blocks links unless they match the allowed list. By default, links are blocked. Add allowed domains when you want viewers to be able to post specific sites.

Kicklet automatically allows your own Kick channel URL for the current channel. Add entries such as kick.com, youtube.com, or a full domain you trust. Keep the allowed list narrow; broad entries can allow more links than intended.

Regex Trigger

Use regex only when the simpler trigger types cannot express the rule. Regex is powerful for patterns such as repeated character spam, disguised words, or structured text, but it is also easier to make too broad.

Kicklet compiles regex rules with Go's regular expression engine. When testing patterns, use a tester with the Golang flavor selected:

Invalid regex patterns are skipped when a message is checked, so test a pattern before relying on it. Prefer a small, targeted pattern and test it against messages that should match and messages that should not match.

Actions

An action is the result part of a rule. It answers the question: What should happen after a message matches?

ActionResult
DeleteDeletes the matching chat message.
TimeoutTemporarily bans the user for the configured number of minutes.
BanBans the user.

Timeout duration is entered in minutes and can be between 1 and 10080.

Use the least severe action that solves the problem. Delete is usually enough for mild link or phrase cleanup. Timeout is better for repeated behavior that should stop immediately but does not require a permanent ban. Ban should be reserved for severe abuse or messages that should never be allowed in the channel again.

Rule Order

Rule order matters. Kicklet checks active rules from top to bottom by their position. The first rule that matches wins, and later rules are not checked for that message.

Put narrow, high-confidence rules above broad rules. For example, place a specific scam-domain rule above a broad URL rule, or a severe slur rule above a general spam cleanup rule. This makes sure the intended action is used when a message could match more than one rule.

Use the arrow buttons in the moderation rule table to move rules up or down. New rules are added at the end of the list. Deleting a rule closes the gap so the remaining positions stay continuous.

Creating Rules

Click Create rule to add a moderation rule. Give it a clear name that explains what it catches, such as Block Discord invites, Repeated uppercase, or Scam domains.

Pick the trigger first, configure its values, then choose the action. After saving, review the rule order and move the rule up or down if another rule should run before it.

Rules can be enabled or disabled without deleting them. Disable a rule when you want to pause it temporarily or test whether it is causing false positives. Delete a rule only when you no longer need it.

The number of moderation rules depends on your account limits. Rule names must be unique for your channel.