How to Fix WordPress Not Sending Email Issue


Many users at the beginner level often inquire about issues with their contact form plugin, such as emails not being sent or missing WordPress notifications.

In this guide, we will demonstrate how to address the problem of WordPress not sending emails, ensuring that your website can reliably send emails and avoid landing in the spam folder.

Reasons Behind Non-receipt of Emails from Your WordPress Site

A prevalent cause for emails not reaching their destination is the improper configuration of your WordPress hosting server to utilize the PHP mail() function.

Even when hosting is set up to use this function, various email service providers, including Gmail and others, employ tools to minimize email spam. These tools aim to verify that an email originates from the claimed location.

However, emails sent by WordPress websites often fail this verification process.

Consequently, when an email is dispatched from your WordPress site, such as through a contact form plugin or admin notification, it might not even reach the recipient’s spam folder, let alone the inbox.

For this reason, it is advised not to rely on WordPress for sending email newsletters.

To enhance email deliverability, it is recommended to use SMTP (Simple Mail Transfer Protocol), an industry-standard for sending emails. Unlike the PHP mail() function, SMTP utilizes proper authentication, significantly improving the chances of emails being delivered successfully.

WordPress offers the WP Mail SMTP plugin, which configures your site to send emails via SMTP rather than the PHP mail() function. This plugin supports connections with popular SMTP services like SendLayer, Brevo (formerly Sendinblue), Gmail (Google Workspace), Amazon SES, and more.

Step 1: Install the WP Mail SMTP Plugin

To begin using your chosen SMTP service, you must first install the WP Mail SMTP plugin on your WordPress site. This plugin facilitates the transition from the default PHP mail() function to your selected SMTP service.

Here’s how you can do it:

Install and Activate WP Mail SMTP:
Start by installing and activating the WP Mail SMTP plugin. If you’re unfamiliar with the process, refer to our detailed guide on how to install a WordPress plugin.

Access WP Mail SMTP Settings:
Once activated, navigate to ‘WP Mail SMTP’ in your WordPress dashboard to configure the plugin settings.

Configure Sender Information:
Begin by entering the name and business email address from which you want your site’s emails to originate. Ensure that the email address matches the one you’ll use for your SMTP mailing service.

Optionally, you can enforce the use of this name and email address for emails, overriding settings from other plugins.

Choose SMTP Mailing Service:
Select an SMTP mailing service for your site. In this tutorial, we’ll set up SMTP using SendLayer.

To complete the WP Mail SMTP setup, you’ll need to create an account with SendLayer. We’ll proceed with that step next and return to finalize the WP Mail SMTP setup. Keep this tab open for reference.

Step 2: Configure Your SMTP Mailing Service

SendLayer stands out as a reliable email service provider, offering the capability to send a large volume of emails with high deliverability. With SendLayer, you can send up to 200 emails for free, making it suitable for the needs of most small websites.

Follow these steps to set up your SendLayer account:

1. Create a SendLayer Account:

Visit the SendLayer website and sign up for an account. On the Pricing page, click the ‘Try our SendLayer free trial (send up to 200 emails)’ link to initiate the account creation process.

2.Explore Your SendLayer Dashboard:
After successfully creating your account, access your SendLayer dashboard.

Now that your SendLayer account is in place, proceed to configure your email provider with WordPress.

Step 3: Link Your WordPress Site with SendLayer

Before you can initiate email sending with SendLayer, it’s essential to authorize your domain. This step verifies to email servers that you are the legitimate owner of the sending domain, ensuring that your emails are recognized as legitimate.

Follow these steps to authorize your domain in SendLayer:

Add Your Domain:
In the SendLayer dashboard, click the orange ‘Add Domain’ button.

Enter Your Domain:
Type your domain name into the provided field and click ‘Add Domain.’

Note: Unlike other mailing services, SendLayer automatically adds the subdomain to the sender domain’s DNS records, eliminating the need for an additional subdomain during registration.

Retrieve DNS Records:
After adding your domain, SendLayer will display 5 DNS records that you need to add to your domain’s DNS record settings for authorization.

