How To Fix The Divi Contact Form Not Sending Emails

How To Fix The Divi Contact Form Not Sending Emails

A contact form is one of the most important components of a website and provides a vital line of communication between a business and its customer base. If the contact form is not reliable, a company can miss out on important customer correspondence like presale inquiries, technical support requests and more, ultimately costing them hundreds or even thousands of dollars.

WordPress has dozens of contact form options available in the plugin repository and the Divi theme includes its own native contact form module, so that no 3rd party contact form plugins are required. While Divi’s contact form module may not be as robust as other 3rd party solutions, like Gravity Forms or Ninja Forms, it is still a very well developed and useful tool that should be considered by Divi web designers.

As a moderator of the Divi Theme Users Facebook group consisting of nearly 75,000 members, some of the most frequently asked questions I see are ones like, “The Divi contact form is not working, how do I fix it?” or “my Divi contact form is not sending emails, what is wrong?”. While it is a logical first response to think that something is broken with the Divi contact form module itself, the truth is that in most instances it has nothing to do with that at all, and you will likely experience the same issue regardless of the WordPress contact form solution you are using. In this guide I will walk you through how to troubleshoot and try to figure out why the Divi contact form module is not sending emails and how to fix it.

Let’s get started…

Check to make sure the Divi contact form module settings are correct

While this may seem like a no-brainer, double-checking the contact form module settings is an important step that should be taken before you dive into more extensive troubleshooting steps, so as not to waste your time.

The first thing you should check is that the email(s) in the Divi contact form module settings is correct. Having a typo in the email address field is an easy mistake to make (I have been guilty of it myself) when you are burning the midnight oil trying to meet the deadline of a web design project.

To do this, click open the settings of the contact form module and under Content > Email Address you will find the email address field. Check to make sure that the address is correct and contains no typos.

Divi Contact Form email setting

The next thing to check within the Divi contact form module settings is the Spam protection minimum score. If you are using Google ReCaptcha for Spam protection and have the “minimum score” set too high, your contact form may be flagging legitimate Divi theme contact form entries as Spam and not allowing them to be sent. In this case, you can try lowering the Spam protection minimum score setting and testing again or try temporarily disabling it to rule it out as an issue altogether.

Divi contact form Google ReCaptcha Settings

Test to see if your WordPress website is capable of sending emails

When emails aren’t being received from the contact form module, users are quick to blame the Divi theme itself, but in most cases the issue has nothing to do with Divi at all. By default, WordPress relies on the wp_mail() function to send emails. Many quality managed hosts have intentionally disabled the wp_mail() function due to its unreliability and the fact that it is prone to abuse and can allow spammers to have a field day with contact forms on your WordPress website. In other words, many hosts are disabling this function to protect you and not to make your life more difficult.

The easiest way to test and see if your WordPress website is sending emails is to request a password reset from the login form. While logged out of your WordPress website, visit yourwebsiteaddress.com/wp-login.php, click the “Lost your password?” link.

WordPress login screen

In the following screen, enter the email address associated with your user account on the website and click “Get New Password”

reset wordpress account password

After you have submitted the password reset from the website, check your email inbox to see if you have received the message. In certain cases it may take several minutes for the email to be received. In other cases the email may have been marked as Spam by your email provider, so be sure to check your junk folder as well.

If you do not receive the password reset email or it went to Spam then I highly recommend you move on to the next steps in order to solve the problem.

The solution: Install and configure a SMTP plugin

Even if your Divi WordPress website is sending emails just fine using the native wp_mail() function, I am still a big proponent of utilizing a SMTP plugin. It certainly isn’t going to hurt anything and it will give you peace of mind that the emails being sent from your website and your Divi contact form module are being received and not going to Spam.

In the case of your website not sending emails at all, utilizing an SMTP service will most likely correct the issue with minimal effort on your part so you can move on to other things.

While there are a large number of SMTP WordPress plugins and services to choose from, at WP Zone we use and recommend SendGrid. SendGrid is a service that offers transactional and marketing email options as well as an SMTP server that is free to use up to 100 emails/day. For most users the free version of SendGrid will offer more than enough emails a day and for websites exceeding that amount, the service is very affordable. Here at WP Zone we send an average of 300 emails daily and only pay around $15/month – Well worth it for the peace of mind! Beyond that, SendGrid also offers you advanced statistics like Open Rates, Click Rates, Bounce Rates and more.

