Let’s tackle the best ways to reduce blog spam on WordPress…
WordPress spam is simply one of those things every blogger has to live with — unless, of course, you opt to disable comments on your blog altogether.
For those passionate about receiving blog comments, the following strategies involve the use of built-in features along with some recommended anti-spam plugins.
Force Authors to Enter their Name and Email
This strategy will not save your blog from spam, as most automated commenting software (which spammers tend to use) are well programmed to fill out these basic fields by default.
With that said, though, forcing users to enter their name and email may deter many from bothering with low quality or spammy comments – at least those who are commenting manually.
How to: Settings>Discussion>Enable the “Comment author must fill out name and email” option.
Require Registration and Login
This is where things become a bit more effective, especially if used along with a CAPTCHA plugin to reduce bot registrations…
Spammers ideally want their comments posted on as many blogs as possible; thus, forcing them to register (and log in) may prove quite an annoying task for them. While this alone won’t get rid of all spam, your blog is much better off requiring users to register.
How to: Settings>Discussion>Enable the “Users must be registered and logged in to comment” option.
Approve Comments Manually
This option is a Godsend if your blog only receives a handful of comments each week or month. Approving comments manually allows you to see every single entry before they’re public, effectively eliminating spam on your blog.
As you can imagine, though, this would be a nightmare for popular blogs that get tons of comments regularly. Needless to say, the option is there and it works pretty well for the average blogger.
How to: Settings>Discussion>Enable the “Comment must be manually approved” option.
Disable Comments on Older Posts
This is a personal favorite of mine, as it’s greatly reduced the amount of comments on my blog.
I have found that legitimate authors don’t leave many comments on posts older than 180 days (in my case, at least).
Every blog is different, especially if your older posts are endlessly popular. Play around with this option and see what works best for you.
How to: Settings>Discussion>Enable the “Automatically close comments on posts older than X days” option.
Blacklist Spammy Words
A typical spammy comment tends to contain sensational wording or promises of great success (be it financial, physical, or emotional).
With that in mind, think of words that a spammer is likely to use and add them to your blog. This subsequently sends the comment to the trash, or holds the comment for moderation (you get to pick).
I personally have blacklisted some of the following words with great success: Loan, payday, advance, lenders, insurance, click here, discount, and many more…
How to: Settings>Discussion>Visit the “Comment Moderation” section to add questionable words to the list.
Bonus: You may also hold a comment for moderation if it contains any number of link(s) from this section. I personally allow one link by default, as some well-intentioned comment authors may leave a link to relevant / legitimate resources.
Enable Comments on Individual Posts
Perhaps you’re only interested in enabling comments on specific content types (for example, whenever you post a poll, survey, or contest). In this case, it’s a good idea to disable all comments by default and only enable them on certain posts.
How to: Settings>Discussion>Enable the “Allow people to submit comments on new posts” option.
Then, enable the “Allow comments” option from the ‘New Post’ editor screen as you see fit. This effectively reduces blog spam as you have much greater control over comments overall.
Using WordPress Anti-spam Plugins
As you can see, WordPress has some pretty neat ways of reducing spam without the need for a plugin or third-party service.
That said, you should also install any of the following to minimize unwanted comments on your blog.
Suggested reading: Spam Tools You Need To Fight Pesky WordPress Comments
Note: As Akismet is pretty popular already, I will focus on other options instead.
Antispam Bee: A free anti-spam plugin with over 600,000 installations to date. Some notable features include:
- Auto-approve comments from known authors who have commented before
- Allow comments from those with a Gravatar account
- Allow comments from specific languages and/or countries
- Receive email notifications about potential spam comments
- Delete spam comments after X days
- Show basic statistics relating to spam detection rates
NoSpamNX: While not as popular as other anti-spam WordPress plugins, this one has a lot of potential due to its overall effectiveness and ease of use:
- It works almost right out of the box (only two main options to toggle)
- Block specific phrases, URLs, and even IP ranges
- Adds invisible fields to the comments section, making it harder for bots to bypass them
- Advanced filtering options based on whitelisted / blacklisted words
CleanTalk Spam Protection: This one is great for personal blogs and ecommerce stores. Some prominent features include:
- It works with the most popular contact forms for WordPress
- Blocks spam registrations
- Reduces spam orders, bookings, subscriptions, and other bogus entries on personal and commercial blogs
Beware of false-positives: In other words, don’t trust the above tools and settings 100%, as some legitimate comments can (and will) occasionally be marked as spam. Check your moderation queue or trash bin regularly.
Consider disabling comments: This is the ultimate way to fight spam. Can you offer other ways for users to interact? Consider sticking to a private social media group, a chat-based plugin, or have loyal readers email you directly.
Fortunately, there are plenty of things to reduce and even eliminate spam comments. While I personally suggest disabling them altogether, you can still have peace of mind thanks to the many anti-spam options available today.