How To Fix WordPress Not Sending Email

How To Fix WordPress Not Sending Email

Last modified: June 28, 2026

FAQ
Fiverr freelancers

WordPress uses PHP’s mail function to send emails by default, and most shared hosting servers either block or restrict that function to prevent spam. The result is that notification emails, order confirmations, password reset emails, and contact form submissions often get silently dropped or land in spam folders rather than reaching their destination.

The fix is to route WordPress emails through a proper SMTP service instead of the server’s PHP mail function. This guide starts with quick checks to rule out the obvious causes, then covers the most reliable SMTP solutions available as free WordPress plugins.

Before installing anything, check the basics below to make sure you’re dealing with a delivery problem and not a configuration issue in your contact form or email client.

Show More

* This button will show the rest of the post and open up an offer from a vendor

What Is The Problem?

The main problem is that WordPress uses PHP’s mail function to send emails, and many hosting servers either block or heavily restrict this function because spammers have historically abused it. When PHP mail is blocked, WordPress sends no error: emails are simply dropped without any notification.

A second issue is sender reputation. Email providers check whether the sending IP address is authorized to send mail for the domain it claims to be. A shared hosting server sending email “from” your domain typically has no SPF or DKIM record authorizing it to do so, which means receiving email servers treat the message as suspicious and either block it or route it to spam.

The solution is to use SMTP (Simple Mail Transfer Protocol), which authenticates your connection properly and routes email through a service that email providers trust.

Before you install an SMTP plugin, check these common causes first:

Wrong delivery email in your contact form. Many contact form plugins default to sending to the developer’s email address during setup. Open your form plugin’s settings and confirm the “To” address is actually yours.

Emails are going to spam. Check your spam folder and any email filters before assuming delivery is failing. Ask a test contact to check their spam folder too.

The correct email address isn’t set in WordPress general settings. Go to Settings > General and verify the “Administration Email Address” is a valid address you control.

A recent plugin change broke email. If email stopped working after you installed or updated a plugin, deactivate the new plugin and test again. Some security plugins block outgoing connections.

If none of these explain the problem, proceed with an SMTP plugin.

Post SMTP

Post SMTP is a powerful WordPress plugin designed to solve email delivery issues by using modern, secure email protocols. Here are the key highlights:

  1. Advanced Email Logging – Post SMTP keeps detailed logs of every email your site attempts to send, including timestamps, recipient addresses, and delivery status. When something breaks, you can see exactly which emails failed and when, rather than guessing.
  2. Supports Modern Protocols – Unlike basic SMTP plugins, Post SMTP supports OAuth 2.0 authentication alongside standard SMTP. This means you can connect to Gmail or Microsoft 365 without storing a password in WordPress – you authorize the connection through your Google or Microsoft account directly.
  3. Easy Setup Wizard – After installing the plugin, a step-by-step configuration wizard asks which email service you want to use and walks through the connection. For Gmail, it generates the OAuth credentials; for other providers, it prompts for SMTP host, port, and credentials.
  4. Test Email Tool – Once configured, send a test email from inside the plugin to confirm delivery is working before relying on it for real notifications.

Post SMTP works well for sites that need Gmail or Microsoft 365 integration without handling OAuth setup manually. For simpler hosting-based SMTP, any of the other options below are faster to configure.

Easy To Configure SMTP Plugin

Easy WP SMTP is a lightweight option for routing WordPress emails through a standard SMTP server. Setup takes about five minutes:

  1. Install and activate the plugin from the WordPress plugin directory.
  2. Go to Easy WP SMTP > Settings in your WordPress admin.
  3. Enter your SMTP host, port, and authentication type. For most shared hosting accounts, your SMTP host is something like mail.yourdomain.com or smtp.yourmailprovider.com.
  4. Enter the SMTP username (usually your full email address) and password.
  5. Save, then use the “Send Test Email” option to confirm it works.

The main limitation: your SMTP credentials are stored in the WordPress database in plain text. Any administrator-level user on your site can see them. For low-traffic personal sites where you control who has admin access, this is a minor concern. For sites with multiple admins or client access, use Post SMTP with OAuth instead – it never stores a password.

Easy WP SMTP is best suited for sites connecting to a hosting provider’s own SMTP server, where you’re using the same credentials as your email account on that host.

WP Mail SMTP

WP Mail SMTP is the most widely installed WordPress SMTP plugin, with over 4 million active installations. It works by replacing WordPress’s default PHP mail function with a proper SMTP or API connection to a mail service of your choice.

Why it’s popular: WP Mail SMTP works with virtually every major email service – Gmail, Outlook, SendGrid, Mailgun, Amazon SES, Brevo, and SMTP.com, among others. The free version supports all of these. There is a Pro version with additional features (priority support, email logs with open tracking, conditional logic for routing), but the free version handles email delivery reliably for most sites.

How to set it up:

  1. Install WP Mail SMTP from the WordPress plugin directory and activate it.
  2. Go to WP Mail SMTP > Settings.
  3. Under “Mailer,” choose the email service you want to use. If you have a Gmail account and want to use it, select “Gmail” and follow the OAuth authorization flow – this avoids storing your Google password in WordPress.
  4. For a standard SMTP connection (hosting provider, Zoho, etc.), select “Other SMTP” and fill in your host, port, encryption type (TLS/SSL), and credentials.
  5. Scroll down and use the “Email Test” tab to send a test email once settings are saved.

Common gotcha: if you’re connecting to Gmail with standard SMTP (not OAuth), Google blocks “less secure app” access by default. Use the OAuth/Gmail integration option instead, which doesn’t require a password at all.

SendGrid

SendGrid is a dedicated email delivery service that offers a free plan for low-volume sending. As of writing, the free plan allows up to 100 emails per day indefinitely after a 30-day trial period.

To use SendGrid with WordPress, install one of the official SendGrid WordPress plugins or a generic SMTP plugin (like WP Mail SMTP) and configure it with your SendGrid API key. The API key method is more reliable than password-based SMTP because it doesn’t require storing email credentials in WordPress. You’ll need to verify your sending domain by adding DNS records, which takes a few minutes but significantly improves deliverability.

SendGrid is a good choice if you want better delivery analytics or if you expect to send more than a few hundred emails per month, since its paid plans scale up at reasonable rates.

Mailgun

Mailgun is a developer-focused email API service with a generous free tier. New accounts include a 3-month trial with 1,000 free emails per month. After the trial, pricing is based on volume.

To use Mailgun with WordPress, you’ll need to verify your domain by adding a few DNS records. Once verified, configure any SMTP plugin to connect using your Mailgun SMTP credentials or API key. The plugin routes outgoing emails through Mailgun’s servers, which sidesteps most PHP mail blocking issues entirely.

Mailgun is well suited for WooCommerce stores that send order confirmation and shipping notification emails, since those volumes can add up quickly and Mailgun’s infrastructure handles high-volume sends reliably.

Find A Solution For Your WordPress Email Problem

Email is an important part of online stores. Be sure that you find a fix when your WordPress website doesn’t send notifications. If your contact forms are the source of email issues, switching form plugins can help. Our Contact Form 7 alternatives covers plugins with more reliable email delivery built in.

Recap:
Save 4 Later
Email liked links to yourself

    Stay Updated with WordPress Insights

    Get the latest WordPress tips, theme reviews, and industry deals delivered to your inbox.