Step 1: Install and activate the Connect SendGrid for Emails plugin

When we first began using SendGrid as an SMTP provider for our website they offered and maintained their own plugin in the WordPress Repository. For whatever reasons, SendGrid decided to deprecate the plugin and no longer maintain it and eventually not offer it at all. In our mind, the plugin was easy to use and worked great, so we decided to fork it and maintain it ourselves. Our version of the plugin is kept up to date so that it is bug free and secure.

To install the Connect SendGrid for Emails plugin while logged into your WordPress Dashboard, visit Plugins > Add New. From there enter “Connect SendGrid for Emails” in the search box and then click “Install Now” once the plugin search has populated.

connect sendgrid for emails in the wordpress repository

Once the plugin is installed you will be asked to activate the plugin. Once activated the plugin settings can be found from your WordPress dashboard under Settings > SendGrid. We will return back to the plugin settings in just a bit.

activate sendgrid for emails plugin

Step 2: Create and configure your SendGrid account

First thing’s first, you need to sign up for SendGrid and create an account. As mentioned, SendGrid is free up to 100 emails/day so you are not required to enter your credit card information.

Once you have completed the signup process you will be asked to create a sender. Please note that since you are using SendGrid as an SMTP service and not using it to send promotional emails, this step is not required so you can hit the “cancel” button during this step. Information such as your “From Email Address” and “Reply To Email Address” will be configured when we return to the plugin settings in a later step.

Next you will navigate to Settings > API Keys and then click “Create API Key” in the upper right-hand corner. In the next screen you will be asked to enter the Website Name. Here you will enter a way for the API key to be recognizable by you… I usually just enter the name of the website like “WP Zone” or the URL of the site (minus the “https://”). It really doesn’t matter as long as you will be able to recognize it. Next, select “Full Access” from the options and click the “Create and View” button.

Create SendGrid API key

You will now be brought to a page that displays your unique API key for the particular site you are working on… each site requires its own key so you will have to repeat these steps for each new site you configure. Click on the generated API key that is displayed in order to copy it to your clipboard. PLEASE NOTE: The API key will only be displayed once for security purposes, so do not lose track of it. If you do lose track of it you will have to delete that key and generate a new one.

**Please note that this generated API Key has been deleted 😉 

SendGrid API key

Now that the SendGrid account and API key are created we will head back over to your WordPress website and configure the plugin settings.

Step 3: Configure the Connect SendGrid for Emails plugin

From your WordPress dashboard the settings for the Connect SendGrid for Emails plugin can be found under Settings > SendGrid. In the settings screen, you will see several different fields, however only a few are required for setup so we will only be covering the required fields in this tutorial.

Paste your API key that you copied in the previous step into the “API Key” field and ensure that API is selected in the “Send Mail With” dropdown. Then proceed to enter your “From Name” (Name as it will appear in recipient clients), and your “Sending Address” (Email address from which the message will be sent) and “Reply Address” if you would like that to be different from the sending address.

connect sendgrid for emails plugin settings

Now that all of the required information has been entered, click the “Update Settings” button to save the configuration.

At the bottom of the plugin settings the Connect SendGrid for Emails plugin provides a method to test and make sure that your WordPress website is now sending emails. Here you should only have to enter your email address and the subject line. Hit “Send” and then head over to your email inbox to confirm receipt of the test message.

send a test email for connect sendgrid for email

That’s it!

After SendGrid SMTP is configured and tested, your Divi contact form module should now be sending emails without any issues. If your website is sending emails, but you are still having trouble with Divi’s contact form module, you should open a support ticket with Elegant Themes as further troubleshooting may be required. 



Cory Jenkins

I am an Avid WordPress User/Developer/Blogger since 2007 and Co-Founder of WP Zone. When I am not working on awesome WordPress and Divi stuff, I enjoy hanging out with my family, watching baseball and exploring the great outdoors in our RV.