WordPress emails can let you know about contact form entries, new comments, new user registrations, and other helpful information. But what if those emails never reach you? Having problems receiving email notifications from your WordPress site, contact forms, or even WooCommerce emails can be bad for your business.
Why is WordPress not sending emails successfully?
By default, WordPress uses the PHP mail function to send emails generated by a plugin (such as contact form, for instance) or WordPress. But PHP isn’t the ideal solution, as it can decrease the chances of emails getting delivered. Emails sent via PHP can end up in junk or spam folders because of the PHP mail feature’s nature.
Some email providers (like Gmail) use various tools to reduce spam and may even block emails sent via PHP. That is one of the reasons why they never actually reach the recipient.
Spam blocking tools attempt to determine whether or not emails are from the destination listed as their point of origin. And emails sent from WordPress websites often fail this test.
Besides, certain hosts even deactivate the PHP mail function or limit its usage to SMTP quota limitations.
This is why it is recommended to use SMTP (Simple Mail Transfer Protocol). Unlike the PHP mail function, SMTP uses authentication protocols, which increase the chances of emails being delivered to recipients.
A properly set SMTP server eliminates the need for sending WordPress emails using a web host email server. In this case, emails go directly from WordPress to the SMTP server, which results in better deliverability as SMTP servers use the PHP Mailer Library instead of the PHP Mail function. This increases the likelihood of emails being delivered and reduces the chances of messages ending up in a person’s junk or spam folders.
Fixing WordPress Not Sending Emails Issue
If your web hosting provider supports SMTP, you can use their SMTP server to send WordPress emails. However, some services (such as managed hosting) don’t provide email access. Because of that, most people need a simple way to fix issues with WordPress not sending emails.
I recommend installing and activating the free Simple SMTP – YaySMTP plugin. The free version of the plugin lets you send emails using Gmail, SMTP.com, Sendinblue, SendGrid, Mailgun, Amazon SES, and other SMTP servers.
How To Set WP Mail SMTP?
After installing and activating the plugin, go to the Settings menu of WP Mail SMTP. Enter the business email address and name, which all emails you receive will have into the “From Name” field and “From Email” field. Use the same email address that you’ll be using for the SMTP mailing service.
Now it’s time to select your site’s SMTP mailing service. I don’t recommend the default PHP mail feature, as it uses the PHP mail() function, which I already mention is most likely the cause of your emails not being delivered. There are plenty of other available mailing options that are much more effective.
Choosing an SMTP Provider
There are some excellent free mailing options that you can use. For example, SendGrid has a free plan which allows you to send up to 100 emails per day for free, and Sendinblue lets you send up to 300 emails daily free of charge.
Those two are the only ones that offer some kind of free plan, are easy to set up, and available in the free version of WP Mail SMTP. For SendGrid and Sendinblue, you will only need to enter the API key in WP Mail SMTP settings, and that is all. You will get an API key when you register your account.
But you don’t have to use those two. You can use other options, including SMTP.com, Mailgun, Gmail, etc. The following config step will display accordingly to your selected Mailer option.
If you have a Gmail or G Suite account, then you can use that to send emails. The only downside is that it requires few steps to set everything up, and Gmail’s API has rate limitations and a number of additional restrictions that can lead to challenges during setup.
If you’re already using Outlook or Microsoft Office 365 as your regular email account, you can still use that address to send WordPress emails. But this isn’t something I would recommend because it’s less secure.
The Amazon AWS Simple Email Service (SES) is an easy way to resolve the WordPress email issue. Amazon allows you to send up to 62,000 emails every month, completely free of charge. I don’t personally advise it as a primary option because the setup can be rather complex for newcomers. However, if you can get it done right, the outcome would be very rewarding.
Pick the “Other SMTP” option if you want to use your current hosting for sending emails (if hosting provides that option). This does require some data from hosting, but once set, you can send unlimited emails for free (though there are some limitations from host to host).
The WP Mail SMTP plugin offers links to helpful documentation, so you will have tutorials on setting up the plugin with each email provider.
Whichever SMTP option you choose, don’t forget to use the “Send Email Test” option to ensure that emails are being sent without issue. It would be best if you also opened the email inbox to ensure that you received the test email.
Please note: In YaySMTP you won’t have to leave the current page or reload the settings page when you click Send a test email. This is a handy built-in feature that every WordPress user love.
Wrapping Up
Many sites have to deal with WordPress mailing problems. These issues can be rather expensive for eCommerce websites and other online businesses, so it is worth using an SMTP provider. There are many reasons why sending email issues may arise, but the solution provided will definitely help improve email deliverability.
There are, of course, plenty of other options and email providers available. Still, I wanted to provide an approach that people with varying levels of WordPress knowledge and experience can easily implement. And advanced users can configure additional options based on SMTP servers, SMTP ports, and email addresses.
Recommended
WP Mail SMTP – YaySMTP plugin lets you resolve the issue with emails not being delivered. For no-code people, it eliminates the need for a technical understanding of email services. All you need to do is configure settings and save changes. The issue of WordPress not sending emails is a thing of the past!