You want to automate moderation in your subreddit without manually checking every post and comment. AutoModerator is Reddit’s built-in bot that filters content based on rules you write. It’s free, runs 24/7, and handles most cleanup work. The catch is that you need to write YAML—a simple markup language—and understand how subreddit rules interact with it.
Requirements before you start
– You must be a moderator of the subreddit with “config” permissions.
– You need a basic text editor (Notepad, VS Code, or just Reddit’s built-in editor).
– Understand your subreddit’s rules. If you don’t know what you want to filter, your AutoModerator will be useless.
– Prepare a list of common triggers: spam keywords, low karma accounts, link shorteners, or specific domains.
Step 1: Access the AutoModerator configuration page
Go to your subreddit’s moderation tools. On desktop, click “Mod Tools” in the sidebar, then scroll to “AutoModerator” under “Automation.” Click “Edit” or “Create Configuration.” If you don’t see the option, check your moderator permissions.
If the page is blank, you’re starting fresh. If existing rules are there, back them up by copying the entire text to a file.
Step 2: Understand the basic rule structure
Every rule follows this pattern:
---
type: submission
title: [contains: "buy followers"]
action: remove
action_reason: "Spam - buy followers"
---
Key parts:
– type: submission for posts, comment for comments, or any for both.
– condition: what to check (title, body, domain, user, report count).
– action: what AutoModerator does (remove, filter, approve, flair, report).
– action_reason: a note so you know why it acted.
Each rule must be separated by ---. This is important: missing separators break all rules below them.
Step 3: Write your first rule (remove spam links)
Start with something simple: remove posts that contain a known spam domain. Add this to your config:
---
type: submission
domain: [example-spam-site.com, sketchy-link.net]
action: remove
action_reason: "Blacklisted domain"
---
If you want to filter (send to mod queue instead of removing immediately), use action: filter. Use filter when you’re unsure about a domain and want to review manually.
Step 4: Add karma and account age filters
This is the most common use case. You want to block new accounts or accounts with low karma from posting. Add this rule :
---
type: submission
author:
combined_karma: "< 10"
account_age: "< 30 days"
action: filter
action_reason: "Low karma or new account"
---
If you set action: remove, the user won’t see any explanation. Many subreddits prefer filter so moderators can manually approve legitimate new users.
Step 5: Test and debug your rules
AutoModerator doesn’t have a built-in test button. You must test by making a post or comment that should trigger the rule. Use an alt account with low karma. If it works, the post will be filtered or removed. If not, check the “AutoModerator log” inside Mod Tools → Mod Log. Filter by automoderator to see what rules matched and what didn’t.
Common mistake: forgetting the --- separator between rules. If your rules stop working after adding a new one, check your YAML syntax. Indentation matters. Use spaces, not tabs.
Common blockers and fixes
– Rule doesn’t trigger: Check your YAML syntax. Missing colons, spaces, or dashes break the rule. Use a YAML validator online (like yamllint.com).
– Too many false positives: Widen your conditions. Instead of combined_karma: "< 10", try < 5 or add account_age: "< 7 days".
– User complains post was removed: Check the mod log to see which rule triggered. If it was too aggressive, adjust the rule.
– Rule only applies to posts but you need it for comments: Change type: submission to type: comment or type: any.
Practical example: setting up a minimum karma rule for r/YourSub
Let’s say your subreddit r/YourSub gets spam from accounts under 3 days old with less than 50 comment karma. You want to filter such posts for manual review.
Add this rule to your config :
---
type: submission
author:
comment_karma: "< 50"
account_age: "< 3 days"
action: filter
action_reason: "New account low karma - manual review"
---
After saving, test with a throwaway account. The post should appear in your mod queue, not on the subreddit. If it doesn’t, check the YAML. Did you use tabs? Did you forget the --- before the rule?
Checklist for your AutoModerator setup
– [ ] I have config permissions.
– [ ] I backed up existing rules.
– [ ] I wrote at least one rule with correct YAML.
– [ ] I separated rules with ---.
– [ ] I tested with an alt account.
– [ ] I checked the mod log for rule matches.
– [ ] I adjusted thresholds based on actual spam volume.
Practical takeaway
AutoModerator is powerful but unforgiving. Start with one rule, test it, then add more. Use filter instead of remove when you’re unsure. Always back up your config before editing. If you mess up YAML, the entire AutoModerator stops working, and your subreddit becomes unmoderated. If you’re dealing with persistent spam filter issues , consider combining AutoModerator with Reddit’s built-in spam filter by setting your subreddit’s spam filter strength in Mod Tools → Content Controls.
FAQ
Q: Why is my AutoModerator rule not working?
A: Most likely a YAML syntax error. Check for missing colons, incorrect indentation (use spaces, not tabs), or missing --- separators. Use a YAML validator to find errors.
Q: Can AutoModerator approve posts automatically?
A: Yes. Use action: approve for posts from trusted users. You can combine it with author conditions (e.g., approved submitters or high karma thresholds).
Q: Does AutoModerator work for comments?
A: Yes. Set type: comment or type: any to apply rules to comments. The same YAML structure applies.
Q: How do I remove posts with specific words in the title?
A: Use title: [contains: "word1", contains: "word2"]. You can also use regex for pattern matching.
Q: Can I set different rules for different user flairs?
A: Yes. Use author_flair_text or author_flair_css_class as a condition. For example, author_flair_text: "Trusted" then action: approve.

