How to Fix WordPress Not Sending Emails in 2024

How to Fix WordPress Not Sending Emails in 2024

Do you want to know how to fix WordPress not sending email issue?

This is a super common problem, and almost everyone with a contact form will run into this issue at some point. But it’s also really easy to fix.

We’ll show you how to fix your WordPress email issues so you can start receiving notifications without any trouble.

Why Are My WordPress Emails Not Sending?

There are a few potential reasons why your WordPress emails aren’t sending:

  • Your emails look like spam: This is the most common reason. When your web server generates an email, it only creates the headers required for basic email delivery using PHP mail(). The default PHP mail() function doesn’t add any authentication to prove that the message is legitimate. You can use WP Mail SMTP to fix this.
  • Your web hosting provider has disabled PHP mail(): Due to inherent security problems with PHP mail(), many web hosts simply disable PHP for mailing, so your WordPress site can’t send messages at all. You might run into this with your Amazon EC2 or Lightsail. WP Mail SMTP will allow you to get around this since it uses SMTP rather than PHP for email deliveries.
  • You’re using localhost: If you’re creating your site on your computer before uploading it, your emails likely won’t work. WP Mail SMTP will fix WordPress not sending email on localhost, so you can receive WordPress notifications as a live site would.

No matter the reason, if you’re not receiving emails from WordPress, there’s a very good chance that WP Mail SMTP will solve the problem.

How To Fix WordPress Not Sending Email Issu

1. Install the WP Mail SMTP Plugin

We’re going to use WP Mail SMTP to re-route your emails through a 3rd party email service provider (ESP). This will add the authentication required to get them delivered reliably.

First, you’ll want to install WP Mail SMTP on your WordPress site. WP Mail SMTP is a WordPress plugin that reconfigures PHP mailer function wp_mail()to use SMTP rather than PHP.

You can use the free or paid version, but you’ll want Pro or above to use the email logging and reporting features. We’ll talk about these plugin settings later.

To download the plugin, head over to your WP Mail SMTP account and click the Downloads tab. You can download the plugin zip file by clicking Download WP Mail SMTP.

Download the WP Mail SMTP plugin

Next, switch to your website and log in to the WordPress dashboard. Head to Plugins » Add New.

Add new plugin in WordPress

Upload the plugin zip file and click Install Now.

Install WP Mail SMTP

Once the plugin is installed, be sure to activate it. This will start the Setup Wizard in your browser.

Now we’re ready to set up your email provider for WordPress.

2. Connect Your WordPress Website to a Mailer Service

We’re going to route your emails through a separate email provider to fix the WordPress not sending email issue.

With WP Mail SMTP, this is super easy to configure. We’re going to use the Setup Wizard so you don’t have to spend time playing around with the configuration settings yourself.

To start, click the Let’s Get Started button in the Setup Wizard.

click the Let's Get Started button

On the next screen, you’ll see a list of available mailers that you can configure in WP Mail SMTP.

Choosing a mailer in the WP Mail SMTP setup wizard

All of these providers will help fix the WordPress not sending email issue. However, some of them aren’t suited to large volumes of email.

Here’s a quick guide if you’re not sure what to pick here:

  • Small websites or testing: You can use Other SMTP for this. However, keep in mind that most SMTP servers have rate limits, so this could cause your WordPress emails to fail on a busy site. For an alternative option, SendLayer, Postmark, and Brevo (formerly Sendinblue) all have free trial accounts.
  • Website sending a few emails a day: The Gmail mailer is a good option if you have a Google Workspace or Gmail account. It’ll allow you to send emails from any of your Gmail aliases in WordPress, which is handy if you want to use different Gmail aliases with different forms or plugins. Gmail and Google Workspace are a little bit more complicated to set up, though.
  • Medium to large websites: Websites that send transactional emails should consider a professional email provider like SendLayer,, or Brevo.

If you’re not sure what to pick, SendLayer lets you start sending emails for free. It also authenticates your domain name, rather than an individual email address, so you can send email from any address at your domain in WordPress.

When you’ve chosen a mailer, jump to the documentation using the links below. The doc will help you set up a connection between your website and the mailer you chose in the Wizard.

Mailers available in all versionsMailers in WP Mail SMTP Pro
SendLayerAmazon SES
SMTP.comMicrosoft 365 /
BrevoZoho Mail
Google Workspace / Gmail
Other SMTP

3. Turn On Email Logging

In the next step, the wizard will have two options enabled by default. They are:

  • Email deliverability
  • Error tracking

Both options will help in improving emimproveail deliverability.

If you have WP Mail SMTP Pro, you can enable additional features here too.

Enabling email logs and email alerts in the WP Mail SMTP Setup Wizard

The first feature you can enable here is Detailed Email Logs. This feature lets you see your emails’ delivery status and other helpful information in Complete Email Reports. If you’d like, you can also receive a Weekly Email Summary showing an overview of your recent logs.

Email Summary With Statistics in WP Mail SMTP Pro

This helps you to actively monitor your contact form emails to make sure you’re not missing any.