Add DNS Records to Your Hosting Account:
For this tutorial, we’ll demonstrate using Bluehost as the hosting account. If you use a different hosting provider or manage DNS at a registrar like, follow their specific instructions.

  • Log in to your hosting account and find your domain’s DNS records.
  • In Bluehost, navigate to ‘Domains,’ click ‘Settings’ next to the desired domain, and access ‘Advanced DNS Records.’
  • Click ‘Manage’ to proceed and then click ‘Continue’ to dismiss the warning message.
  • Click ‘+ Add Record’ to start adding the DNS records provided by SendLayer.
  • Fill in the details for each DNS record (CNAME and TXT) as specified by SendLayer. For example, use CNAME for the first record, select ‘Other Host’ in ‘Refers to,’ and input the values in ‘Hostname’ and ‘Value’ from SendLayer.
  • Repeat these steps for all DNS records (both CNAME and TXT), ensuring correct values for ‘Host Name’ and ‘Alias.’

Verify DNS Records:
After adding the records, return to SendLayer, check the box confirming DNS record addition, and click ‘Verify DNS Records.’

It may take 24-48 hours for SendLayer to verify your records. Check the ‘DNS Records & Settings’ tab in ‘Settings’ on your SendLayer dashboard to see if the records have been successfully verified (green checkmarks in the ‘Status’ column).

Continue with the tutorial while waiting for the authorization to complete.

Step 4: Complete WP Mail SMTP Setup with SendLayer

Let’s finalize the setup by obtaining your API key from SendLayer and integrating it into WP Mail SMTP:

Retrieve SendLayer API Key:

  • In your SendLayer dashboard, navigate to ‘Settings’ » ‘API Keys.’
  • Locate the default API key generated during the domain authorization process.
  • Copy the API key by clicking the copy icon.

Paste API Key into WP Mail SMTP:

  • Return to your WP Mail SMTP setup wizard tab.
  • Paste the copied SendLayer API key in the designated field.

Congratulations! The setup is now complete. The final step is to perform a test email to ensure everything is functioning correctly.

Send Test Email:

  • Go to ‘WP Mail SMTP’ » ‘Tools.’
  • In the ‘Email Test’ tab, enter an email address to send the test email to (defaults to the site’s admin email).
  • Click ‘Send Email.’

You should see the message ‘Test HTML email was sent successfully!’ Check your inbox to verify the arrival of the test email.

Your setup with WP Mail SMTP and SendLayer is now complete. Verify the test email in your inbox to ensure a successful configuration.

Note: If your SendLayer account isn’t yet activated, you’ll get the message: [permission_denied]: Unable to send email. Your SMTP account is not yet activated.

Alternative Solutions for Resolving the WordPress Not Sending Email Issue

If SendLayer isn’t your preferred choice, WP Mail SMTP offers various mailer options for addressing the email delivery problem, including Microsoft 365, Gmail (Google Workspace), Amazon SES, and more.

Using Gmail or Google Workspace with WP Mail SMTP:

  • Set up WP Mail SMTP as previously instructed.
  • Choose the ‘Google / Gmail’ option for your mailer.
  • Configure mailer settings using WP Mail SMTP’s one-click setup.
  • Sign in to your Gmail account and click ‘Save Settings.’

Please note that using your professional Gmail or Google Workspace may require assistance from your web host for the installation of the necessary certificate. Additionally, changing the email address in the future may necessitate repeating the setup process.

Using Microsoft 365 with WP Mail SMTP:

  • Follow the WP Mail SMTP setup instructions.
  • Select the ‘365 / Outlook’ option as your SMTP mailer.
  • Register an app on Microsoft Azure and fill in the required fields.

For detailed guidance, refer to the comprehensive guide on setting up Outlook with WP Mail SMTP.

Using Amazon SES with WP Mail SMTP:

  • Amazon SES on the AWS platform provides a solution for WordPress email issues.
  • While Amazon SES allows up to 62,000 free monthly emails, setup may be more complex for beginners.
  • Professionals often choose Amazon SES for their WordPress email SMTP service.
  • Explore the full instructions on setting up Amazon SES with WordPress.

Regardless of the chosen mailer, always utilize the ‘Test Email’ feature to confirm the successful delivery of emails.

Leave a Reply

Your email address will not be published. Required fields are marked *