How to Fix WordPress Not Sending Emails (3 Easy Suggestions)
If you work with websites, you may have encountered the issue of WordPress not sending emails (or sending emails that get lost in a recipient’s spam folder).
That’s because WordPress emails (which can include anything from site notifications to contact form responses) need to be configured correctly to ensure their successful delivery.
Fixing WordPress email is one of the most frequently asked topics on WordPress troubleshooting forums, but thankfully, it’s usually an easy issue to resolve.
If you’re encountering issues with WordPress not sending emails, or your WordPress emails are going straight to spam, keep reading to find out how you can fix your WordPress email once and for all. Here’s what we’ll cover:
- Reasons WordPress Is Not Sending Emails
- How to Configure WordPress to Send Emails
- How to Prevent Emails From Going to Spam
- How to Send Your WordPress Emails With Confidence
Reasons WordPress Is Not Sending Emails
There are a few reasons your WordPress site may not be sending emails but it often boils down to your website or your web host’s specific email settings and configurations. See below for three easy ways you can check (and hopefully fix) your WordPress email.
Check your email settings
One of the first things you can do if WordPress isn’t sending emails is to confirm that your email settings in the WordPress admin dashboard are correct.
To see these settings, go to Settings > General and make sure the correct email address is entered in the “Email Address” field. Any errors or typos in this field could cause emails not to send, or it could cause them to be flagged as spam.
If your WordPress site isn’t sending emails, check your admin settings as a first step
You most likely set these details up when you first launched your site, but it’s always worth a quick check to see if this simple fix can remedy your email issues.
Check with your hosting provider
If all looks good in your admin dashboard, the next place to check is with your hosting provider.
One of the most common reasons for WordPress not sending emails (or WordPress emails going to spam) is that a website’s hosting service isn’t properly configured (or isn’t configured at all) for sending emails.
Many hosting providers disable or circumvent the default WordPress email settings, which are set up to send emails using your hosting server and its wp_mail() function (based on the PHP mail() function).
This can be problematic, as your hosting server should be used to power your website, not send email.
At WP Engine, for example, we work hard to ensure that normal WordPress emails, such as password resets or eCommerce order confirmations, do not experience issues.
However, for more robust email functionality, monitoring, and scalability, we also recommend utilizing a third-party email host (like SendLayer or Mailgun) that can offload the demand to servers meant for email.
If you’ve determined that emails are not being sent from your WordPress site, check with your hosting provider to better understand their email configurations, limits, and use (or prohibition) of the PHP mail() function.
Check your email configurations
If your site is indeed sending emails using the PHP mail() function, this could be another reason emails aren’t sending at all—or a very likely reason they’re ending up in spam folders.
That’s because emails sent using the PHP mail() function lack proper authentication and are often flagged as spam or rejected by email servers outright.
While the PHP mail() function does not provide built-in support for email authentication protocols such as Sender Policy Framework (SPF), DomainKeys Identified Mail (DKIM), or Domain-based Message Authentication, Reporting, and Conformance (DMARC), there are plugins and other solutions available that can be used to add authentication to emails sent via the PHP mail() function (more on this below).
Check your plugins
If none of the above issues are affecting your WordPress email, try disabling and then re-enabling plugins that may be interfering with emails, such as security or spam prevention plugins.
Alternatively, the issue may be found in a plugin itself, such as a contact form plugin that’s failing to generate the proper emails.
Make sure and check any plugins in question for errors or issues that may be preventing emails from being sent. The best place to start will be the settings for each specific plugin, where email details as well as error logs should be readily visible.
How to Configure WordPress to Send Emails
There are several ways to configure WordPress for sending emails. In addition to the wp_mail() function (detailed above), which allows you to send emails programmatically, you can also configure your own web server to send authenticated WordPress emails
One common method for doing this is installing and configuring the Postfix package on a Linux server. However, if you’re using a shared hosting service, there may be email restrictions in place that prevent you from making server configurations (or that cause larger site issues when you do). That’s why it’s always wise to check with your hosting provider before making any server-side changes.
While the two options above are not without their challenges, an easier and more common method for configuring WordPress to send emails is to use a plugin that integrates with a third-party email service.
With a high-quality email plugin in place, you can configure your WordPress email to send from an SMTP (Simple Mail Transfer Protocol) server, which offloads server demand and provides email authentication in one fell swoop.
While there are numerous email services and integrations available, here are a few of the most popular email plugins for WordPress:
One of the most popular plugins for WordPress email is WP Offload SES, which sends all site emails through Amazon Simple Email Service (SES). The plugin offers the high delivery rates and low cost of Amazon SES with a much easier setup. Plus, WP Offload SES has open-and-click tracking built-in, eliminating the need for a laborious and time-consuming CloudWatch setup.
WP Mail SMTP resolves email issues by improving and changing the way your WordPress site sends emails. The plugin reconfigures the wp_mail() function to use either proper SMTP host credentials or a built-in SMTP mail provider. The plugin has free and premium versions available and provides an easy-to-use setup wizard and detailed documentation to help you get started.
Similar to the above plugins, Easy WP SMTP lets you configure and send all outgoing emails using your preferred SMTP server, including Gmail, Yahoo, and other popular email clients. Using the plugin, you can also enable debug logging to see if emails are being sent successfully or not.
For the more marketing-focused WordPress user, MailPoet helps you create, send, manage, and grow your email marketing campaigns – all without leaving your WordPress dashboard. This plugin is great for managing subscriber lists and sending newsletters with WordPress, and it’s also a great option for WooCommerce emails, including customized transactional emails
Last but not least is Post SMTP Mailer, a next-generation SMTP plugin that assists and improves the email deliverability process of your WordPress website. More than 300,000 users trust Post SMTP Mailer to send their daily WordPress emails to millions of users worldwide. The plugin replaces the default WordPress SMTP library, PHPMailer, with the heavy-duty Zend_Mail so you never lose an email to PHP mail() again!
To configure WordPress email using a plugin, you’ll need to install and activate the email plugin you’ve chosen. Once it’s installed, go to the plugin’s settings page and configure the plugin to use the third-party email service of your choice (Gmail, Yahoo, etc.). This will typically involve entering the service’s SMTP server details and credentials.
Finally, once you’re set up, make sure and test the email configurations with a test email.
How to Prevent Emails From Going to Spam
While integrating your WordPress site with a third-party email service should make a significant difference in preventing emails from going to spam (and will handle some of the recommendations below), there are additional steps you can take to ensure your WordPress emails make it to their intended destination.
Whitelist your email address
Whitelisting an email address is the process of adding it to a list of approved or safe senders. In general, once an email address is whitelisted, emails sent from that address will be delivered to a recipient’s inbox instead of their spam or junk folder.
While this is typically done by the recipient or on an individual level, businesses can submit their emails to large-scale whitelists that are used by spam filters and email servers to determine which emails should be delivered.
That said, not all email providers and spam filters use global whitelists, but submitting your email address and being verified by one (or more) can increase the odds of future email success, in tandem with the email best practices noted above.
Use a safer email address
In addition to having an email address whitelisted, you can take additional steps to avoid spam filters, like making your email address safer.
The first and best way to do this is (as mentioned above) by authenticating your email. Authentication methods such as SPF, DKIM, and DMARC are all standard email protocols, and they help prove that an email is coming from the domain it claims to be coming from, reducing its chances of being marked as spam.
Another way to make your email address safer is to avoid spam trigger words and phrases, such as “free,” “guaranteed,” or “earn money,” all of which are known to trigger spam filters.
In addition to avoiding these words in your email address, you should also prevent them from appearing in the subject line and body of your emails to reduce the chances of being marked as spam.
Finally, the reputation that’s tied to your email address is a factor that email providers use when determining whether an email should go to an inbox or a spam folder. By maintaining a good sending reputation, and by using a reputable email service provider, you can further reduce the chances of your emails being marked as spam.
Add email authentication
While this shouldn’t be necessary when using a third-party email service, there are additional measures you can take to add authentication to your WordPress emails.
If, for example, you’re using the PHP mail() function, you can use third-party libraries or plugins to add email authentication. One popular library for adding email authentication to the mail() function is PHPMailer, which is a full-featured, open-source library that can be integrated into WordPress to support various email authentication methods (such as SPF, DKIM, and DMARC).
Another option for adding email authentication is to use one of the plugins mentioned above. Easy WP SMTP, for example, allows you to configure the PHP mail() function as an external SMTP server, providing you with an authentication method for WordPress email.
As a final reminder, many of the above steps won’t be necessary if you’re using a plugin or other third-party email service. Additionally, you should always check with your hosting provider to find out more about the options you have for optimizing (or offloading) WordPress email.
Send Your WordPress Emails With Confidence
Another great way to ensure your WordPress emails arrive at their intended destination is to host your website and preferred email plugins with a hosting provider that understands WordPress.
At WP Engine, we’ve honed our industry-leading WordPress platform with more than a decade of fine-tuning and development, and our team of dedicated WordPress experts is always available to help you build your best digital experiences with WordPress.
From troubleshooting when your WordPress site isn’t sending emails, to helping you grow and scale to meet a larger audience online, WP Engine has your back. Speak to a representative today to find out more!