Dear Donny,
If you read this, it means you know how to prevent spammy comments in your WordPress website. Here’s how.
The very first time you started a WordPress blog, you were so happy that someone put comments in the comment box. It has been long time ago. Do you remember the old days, comments are full of backlinks, and it never changes. The difference is now comments are polished as if they actually read the article, and most of the time are written by AI.
Actually there are several ways to stop them from flooding the database. WordPress gives option for you to moderate comments, put an anti-spam system like Akismet (which you never use), or install Captchas in form comments using Google reCaptcha or Cloudflare turnstile, or the very extreme, is just turning it off.
Moderate Comments
Go to Settings -> Discussions

If you know English, you will figure it out yourself Donny.
Your First Defense: Comment Moderation
You CAN moderate every single comment before it is “live” with WordPress. I had this turned off at the time because I didn’t want to micromanage. Big mistake.
You will be able to see it in under Settings > Discussion. Tick the box labeled “Comment must be manually approved.” A simple solution, but so tremendously effective. It allows you to vet what appears and saves things from going off the rails.
Why Akismet Exists (Even If I Spurned It)
Akismet is a part of WordPress by default. It is a very powerful anti-spam plugin which compares comments with the database on literally millions of other websites.
The funny thing is I never even used it. I’d always tell myself I’d “set it up later.” Well, if you’re reading this in the future and still aren’t using Akismet, it might be time to now.
CAPTCHAs Actually Work
I thought CAPTCHAs were annoying. But they work. Using something like Google reCAPTCHA or Cloudflare Turnstile on the comment form will cut down on automated spam dramatically.
You can easily do this with a plugin like Simple Google reCAPTCHA. Just one more line of defense. And the best part? Readers who come to you in good faith will not object to that extra click if they’re truly interested.
Disable Comments on Old Posts
Actually, here’s an odd trick that works. Auto-close comments on old posts. Spam is predominantly directed at old, lost pages. Visit Settings > Discussion and declare that you want comments to shut down automatically after, let’s say, 30 or 60 days.
This won’t eliminate all spam, but it cuts the volume dramatically. New posts continue to be engaged with, and old ones don’t turn into spam magnets.
The Nuclear Option: Shut Down Comments Altogether
Sometimes, enough is enough. If comments are not crucial to your content, then don’t feature them. You have the option to do it on a per-post or site-wide level.
There were days when I didn’t want to fight it. And honestly, that’s okay. Comments are not your content. If your readers truly want to contact you, they’ll make the effort. Email, social media, DMs. You are not required to have a public comment section if it’s mostly noise.
Other Tricks That Helped
Just to enumerate them quickly, to have something to refer to later:
- Limit links in comments. You can configure WordPress to moderate comments with more than 1 or 2 links.
- Blacklist keywords. Under “Disallowed Comment Keys,” you can blacklist anything with particular words (e.g., “viagra,” “casino,” “.ru”).
- Require registration. If you are developing a community, making users sign in before they can comment will help you to keep things legit.
Final Thoughts (To Me, Later)
Spam is never going away. It just evolves. What began as gibberish and link farms has become semi-coherent, machine-generated prose. But the tools to combat it have changed as well.
So whether you’re just getting something off the ground or circling back to an older project, make sure you’ve got the basics of protection in place. You’ll save yourself hours of cleanup and prevent spam from having any place to expand.
And if some day comments become relevant again, with real people contributing thoughtful responses, fabulous. You’ll be ready.
Until then, keep it clean.