Facing the WordPress not sending email issue? Youâre not alone! Hereâs how to fix the WordPress not sending emails problem.
It happens a lot. Especially when you launch a new WordPress site. Also after moving from one web host to another.
Suddenly you notice that youâre not getting emails from your site. This includes emails from WordPress forms, site notifications, etc.
Email notifications are an important part of your WordPress site. Visitors provide their feedback via contact forms. This feedback usually comes to you via emails.
Some security plugins send email alerts. Memberships and eCommerce involve lots of other emails as well.
When you run a listing or directory site, you and your users both are supposed to get emails from the site. If your site cannot send emails, then your directory would fall.
Missing these emails is really horrible. But donât worry! In this post, weâll show you the easiest way to solve the WordPress not sending email issue. It will also fix the WordPress emails in spam problem.
We'll provide you a complete solution path to your email delivery issues.
Why doesnât WordPress send emails? Why they go to spam?
Letâs face it. There are basically 2 types of problems with WordPress emails.
- WordPress emails are not delivered
- WordPress emails go to the spam box
The first one happens when your web hostâs email server is not properly configured. Believe it or not, configuring an email server is complex.
If youâre not an expert at creating email servers, you should try an alternative solution (i.e. SMTP). Weâll show you how. Just keep reading!
Even if your site hosting is set up to send emails using the basic PHP mail function, problems could still arise. The emails can land in the spam folder. Those who use shared hosting, are at the greatest risk of facing this issue.
Ultimately, you shouldnât depend on your web hostâs default PHP email system. Although this can send emails without any additional work from your end. But the emails could go to the spam folder (and remain unnoticed). It doesnât look professional.
WordPress not sending emails and WordPress emails in spam solution
So, here we go! Weâll fix both of these above problems with a single solution. Weâll bypass the website hosting serverâs default email system.
Instead, weâll use different technology. Itâs called SMTP (Simple Mail Transfer Protocol).
With the default WordPress email function, your websiteâs emails go through the hostâs PHP mail system. If your host intentionally turns the PHP mail function off, then your siteâs emails wonât be delivered at all.
Email clients like Gmail, Outlook consider several things before putting an email in the inbox. Email service experts are good at satisfying these criteria. If your hosting or IP address doesnât have that reputation, your emails may go to spam.
So letâs better bypass the default PHP email function.
When you use an SMTP option, your WordPress emails are delivered from specialized email servers. They are good at this.
There are many SMTP email service providers. Some of them are Gmail, SendGrid, Sendinblue, Zoho, etc. You got many options to choose an SMTP server!
Tools to fix WordPress not sending emails
We need 2 things to fix the WordPress not sending emails issue. Yes, youâre reading that right. Only a couple of things. And the nightmare will come to an end!
Hereâs the list.
- WP Mail SMTP plugin
- A SendGrid account
How to fix WordPress not sending emails
Weâll do this in 4 easy steps. Letâs see it step by step.
Step 1: Install and activate the WP Mail SMTP plugin
Since there is no built-in SMTP mailer in WordPress, so we need to use it via a plugin. Have you heard the popular saying âthereâs a plugin for everythingâ? Itâs true. Itâs a blessing that thereâs a plugin for almost everything in WordPress.
You may notice several SMTP plugins for WordPress. Weâll use WP Mail SMTP, the most popular SMTP WordPress plugin.
So, log in to your WordPress dashboard. Go to Plugins â Add New. Search for WP Mail SMTP (please see the screenshot below).
Install and activate the WP Mail SMTP plugin on your WordPress site.
Now we need the second thing. The SMTP service provider. Weâll use SendGrid for this tutorial.
SendGrid offers a reasonable free plan that can send 100 emails per day. Itâs enough for a small/medium siteâs notification emails. If your site is bigger than that, you can get a paid plan.
Step 2: Get a SendGrid account and their SMTP API key
Itâs pretty straightforward. Visit the SendGrid website and sign up for a free account. Log in to your new SendGrid account. Youâll find several onboarding options.
Click the Start button for the âIntegrate using our Web API or SMTP relayâ option.
On the next screen, youâll get 2 options. Choose the âSMTP Relayâ option.
Moving on, give your API key a name. Then press the âCreate Keyâ button. Youâll see your API key on the screen. Weâll need to enter this API key into the WP Mail SMTP plugin settings soon.
Step 3: Configure WP Mail SMTP with Sendgrid API key
Go to your WordPress dashboard. Youâll find the WP Mail SMTP menu in the left navigation bar. Open that. It will bring the pluginâs Settings page.
Set the sender email address in the From Email field. Your default transactional/notification emails will be sent from this address.
If you check the âForce From Emailâ field, this email account will be used as the âsender email addressâ for all emails being sent from your site.
If any plugin on your site has some different sender email address, those will be ignored. So you have the option to force a single email address to be used as the sender email address.
Also, set the sender's name. You can use your site name here. Also, the force option is available for the sender's name. Youâre free to decide.
After deciding the "From Email" and "From Name", we get the option to choose a mailer. Weâll select SendGrid for this tutorial, as you already know.
Clicking on the SendGrid option will bring the API key input box for it.
Enter the API key we created in step 2. Click Save Settings.
Step 4: Verify the SendGrid integration
Now that weâve connected SendGrid to our website via WP Mail SMTP. Itâs time to test whether the emails are working. We need to work on both WP Mail SMTP and the SendGrid API dashboard.
On the WP Mail SMTP settings page, youâll get an âEmail Testâ menu. Click that. The following screen will appear. Using this, we can send a test email to our email inbox.
Enter an email address where you can receive the test email.
Click the Send Email button. Check your inbox. If everything was set up correctly, you should receive the email.
Once you receive the test email, go to your SendGrid accountâs API page. Check the âIâve updated my settingsâ box. Click Next: Verify Integration.
This will bring you to another page. Click the âVerify Integrationâ button on that page. Since youâve received the earlier test email, now SendGrid will understand that the test email was actually sent using their service. So it will confirm the verification.
It will show a success message.
Upon completing these steps, your WordPress transactional emails will work. But for the long run and the best email deliverability, you should authenticate SendGrid in your domainâs DNS record. SendGrid has detailed documentation that you can follow in this regard.
Wrapping up
Emails are important. For any website, proper email deliverability is a vital functionality. Now that you know how to fix the WordPress not sending emails or WordPress emails going to spam issues. We believe youâll never miss an email from now on!
We hope youâve found this article helpful. Please stay tuned to our blog for more helpful articles.
We make the best WordPress directory plugin - Business Directory Plugin. It offers lots of features to build a robust directory site. Give it a go!
Leave a Reply