Instant Email Alerts let you know when an email from your site fails to send. This way you can efficiently fix the problem and get your emails sending again.

An email alert notification

Next, if you enabled email logs, you’ll also have the chance to turn on some advanced email logging features.

Configuring email log settings in the WP Mail SMTP Setup Wizard

These features let you do things like:

Open and click details in WordPress email log

Now we’re ready to complete the Setup Wizard and test your email.

For the last step, grab the license key from your WP Mail SMTP account and paste it into the box to enable Pro features and future updates.

Enter WP Mail SMTP license key

And that’s it! WP Mail SMTP will send a test email to confirm everything’s working.

Frequently Asked Questions About WordPress Not Sending Email

Got questions about WordPress emails not working? We’ll answer some common questions below.

  • What Is SMTP?
  • What Email Address Should I Use as the “From” Email?
  • Can I Set Up WooCommerce SMTP?
  • Why Can’t I use PHPMailer?
  • Why Is “Other SMTP” Not Working?
  • Why Is “Other SMTP” Making My Site Time Out?
  • Why Am I Seeing a DMARC, SPF, or DKIM Warning?
  • Why Is WordPress Not Sending Confirmation Email to Users?

Let’s get started.

What Is SMTP?

SMTP stands for Simple Mail Transfer Protocol. It’s the protocol that servers use to send emails.

In WordPress, you can use SMTP to send emails instead of relying on your web server. This is more reliable because it adds the correct authentication to your emails.

What Email Address Should I Use as the “From” Email?

Many contact form plugins use the admin email as the From address. This can cause email deliverability issues.

Now that you have WP Mail SMTP installed, you should always use the From Email that you authenticated in the Setup Wizard.

That will ensure that all of your emails have the correct authentication. In other words, the emails from WordPress will be delivered as though they were sent from your email account.

If you have a ton of different plugins all sending email, WP Mail SMTP allows you to force the From Email and the From Name across your entire site.

Forcing the From Email in your WP Mail SMTP settings

This is a super easy way to make sure you’re not sending email from a From address that isn’t authenticated.

Can I Set Up WooCommerce SMTP?

Yes! Once you’ve completed the steps in this tutorial, all WooCommerce order emails will be sent from your chosen mailer.

You can use an SMTP server for WooCommerce, but we recommend that you use a transactional email provider instead. This will make sure your customers get WooCommerce order emails quickly.

Why Can’t I Use PHPMailer?

PHPMailer is the default method of sending email in WordPress, but it’s very unreliable. With PHP mail(), your emails are sent without any authenticating information. As a result, mail servers typically treat PHP emails as spam, leading to deliverability issues.

To stop your WordPress emails from going to spam, you need to configure your WordPress site to use SMTP, which provides the necessary authentication to prove your emails as legitimate.

The WP Mail SMTP plugin is used almost universally by WordPress sites to stop sending emails with PHP and use SMTP instead. Plus, it makes troubleshooting email problems a lot easier with WP Mail SMTP’s built-in email log feature.

Why Is “Other SMTP” Not Working?

If the Other SMTP mailer isn’t working, or you’re getting an SMTP error, first check that you’re using the correct SMTP settings in WP Mail SMTP.

In particular, pay attention to the SMTP port since different servers have different requirements.

If that doesn’t work, you may be using a host that blocks SMTP or restricts you from using its own SMTP server. This block is typically put in place to prevent users from sending spam from WordPress, or to encourage you to pay for the host’s own SMTP service.

If SMTP is blocked by your host, you can use any of the API-based email providers like Brevo,, or Gmail to get around that. For more details, check out our articles on:

These guides are designed specifically for customers who can’t use SMTP to send email on their hosting plan.

Why Is “Other SMTP” Making My Site Time Out?

If the Other SMTP option is causing your WordPress site to time out, that’s a sign that you may have an incorrect DNS setting, or your SMTP server is down.

This is also a common issue for Cloudflare users who have the wrong proxy settings on their DNS zone. Check out this guide to fixing WordPress emails on Cloudflare for full details of the settings you’ll need to change.

Why Am I Seeing a DMARC, SPF, or DKIM Warning?

WP Mail SMTP has a Domain Checker that automatically scans your domain’s DNS records. If it spots a problem with your DNS that could affect email deliverability, it’ll notify you when you send a test email.

Domain Check results

To fix this, start by reading our guides on DNS:

Once your DNS records are correct, your emails will have the right authentication and will no longer land in your recipient’s spam folder.

Gmail rejects unauthenticated emails, so setting up these records is particularly important to make sure your WordPress emails are delivered to Gmail users.

Why Is WordPress Not Sending Confirmation Email to Users?

If you’d like users to receive a confirmation email after submitting a contact form on your WordPress site, you can easily set this up using WPForms. For more information, see this article on how to send confirmation emails to users after submitting forms.

Amanda A.S.
Amanda A.S.
She's an avid reader and learner; she's put her whole life into spirituality, divinity, and God. Full-time artist. Marketing, Web Developer & UI/UX Designer at Amdsnk Studio.