Report Guard
Report Guard is a Reddit moderation app that watches reported posts and comments, decides whether the report pattern needs action, and gives moderators a clear modmail record of what happened.
Use it when a subreddit wants fast protection against report pile-ons, heated comment chains, or high-risk reports without making moderators constantly refresh the queue.
Quick Definition
Report Guard answers one moderation question:
"Has this content been reported enough, or seriously enough, that moderators should be alerted or the conversation should be locked?"
It can respond in two ways:
| Mode | What Report Guard Does | Best For |
|---|---|---|
lock |
Locks the post or comment, then sends modmail. | Communities ready for automatic intervention. |
monitor |
Sends modmail only. It does not lock content. | New installs, tuning thresholds, or cautious teams. |
Feature Map
| Feature | Plain-English Purpose | Example |
|---|---|---|
| Report thresholds | Act when a post or comment reaches enough reports. | Lock a post at 3 reports or a comment at 2 reports. |
| High-risk escalation | Act faster when report reasons mention serious terms. | A report containing "doxx" can trigger at 1 report. |
| Rule-aware alerts | Translate report keywords into likely subreddit rules. | harassment=Rule 1: Be civil appears in modmail. |
| Thread surge detection | Protect a whole post when multiple comments in it get reported. | 3 different reported comments in 30 minutes can lock the parent post. |
| Monitor-only mode | Test decisions without enforcement. | See what would have locked before enabling locks. |
| Manual lock and alert | Let a moderator run Report Guard from a post or comment menu. | Lock a thread and send a standardized modmail note. |
| Unlock reviews | Remind moderators to revisit content after a lock. | Send a review prompt 45 minutes after Report Guard locks a post. |
| Impact report | Summarize how much work Report Guard handled. | Send modmail with locks, alerts, surges, duplicates skipped, and estimated time saved. |
Feature Reference
Report Thresholds
Report thresholds are the basic trigger.
| Target | Default Threshold | Meaning |
|---|---|---|
| Post | 3 |
A post is eligible for action when it reaches 3 reports. |
| Comment | 2 |
A comment is eligible for action when it reaches 2 reports. |
Example:
| Event | Setting | Result |
|---|---|---|
| A post has 2 reports. | Post threshold is 3. |
No lock. Report Guard records a threshold miss. |
| A post has 3 reports. | Post threshold is 3. |
Report Guard locks or monitors the post. |
| A comment has 2 reports. | Comment threshold is 2. |
Report Guard locks or monitors the comment. |
High-Risk Escalation
High-risk escalation lets serious report reasons trigger faster than normal report volume.
Default high-risk keywords:
harassment
threat
violence
doxx
hate
spam
Default high-risk threshold: 1.
Example:
| Report Reason | Normal Comment Threshold | High-Risk Threshold | Result |
|---|---|---|---|
| "This is harassment" | 2 |
1 |
The comment can trigger after 1 matching report. |
| "Spam bot" | 2 |
1 |
The comment can trigger after 1 matching report. |
| "I disagree" | 2 |
1 |
No high-risk match; normal threshold still applies. |
Rule-Aware Alerts
Rule-aware alerts do not change content by themselves. They make the modmail easier to understand by labeling likely subreddit rules.
Mappings use this format:
keyword=Rule label
Example:
harassment=Rule 1: Be civil
doxx=Rule 4: No personal information
spam=Rule 3: No spam
If a report reason contains doxx, the modmail can include:
Likely rules: Rule 4: No personal information
Thread Surge Detection
Thread surge detection watches for several different comments in the same post being reported within a short window.
Default behavior:
| Setting | Default |
|---|---|
| Detect thread surges | on |
| Reported comment threshold | 3 |
| Time window | 30 minutes |
Example:
- Comment A in a post gets reported.
- Comment B in the same post gets reported.
- Comment C in the same post gets reported.
- All three reports happen within 30 minutes.
- Report Guard treats the parent post as a thread surge target.
In lock mode, the parent post can be locked. In monitor mode, moderators receive an alert without a lock.
Monitor-Only Mode
Monitor-only mode is for observing what Report Guard would do.
It still:
- Evaluates reports.
- Applies thresholds.
- Detects high-risk report reasons.
- Detects thread surges.
- Sends modmail alerts when configured.
- Records metrics.
It does not:
- Lock posts.
- Lock comments.
- Schedule unlock reviews, because no lock was applied.
Use monitor-only mode when first installing the app or when changing thresholds.
Lock Mode
Lock mode is the active enforcement mode.
When a post or comment meets the configured rules, Report Guard:
- Checks whether the target was already handled recently.
- Locks the post or comment if it is not already locked.
- Sends a modmail alert if notifications are enabled.
- Schedules an unlock review if that setting is enabled.
- Records the action in recent activity and metrics.
Manual Lock And Alert
Moderators can run Report Guard: lock + alert now from a post or comment menu.
The manual action:
- Works even if Report Guard automation is disabled.
- Requires the moderator to have post moderation permissions.
- Opens a form with the target ID already filled in.
- Allows an optional moderator note.
- Allows the moderator to decide whether to send modmail.
- Locks the selected post or comment unless it is already locked or unavailable.
Unlock Reviews
Unlock reviews are follow-up reminders. They do not automatically unlock content.
Default delay: 45 minutes.
When Report Guard locks content, it can schedule a later modmail prompt that asks moderators to review whether the thread has cooled down.
The review prompt includes:
- Target link.
- Author.
- Original lock time.
- Original decision reason.
- Suggested review questions.
Impact Reports
The Report Guard impact report subreddit menu action sends moderators a modmail summary of app activity.
The report includes:
- Current automation mode.
- Reports evaluated.
- Locks applied.
- Monitor alerts.
- Modmail alerts sent.
- Duplicate actions skipped.
- High-risk escalations.
- Thread surges detected.
- Unlock reviews scheduled and sent.
- Estimated moderator time saved.
- Recent decisions.
Settings Reference
General Settings
| Setting | Default | Accepted Values | What It Controls |
|---|---|---|---|
| Enable Report Guard | on |
on or off |
Whether automatic report handling is active. |
| Automation mode | lock |
lock, monitor |
Whether Report Guard locks content or only alerts. |
| Send modmail notifications | on |
on or off |
Whether actions create modmail notifications. |
Threshold Settings
| Setting | Default | Accepted Values | What It Controls |
|---|---|---|---|
| Post report threshold | 3 |
Whole number from 1 to 50 |
Reports required before a post qualifies. |
| Comment report threshold | 2 |
Whole number from 1 to 50 |
Reports required before a comment qualifies. |
| High-risk report threshold | 1 |
Whole number from 1 to 50 |
Reports required when a high-risk reason matches. |
Risk And Rule Settings
| Setting | Default | Format | What It Controls |
|---|---|---|---|
| High-risk report keywords | harassment, threat, violence, doxx, hate, spam |
One per line or comma-separated | Which report reasons lower the threshold. |
| Rule-aware escalation map | Default keyword-to-rule mappings | keyword=Rule label |
Which rule labels appear in modmail. |
Thread Surge Settings
| Setting | Default | Accepted Values | What It Controls |
|---|---|---|---|
| Detect thread surges | on |
on or off |
Whether comment clusters can trigger parent-post action. |
| Thread surge comment threshold | 3 |
Whole number from 1 to 50 |
How many different reported comments count as a surge. |
| Thread surge window minutes | 30 |
Whole number from 1 to 50 |
How far back to count reported comments for surge detection. |
Review And Safety Settings
| Setting | Default | Accepted Values | What It Controls |
|---|---|---|---|
| Exempt distinguished content | on |
on or off |
Whether moderator/admin distinguished content is skipped automatically. |
| Schedule unlock reviews | on |
on or off |
Whether Report Guard sends later review prompts after locks. |
| Unlock review delay minutes | 45 |
Whole number from 5 to 1440 |
How long to wait before sending an unlock review prompt. |
Moderator Actions
| Action | Location | What Happens |
|---|---|---|
| Report Guard impact report | Subreddit menu | Sends a modmail report with activity and impact metrics. |
| Report Guard: lock + alert now | Post menu | Opens a form, then locks the post and optionally sends modmail. |
| Report Guard: lock + alert now | Comment menu | Opens a form, then locks the comment and optionally sends modmail. |
Modmail Reference
Report Guard action alerts are meant to answer the most important moderator questions without requiring another click.
| Field | Why It Matters |
|---|---|
| Target link | Opens the post or comment that triggered the action. |
| Author | Shows whose content was handled. |
| Signal count | Shows the report count or thread-surge count. |
| Action | Shows whether Report Guard locked, flagged, monitored, or found content already locked. |
| Source | Shows whether the event came from a post report, comment report, thread surge, or manual action. |
| Decision | Explains the rule that caused the action. |
| Likely rules | Shows matched subreddit rule labels when configured. |
| Report reasons | Shows available user and moderator report reasons. |
| Settings snapshot | Captures the settings used at decision time. |
| Manual note | Includes moderator-entered context for manual actions. |
Impact Metrics
Report Guard tracks activity so moderators can see whether the app is reducing repeated work.
| Metric | Meaning |
|---|---|
| Reports evaluated | How many report events Report Guard reviewed. |
| Threshold misses | Reports that did not meet the configured threshold. |
| Locks applied | Posts or comments Report Guard locked. |
| Modmail alerts sent | Notifications sent to the moderator team. |
| Duplicate actions skipped | Repeat events ignored because the target was already handled recently. |
| Errors handled | Problems that were handled without interrupting the app. |
| Monitor-only alerts | Decisions that alerted moderators without locking content. |
| High-risk escalations | Decisions where high-risk report reasons lowered the threshold. |
| Thread surges detected | Parent-post actions caused by reported comment clusters. |
| Unlock reviews scheduled | Follow-up review reminders scheduled after locks. |
| Unlock reviews sent | Follow-up review reminders delivered to moderators. |
Estimated time saved is directional. It is meant to show whether the app is reducing moderator effort over time, not to be an exact measurement.
Setup Recipes
Cautious First Install
Use this setup when the team wants to learn how Report Guard behaves before allowing locks.
| Setting | Value |
|---|---|
| Enable Report Guard | on |
| Automation mode | monitor |
| Post report threshold | 3 |
| Comment report threshold | 2 |
| Send modmail notifications | on |
| Schedule unlock reviews | on |
After a few days, review the impact report and adjust thresholds.
Busy Community
Use this setup when report volume is high and moderators want obvious pile-ons locked quickly.
| Setting | Value |
|---|---|
| Automation mode | lock |
| Post report threshold | 3 |
| Comment report threshold | 2 |
| Thread surge detection | on |
| Thread surge comment threshold | 3 |
| Thread surge window minutes | 30 |
High-Risk Safety Focus
Use this setup when certain report reasons need immediate moderator attention.
| Setting | Value |
|---|---|
| High-risk report threshold | 1 |
| High-risk report keywords | Add terms that match the community's safety policy. |
| Rule-aware escalation map | Map those terms to the subreddit rules moderators use. |
| Send modmail notifications | on |
Safety Behavior
| Situation | What Report Guard Does |
|---|---|
| App is disabled | Skips automatic action. Manual moderator actions can still run. |
| Content is below threshold | Records a threshold miss and takes no direct action. |
| Comment is below threshold | Also updates thread-surge tracking for the parent post. |
| Content is already locked | Does not lock again; can still notify that it was already locked. |
| Content is removed, deleted, or missing | Skips safely. |
| Content is distinguished | Skips automatic action when the exemption is enabled. |
| Same target reports again | Skips duplicate handling for 7 days after a lock or monitor-only alert. |
| Monitor-only mode is enabled | Sends alerts only and never locks. |
| Unlock review fires | Sends a reminder only; it does not unlock content. |
Built With
- devvit
- typescript
Log in or sign up for Devpost to join the conversation.