Contact forms are essential for visitor communication, but they're also frequent targets for spam and abuse. This guide covers common problems and how to protect your forms.
CAPTCHA challenges verify that a human is submitting your form rather than an automated bot. Most form plugins and builders include built-in CAPTCHA options.
Google reCAPTCHA is the most widely used solution and offers several versions:
Other alternatives to reCAPTCHA
Check your form plugin's settings for CAPTCHA options, or consult your plugin's documentation for integration steps.
A honeypot is a hidden form field invisible to human visitors but detected by bots. When a bot fills in the hidden field, the submission is rejected. Many form plugins include this as a simple toggle in settings, and it works quietly alongside CAPTCHA for layered protection.
Some form plugins allow you to limit how many submissions can come from the same IP address within a set timeframe. This prevents bots from flooding your inbox with hundreds of messages in minutes.
Many contact forms offer an option to send the submitter a copy of their message. Disable this feature. Here's why:
Spammers exploit this function by entering a victim's email address in your form along with their spam content. Your server then sends the spam on their behalf, making you an unwitting participant in their campaign. This can result in:
If visitors need confirmation their message was received, display a thank-you message on screen rather than sending an email.
Ensure your form sends messages to a fixed email address defined in your form settings rather than accepting a recipient address from form input. A misconfigured form that allows user-supplied recipient addresses becomes an open relay for spammers.
Make name, email, and message fields mandatory. Empty or partial submissions are often signs of bot activity and rarely represent legitimate inquiries.
Enable email address validation to ensure the submitted address follows proper formatting. Some plugins can also verify the domain has valid mail records.
Require visitors to check a box confirming they agree to your privacy policy or terms before submitting. Bots often skip checkboxes, and this adds a small barrier that stops simple automated scripts.
Some advanced form plugins track how quickly a form is completed. A human typically takes at least several seconds to fill out a form, while bots submit instantly. Forms completed in under two seconds can be automatically rejected.
Outdated form plugins often contain security vulnerabilities that spammers actively exploit. Regularly update your contact form plugin, theme, and CMS to their latest versions.
If you've implemented all these measures and still receive significant spam, consider:
Contact our support team if you need help identifying the source of persistent form spam or configuring your protection settings.