Do you need to solve Contact Form 7 not sending email?
Don’t worry: we have a solution for you.
In WordPress, it’s common for people to run into all kinds of issues with their forms not sending email. So in this post, we’ll show you why Contact Form 7 is no longer sending emails and what you can do to get those contact form emails working 100% reliably.
Why Contact Form 7 Is Not Sending Emails
Contact Form 7 emails sent but not received? You aren’t alone.
But the lead never ends up in your inbox.
If you’re using Contact Form 7, we’ll explain why it’s common that Contact Form 7 is not sending emails.
There are 2 main reasons:
Your Emails Are Seen As Spam
Spoof emails are similar to spam. Spoofing means that someone else is faking the sender address. And any emails that are suspected of spoofing rarely even make it to an inbox.
Unfortunately, Contact Form 7 sends you a notification when a form is completed by using a default email as the “from” sender. This is often flagged as spoofing because this email is generic and masks the actual sender of the email (your WordPress site).
For this reason, Contact Form 7 email notifications are commonly lost and never end up in your inbox.
Your Hosting Company Doesn’t Use the PHP Mail Function
Another reason you’re likely running into the why is Contact Form 7 not sending emails issue is because of the PHP mail function and your hosting provider.
If your web host doesn’t support the PHP mail function, (which is very common these days) that could be the reason Contact Form 7 isn’t sending email. The WordPress
wp_mail() function relies on PHP mail to send emails from your site, including emails generated by contact form plugins.
Even if your host does allow your site to use PHP mail, it’s a pretty lousy way to send emails. PHP mail is extremely basic, and WordPress can’t add any authentication information to the emails that it generates. That means your Contact Form 7 emails can look like generic spam messages.
This is why we recommend using SMTP to send emails from WordPress instead of using the default PHP mail function by itself.
So now that you’re aware of the reasons Contact Form 7 isn’t sending email, let’s take a look at how to fix the problem.
How To Fix Contact Form 7 is Not Sending Email
There are 2 main ways you can fix this issue.
- Try Changing the From Address
- Use Contact Form 7 With WP Mail SMTP
The first step isn’t guaranteed to work, but we recommend checking your Contact Form 7 settings anyway since it’s not a good idea to use the defaults.
Let’s take a look.
1. Try Changing The From Address
Contact Form 7’s default settings use a generic sender address for each form:
Most of us never create an email mailbox or user called ‘WordPress’, so there’s a good chance that this From Address doesn’t even exist on your server.
Using a generic or non-existent address on your contact form is confusing for your visitors. It also means the email could look like spam when your hosting server sends it. This is a common problem that people have with Contact Form 7 and its default settings.
To fix this, you can make the emails sent from Contact Form 7 come from a real address that you control. When you get rid of the generic ‘WordPress’ part, they will be less likely to appear spoofed. And the added benefit is that your customers will actually be able to reach you if they use this email in the future.
Create a New Email Address (Optional)
If you don’t already have a mailbox you can use as a sender, you’ll want to create one in your hosting account.
We’ll show you how to do this using Bluehost as an example.
Go to your cPanel dashboard on your web host’s website and find the Email settings.
Find the domain that you want to use with your new email account and click Manage.
On the left, you’ll want to click on the Create button to add a new email address.
On the Create an email account screen, you’ll want to set up you mailbox like this:
- Domain: Pick the domain name that matches your website
- Username: This will be the part before the @ in your email address
Then click the blue Create button to finish setting up this new email address.
Now let’s step through your Contact Form 7 settings so that emails are sent from this new mailbox.
Change the From Email in Contact Form 7
You’ll find your contact forms by clicking Contact » Contact Forms in the sidebar.
Find the form you’re having trouble with and hover your mouse over it. Click on the link that says Edit.
On the Edit Contact Form page, scroll down a little and click on the Mail tab.
Here, you’ll change the From field to the new email address you just created in your cPanel.
Next, check that the Additional headers section says
On the contact form,
[your-email] is the name of the email field. So by using this tag as the reply-to address, any replies will go to the visitor, which makes more sense than sending them to your own account.
Now, scroll all the way down and hit Save.
Unfortunately, you may not be an advanced technical person so fix #1 might not work for you, especially if this doesn’t solve the problem completely. Luckily, fix #2 provides you an option anyone can do themselves, even beginners.
So if you are serious about fixing your email deliverability issues once and for all, here’s the easiest way to fix WordPress not sending email when using Contact Form 7.
2. Use Contact Form 7 With WP Mail SMTP
Next, we’re going to install the WP Mail SMTP plugin on your site.
WP Mail SMTP is the best SMTP plugin for WordPress. Instead of relying on your web hosting server to send emails, WP Mail SMTP sends them through a separate email provider.
By doing this, you’ll make sure that your emails are delivered every time. They won’t be filed as spam or silently discarded by an email server.
Sending through a 3rd party service adds important verification to the messages, so this is a crucial step, even if you already changed your From address. There are free and paid mailer options, so you’ll easily find a service that works for you.
Install WP Mail SMTP
To start, you’ll want to download the zip file from your WP Mail SMTP account. You’ll find it in the Downloads tab.
Next, open up the WordPress dashboard and upload the plugin to your WordPress site.
If you need help with this, jump over to this guide to installing a WordPress plugin.
Don’t forget to Activate the plugin. As soon as you activate it, the Setup Wizard will open.
If you want to pause here, you can come back and restart the wizard by clicking the Launch Setup Wizard button in your WP Mail SMTP settings.
Next, we’ll set up your email provider. Don’t forget that the Elite version of WP Mail SMTP comes with a full White Glove Setup service. So if you’re not comfortable doing this yourself, you can purchase Elite and have an expert set it up for you.
Choose Your Email Provider or SMTP Server
Now let’s run the setup wizard to create the connection from your WordPress site to an email provider.
This is easy, even if you’re not a technical user.
Click the Let’s Get Started button to start connecting your WordPress site to an email provider.
In the first step, it’s time to choose your mailer. WP Mail SMTP will connect to an API to send your emails unless you choose Other SMTP, which uses regular SMTP settings.
Not sure what to pick here? We have a few tips to help:
- For large sites, SMTP.com or Sendinblue are dependable options. Either of these mailers can handle large numbers of emails generated from your site.
- You can also use one of the other mailers if you prefer, like Outlook or Zoho Mail. Check out this complete guide to email providers to find out more about the pros and cons.
- WP Mail SMTP supports Gmail or G-Suite accounts. This is a great choice for a small sites that don’t generate tons of emails.
- Other SMTP lets you use any SMTP server that you have access to. Some providers will limit the number of emails you can send, but this is another great option if you’re just starting out. Be sure to use the correct SMTP port if you choose this option.
When you’ve chosen your mailer, open up our documentation to complete the setup steps on the provider’s side:
- Gmail (G-suite or regular Gmail)
- Amazon SES
- Zoho Mail
- Other SMTP
When you’ve set everything up on your email service website, come back to this guide to enable email logging on your site.
Turn on Email Logging (Optional)
At the end of the wizard, WP Mail SMTP will ask you which features to enable.
By default, 2 of these will already be turned on in the plugin settings:
- Email deliverability: WP Mail SMTP will route all of your messages through your new mailer
- Error tracking: WP Mail SMTP will alert you if it detects problems with your DKIM, SPF, or DMARC records
To fix Contact Form 7 not sending email, you’ll want to have both enabled.
If you have WP Mail SMTP Pro, you can also turn on the Detailed Email Logs.
Detailed Email Logs will track your WordPress sent emails so you can easily see the status of each one. (This setting won’t save the content of the email, but there’s a separate setting in the plugin if you want to do that.)
Even better, the Pro version also includes a helpful dashboard widget for your WordPress site. The widget shows sent and failed emails on a chart. That makes it easy to spot issues with your emails quickly.
If logging is enabled, you can also review the log file in your WordPress dashboard.
Our log screen lets you search for different types of sent emails and notifications so you can quickly check the status.
And that’s it! Now you’ve installed the most popular SMTP plugin to fix Contact Form 7 not sending emails!
FAQ on Common Contact Form 7 Errors
Do you have more questions on Contact Form 7 not sending email? Check out some more information on CF7 error messages and issues below.
- Does Contact Form 7 Use SMTP?
- Does Contact Form 7 Work on Localhost?
- What Does the Color of a Contact Form 7 Error Message Mean?
- The Message is Marked with a Green Border, So Why is Contact Form 7 Not Sending Email?
- How to Fix “There Was an Error Trying to Send Your Message. Please Try Again Later”
- How to Fix “Sender Email Address Does Not Belong to the Site Domain”
- How to Fix “Invalid Mailbox Syntax Is Used”
- How to Fix “Misconfiguration Leads to Mail Delivery Failure or Other Troubles. Validate Your Contact Forms Now”
- Why Is Contact Form 7 Not Sending Email to the Same Domain?
- Why Is Contact Form 7 Not Sending Email to Gmail?
- Why Is My Contact Form Stuck on the Spinning Wheel?
If you’d like to browse through all of the FAQs, let’s get started.
Does Contact Form 7 Use SMTP?
No, Contact Form 7 doesn’t use SMTP by default. Instead, it sends emails through your web server, which is unreliable and can cause your contact form emails to get lost. You can install the WP Mail SMTP plugin to easily enable SMTP in Contact Form 7.
Does Contact Form 7 Work on Localhost?
What Does the Color of a Contact Form 7 Error Message Mean?
Contact Form 7 has 3 color-coded error types:
- Yellow: This means your form has a validation error. For example, there might be a Required field that hasn’t been filled in.
- Orange: Your form submission has been marked as spam. This might be because of an issue with reCAPTCHA or Akismet.
- Red: The mail server failed. This often points to a hosting server problem that is causing issues with the
wp_mail()function. Try installing WP Mail SMTP to see if it fixes the issue. If it doesn’t, you’ll want to contact your host for help.
If the message is marked with a green border, keep reading.
The Message is Marked with a Green Border, So Why is Contact Form 7 Not Sending Email?
This usually means that your Contact Form 7 message has been marked as spam, or discarded on its journey from your site to the recipient. So it looks like your WordPress contact form is not working.
This happens when the plugin configuration settings are correct, but the outgoing emails don’t have the correct authentication. It’s super common to have this problem when you’re sending emails from WordPress.
To fix this, install WP Mail SMTP as we showed you in this tutorial. WP Mail SMTP will add the right headers to your emails so that they aren’t discarded by other servers after they’re sent.
How to Fix the Contact Form 7 Error “There Was an Error Trying to Send Your Message. Please Try Again Later”
If you see a message that Contact Form 7 failed to send your message, it’s usually triggered by Contact Form 7’s spam protection.
By default, Contact Form 7 only supports reCAPTCHA v3. This is the strictest version of reCAPTCHA, and it’s the one that users report the most problems with.
- reCAPTCHA v2 ‘I am not a robot’
- reCAPTCHA v2 invisible
- reCATPCHA v3
- Custom CAPTCHA
- Email allowlists and denylists
How to Fix “Sender Email Address Does Not Belong to the Site Domain” Contact Form 7 Error
The error ‘Sender email address does not belong to the site domain’ means that the domain in your From Email doesn’t match your website’s domain name.
You can sometimes improve email deliverability by using an email that matches the domain that the message is sent from. But the emails will still lack authentication from the server, so it probably won’t solve the problem entirely.
It’s still best to install WP Mail SMTP because this is the only way to add authentication to your WordPress emails.
How to Fix “Invalid Mailbox Syntax Is Used” Contact Form 7 Error
If you see ‘Invalid mailbox syntax is used’, this means you’ve made a mistake when typing in the From Email (sender address) in your Contact Form 7 Mail settings.
To fix this, check for typos and formatting mistakes in the From Email address you typed in.
How to Fix “Misconfiguration Leads to Mail Delivery Failure or Other Troubles. Validate Your Contact Forms Now”
The error ‘Misconfiguration leads to mail delivery failure or other troubles. Validate your contact forms now’ means that you have something in your contact form settings that Contact Form 7 doesn’t allow.
Sometimes, this validation message seems to appear for no reason. This can happen when Contact Form 7 is updated with a new validation rule.
You’ll want to go through the Mail tab carefully to address highlighted errors.
If you can’t figure out the source of the issue, it’s usually easier to switch to another free contact form plugin.
Why Is Contact Form 7 Not Sending Email to the Same Domain?
If Contact Form 7 is not sending email to the same domain your site’s hosted on, it’s usually an issue with one of these 2 issues:
Hosting Server Email Settings
You’ll want to check that your domain email is configured correctly in your hosting account.
Check with your hosting provider and ask them to verify the mailserver settings on your account.
Domain’s DNS records
Your domain name needs valid MX records in order to receive email.
And to send emails with authentication, it may also need a DMARC record, 1 valid SPF record, and a DKIM record as well.
To check your domain’s DNS records for sending email, you can send a test email from WP Mail SMTP in the Test Email tab.
After sending a test email, WP Mail SMTP will report any missing records or misconfiguration in your DNS.
Why Is Contact Form 7 Not Sending Email to Gmail?
If your Gmail account is not receiving emails from Contact Form 7, this is likely because the emails don’t have any authentication. This is usually the case when WordPress is not sending email reliably.
And if you do receive emails to Gmail, they might see a warning on them, like “be careful with this message“.
You can fix Contact Form 7 not sending email to Gmail by installing WP Mail SMTP. This will add the correct verification to the emails so that they’re delivered to Gmal.
If you want, you can send emails through your Gmail account with WP Mail SMTP as well.
Why Is My Contact Form Stuck on the Spinning Wheel?
Sometimes, Contact Form 7 will submit, but you’ll continue to see a spinning wheel the form doesn’t work. If you’re using Flamingo, you may also find the message is not saved.
Occasionally, this happens when there’s a new release of Contact Form 7. This can cause serious issues with existing forms.
Contact Form 7 users are normally told to disable all other plugins and switch to the default theme. This could help you to identify a conflict, but it doesn’t help you to solve the problem.
So there are 2 other things to try.
Regenerate Permalinks in WordPress
In your WordPress dashboard, head to Settings » Permalinks.
Change the Permalink structure and click Save. Then change it back to its previous setting and click Save again.
This will safely rebuild your
.htacess file, which sometimes fixes issues with Contact Form 7 spinning and not sending email.
Switch to WPForms Lite
For better functionality and support, you can import your Contact Form 7 forms into WPForms Lite, which is 100% free forever.
WPForms is also a lot easier to use because it’s 100% drag and drop. So you don’t need to write code to build a form.
The support in WPForms is also awesome. Even if you choose the free version, you can access help from a team of experts on WordPress.org. You’ll always get an answer to your question within 1-3 business days.
Check out this comparison of WPForms Lite vs Contact Form 7 to learn about the extra features you’ll get when you switch!
Next, Use a Gmail Alias With Contact Form 7
Now that you’ve installed Contact Form 7, you can use different Gmail or G-Suite aliases to send emails from different WordPress contact forms. This is an awesome way to have different forms sending email from different teams or departments.
Check out this guide to using Gmail aliases in WordPress to find out how to set up this powerful feature.
Ready to fix your emails? Get started today with the best WordPress SMTP plugin. WP Mail SMTP Elite includes full White Glove Setup and offers a 14-day money-back guarantee.