Contact form that does not end up in spam
Contact form that does not end up in spam
Nothing is more frustrating than missed messages from potential customers. Many WordPress contact forms suffer from this problem: emails end up in the spam folder or do not arrive at all. In this article, you will learn how to set up a reliable contact form that always lands in the inbox.
Why do form messages end up in spam?
Email servers use various checks to detect spam. Form messages often fail because:
- The sender is not verified (missing SPF/DKIM)
- The From address differs from the server sending the mail
- The content looks like spam (certain words, links)
- The sending IP reputation is bad
- There is no authentication via SMTP
Setting up Contact Form 7 correctly
Contact Form 7 is the most popular free form plugin. Here is how to set it up optimally:
Installation
- In WordPress, go to Plugins > Add New
- Search for "Contact Form 7"
- Install and activate the plugin
- Go to Contact > Contact Forms
Configuring the form
The default form contains the basics. Important adjustments:
Mail tab settings:
- To: Your own email address
- From: Use the email address of your website, not the filled-in address
- Reply-To: Here you put the filled-in email address so you can reply directly
Example From field:
Example Reply-To:
This ensures the mail technically comes from your own domain, but you can still reply directly to the visitor.
WPForms as an alternative
WPForms is more user-friendly with a drag-and-drop builder:
- Install WPForms Lite (free) via Plugins
- Go to WPForms > Add New
- Choose a template (Simple Contact Form)
- Customize fields with the builder
- Configure notifications correctly
Notification settings
- Send To Email: Your email address
- From Name: Name of your website
- From Email: An address on your own domain
- Reply-To: The smart tag for the email field
Configuring SMTP for reliable delivery
The standard PHP mail function is unreliable. SMTP solves this by sending emails via an authenticated connection.
WP Mail SMTP plugin
- Install "WP Mail SMTP" plugin
- Go to WP Mail SMTP > Settings
- Choose "Other SMTP" as mailer
SMTP settings for Theory7
With Theory7 hosting, use these settings:
- SMTP Host: mail.yourdomain.com
- Encryption: TLS
- SMTP Port: 587
- SMTP Username: Your full email address
- SMTP Password: The password for that email address
More information about SMTP configuration can be found in our article about WordPress Email SMTP.
Test your configuration
After setting up:
- Go to WP Mail SMTP > Tools > Email Test
- Send a test email to yourself
- Check if it arrives in your inbox (not spam)
Checking SPF and DKIM records
SPF and DKIM tell receiving servers that your server is authorized to send mail on behalf of your domain.
SPF record
An SPF record looks like this:
Check your SPF record:
- Log into DirectAdmin
- Go to DNS Management
- Find the TXT record for SPF
- Add missing sources if needed
DKIM record
DKIM adds a digital signature to your emails:
- In DirectAdmin, go to Email Accounts
- Find the DKIM option
- Activate DKIM for your domain
- The DNS record is automatically created
Read more about SPF records and DKIM verification in our knowledge base.
Anti-spam protection
Spam filters also look at how your form is protected against abuse.
Honeypot fields
A honeypot is an invisible field that only bots fill in:
Contact Form 7: Install the "Honeypot for Contact Form 7" plugin and add to your form:
WPForms: Go to Settings > Spam Protection and enable the honeypot.
reCAPTCHA integration
Google reCAPTCHA prevents automated spam:
- Go to google.com/recaptcha
- Register your site and choose reCAPTCHA v3 (invisible)
- Copy the Site Key and Secret Key
- In Contact Form 7: go to Contact > Integration > reCAPTCHA
- Fill in both keys
- Add the reCAPTCHA tag to your form
Cloudflare Turnstile
As an alternative to reCAPTCHA, you can use Cloudflare Turnstile. This is more privacy-friendly and just as effective.
Optimizing form content
Some content triggers spam filters. Avoid:
- All capital letters in subject or message
- Many exclamation marks or special characters
- Suspicious words (free, click here, etc.)
- Too many links in messages
Setting a clear subject
Use a consistent subject that does not look like spam:
Testing and monitoring
Send test messages
- Fill in your own form with different email addresses
- Test with Gmail, Outlook, and other providers
- Check with each provider if the message arrives
View mail logs
Install "WP Mail Logging" to log all sent emails. This way you can see exactly what is being sent and if errors occur.
Checklist for reliable forms
- SMTP plugin installed and configured
- From address is an address on your own domain
- SPF record correctly set
- DKIM activated
- Honeypot or reCAPTCHA active
- Reply-To field used for visitor address
- Test email successfully received
With this configuration on Theory7 hosting, your form messages will reliably arrive in your inbox.
0 van 0 vonden dit nuttig