Why Emails Send But Don't Arrive: Troubleshooting WP Mail SMTP Delivery Issues
Content
One of the most common and frustrating issues WordPress users face is when the WP Mail SMTP plugin appears to be working—test emails send successfully, logs show no errors—but the actual emails never arrive in the recipient's inbox. This problem can affect critical site functions like WooCommerce order confirmations, contact form submissions, and password resets.
Based on community reports and troubleshooting patterns, here are the most common reasons for this silent failure and the steps you can take to resolve it.
1. Emails Are Being Blocked or Flagged as Spam
This is perhaps the most frequent culprit. Your mailer service (like Sendinblue/Brevo, SendGrid, or Gmail) accepts the email, but its delivery systems block it before it reaches the final mailbox due to poor sender reputation or missing authentication.
Why it happens: If your domain lacks proper SPF, DKIM, and DMARC DNS records, or if you previously sent unauthenticated emails from your server, your domain's "sender reputation" can be low, causing emails to be filtered.
How to fix it:
- Check your mailer's dashboard: Log into your Brevo, SendGrid, or other mailer account. Look for a "Transactional" or "Activity" log. This will often show if the email was accepted by the mailer but then blocked or deferred by the recipient's server.
- Verify DNS settings: Ensure you have correctly set up all the required SPF, DKIM, and DMARC records for your domain as instructed by your mailer. Use online tools like MXToolbox to verify they are propagating correctly.
- Check blacklists: Use a service like MXToolbox's Blacklist Check to see if your server's IP or domain has been blacklisted.
2. The "From" Email Address Is Not Authorized
Many SMTP services, especially Gmail and Outlook.com, require that the email address you use in the "From Email" field is the exact same one you used to authenticate. Using a different address, even on the same domain, can cause a silent failure.
Why it happens: The SMTP server accepts the connection but then rejects the email's "FROM" address during the DATA transfer phase because it violates its security policies.
How to fix it:
- Match your addresses: In your WP Mail SMTP settings, ensure the "From Email" is identical to the SMTP username you use for authentication.
- Use a proper mailer: For services like Gmail, consider using the dedicated "Gmail" mailer instead of "Other SMTP," as it handles authentication more seamlessly.
- Check for typos: A simple typo in the recipient's address (e.g., **@yhaoo.com) will cause the mail server to reject it.
3. The Connection Is Being Blocked
Sometimes, the initial connection and test work, but ongoing connections from your web host to the mail server are intermittently blocked by a firewall or security policy.
Why it happens: Shared hosting providers often block outbound SMTP connections on certain ports to prevent spam. A recent host or plugin update could have triggered a new security rule.
How to fix it:
- Contact your web host: This is a critical step. Ask them to confirm that outbound connections to your mailer's SMTP port (e.g., 465 for SSL, 587 for TLS) are not being blocked by a firewall.
- Try a different port: If you're using port 465, try 587 with TLS encryption, or vice-versa.
- Review your plugins: A security or firewall plugin might be overly restrictive. Try temporarily disabling other plugins to see if the issue resolves.
4. API Keys and Permissions Have Expired or Changed
If you're using an API-based mailer like SendGrid or Brevo, your API key may have expired, been revoked, or have its permissions changed.
Why it happens: API keys can have an expiration date, or you might have inadvertently modified the key's permissions in your mailer account, rendering it invalid.
How to fix it:
- Check the Debug Events log: In your WordPress dashboard, go to WP Mail SMTP → Tools → Debug Events. Look for errors like "The provided authorization grant is invalid, expired, or revoked." This is a clear sign your API key needs to be regenerated.
- Regenerate your API key: Log into your mailer account, delete the old API key, and create a new one. Update the new key in your WP Mail SMTP settings.
- Verify mailer permissions: Ensure the API key has the correct send permissions attached to it within your mailer's account settings.
5. There's a Plugin or Theme Conflict
In some cases, a conflict with another plugin or your theme can prevent specific types of emails (like WooCommerce orders) from being processed correctly, even though the test email works.
Why it happens: The test email uses a simple, standard function call. Other plugins might modify the email headers or content in a way that causes the mailer to reject them.
How to fix it:
- Enable full debug logging: In WP Mail SMTP → Tools → Debug Events, enable the "Debug Email Sending" option. This will log every email attempt, not just errors. Reproduce the issue (e.g., place a test order) and check the logs for any details.
- Perform a conflict test: Temporarily switch to a default WordPress theme (like Twenty Twenty-Four) and disable all other plugins except WooCommerce and WP Mail SMTP. If the emails send, reactivate your plugins one by one to identify the culprit.
Summary: Your Systematic Troubleshooting Checklist
- Inspect Debug Events: Always check WP Mail SMTP → Tools → Debug Events first for any error clues.
- Check the Mailer's Logs: Your Brevo, SendGrid, or Gmail account has delivery logs that are more detailed than WordPress logs.
- Verify DNS Settings: Confirm SPF, DKIM, and DMARC records are correct.
- Confirm "From Email": Ensure it matches your authentication email exactly.
- Contact Your Host: Rule out server-side firewall blocks on SMTP ports.
- Regenerate API Keys: If using an API mailer, create a new key.
- Conflict Test: Temporarily disable other plugins and themes to rule out conflicts.
By methodically working through these common causes, you can usually identify and resolve the reason your emails are vanishing after being sent.
Related Support Threads Support
-
Getting 403 errors for webhook from SMTP.com related to email reportinghttps://wordpress.org/support/topic/getting-403-errors-for-webhook-from-smtp-com-related-to-email-reporting/
-
Error: You must provide at least one recipient email address.https://wordpress.org/support/topic/error-you-must-provide-at-least-one-recipient-email-address-3/
-
Two sites, one works, the other one stopped workinghttps://wordpress.org/support/topic/two-sites-one-works-the-other-one-stopped-working/
-
SMTP Mail Funcation Issueshttps://wordpress.org/support/topic/smtp-mail-funcation-issues/
-
SMTP Error: Could not connect to SMTP host.https://wordpress.org/support/topic/smtp-error-could-not-connect-to-smtp-host-27/
-
Emails stop being sent after some time.https://wordpress.org/support/topic/emails-stop-being-sent-after-some-time/
-
Error Authenticatehttps://wordpress.org/support/topic/error-autehticate/
-
Mail not receivedhttps://wordpress.org/support/topic/mail-not-received-8/
-
Emails no longer sent with PHP8.1https://wordpress.org/support/topic/emails-no-longer-arrive-with-php8-but-they-do-appear-in-gmail-sent/
-
Don’t send email after updatinghttps://wordpress.org/support/topic/dont-send-ea/
-
Outlook 2021 sync issueshttps://wordpress.org/support/topic/outlook-2021-sync-issues/
-
Not receiving critical error emailshttps://wordpress.org/support/topic/not-receiving-critical-error-emails/
-
Error in Wp Mail SMTPhttps://wordpress.org/support/topic/error-in-wp-mail-smtp/
-
WP Mail SMTP Lite Errors – Flummoxedhttps://wordpress.org/support/topic/wp-mail-smtp-lite-errors-flummoxed/
-
No emails sent or receivedhttps://wordpress.org/support/topic/no-emails-sent-or-received/
-
WP Mail SMTP NOT Workinghttps://wordpress.org/support/topic/wp-mail-smtp-not-working-6/
-
Stopped Sending Emailshttps://wordpress.org/support/topic/stopped-sending-emails-5/
-
Emails not being sent, configuration looks goodhttps://wordpress.org/support/topic/emails-not-being-sent-configuration-looks-good/
-
Test email works, but woocommerce emails do not workhttps://wordpress.org/support/topic/test-email-works-but-woocommerce-emails-do-not-work/
-
Messages sent to Sendinblue, but I’m not receivinghttps://wordpress.org/support/topic/sendinblue-0-curl-error-77/
-
Mismatched reports of failed emailshttps://wordpress.org/support/topic/false-mismatched-reports-of-failed-emails/
-
Doesn’t send emails, not even test mailhttps://wordpress.org/support/topic/doesnt-send-emails-not-even-test-mail/
-
SMTP.com Notification – Push webhook errors rate is too high for this hourhttps://wordpress.org/support/topic/smtp-com-notification-push-webhook-errors-rate-is-too-high-for-this-hour/
-
Sent email to 147 recipients only 101 got the emailhttps://wordpress.org/support/topic/sent-email-to-147-recipients-only-101-got-the-email/
-
Emails sending but not Deliveringhttps://wordpress.org/support/topic/emails-sending-but-not-delivering/
-
Mailer: Other SMTP SMTP Error: Could not authenticate.https://wordpress.org/support/topic/mailer-other-smtp-smtp-error-could-not-authenticate-3/
-
Emails Not Sendinghttps://wordpress.org/support/topic/emails-not-sending-154/
-
Stopped Sending to Multiple Recipients When Switched to Multisitehttps://wordpress.org/support/topic/stopped-sending-to-multiple-recipients-when-switched-to-multisite/
-
Emails Not Being Senthttps://wordpress.org/support/topic/emails-not-being-sent-59/
-
Bad gateway / api.wpmailsmtp.com / Error code 502https://wordpress.org/support/topic/bad-gateway-api-wpmailsmtp-com-error-code-502/
-
No Emails Being Received Through Yournotify (WP Mail SMTP)https://wordpress.org/support/topic/no-emails-being-received-through-yournotify-wp-mail-smtp/
-
SMTP Error: Could not connect to SMTP hosthttps://wordpress.org/support/topic/smtp-error-could-not-connect-to-smtp-host-19/
-
Images Not Displayinghttps://wordpress.org/support/topic/images-not-displaying-103/
-
WP Mail SMTP Pro > Email Log > Bulk Resend not workinghttps://wordpress.org/support/topic/wp-mail-smtp-pro-email-log-bulk-resend-not-working/
-
WP mail SMTP not sending emailshttps://wordpress.org/support/topic/wp-mail-smtp-not-sending-emails-2/
-
Emails Failing to Send via WP Mail SMTPhttps://wordpress.org/support/topic/emails-failing-to-send-via-wp-mail-smtp-2/
-
My sent and recieved emails have dissappearedhttps://wordpress.org/support/topic/my-sent-and-recieved-emails-have-dissappeared/
-
Core and Woocommerce mails are not sendhttps://wordpress.org/support/topic/core-and-woocommerce-mails-are-not-send/
-
Emails not being receivedhttps://wordpress.org/support/topic/emails-not-being-received-26/
-
Email Attachmentshttps://wordpress.org/support/topic/email-attachments-6/
-
Email not workinghttps://wordpress.org/support/topic/email-not-working-76/
-
Error Message after trying to send and emailhttps://wordpress.org/support/topic/error-message-after-trying-to-send-and-email/
-
Emails are not being senthttps://wordpress.org/support/topic/emails-are-not-being-sent-13/
-
Website emails not sendinghttps://wordpress.org/support/topic/website-emails-not-sending-4/
-
Error when sending mail: Data not acceptedhttps://wordpress.org/support/topic/error-when-sending-mail-data-not-accepted/
-
SMTP Error: data not acceptedhttps://wordpress.org/support/topic/smtp-error-data-not-accepted-20/
-
SMTP errors “Mailer: Other SMTP SMTP Error: data not accepted”https://wordpress.org/support/topic/smtp-errors-mailer-other-smtp-smtp-error-data-not-accepted/
-
There has been a critical error email not deliveredhttps://wordpress.org/support/topic/there-has-been-a-critical-error-email-not-delivered/
-
Message has been rejected.https://wordpress.org/support/topic/message-has-been-rejected/
-
Error when trying to receive an email from my WordPress Webpagehttps://wordpress.org/support/topic/error-when-trying-to-receive-an-email-from-my-wordpress-webpage/
-
Memberpress Welcome Email Not Sendinghttps://wordpress.org/support/topic/memberpress-welcome-email-not-sending/
-
Mail not sending to my Gmail.https://wordpress.org/support/topic/mail-not-sending-to-my-gmail/
-
Stopped sending emails after upgrading to wp 5.9https://wordpress.org/support/topic/stopped-sending-emails-after-upgrading-to-wp-5-9/
-
WP Mail SMTP no envia correos de pedidoshttps://wordpress.org/support/topic/wp-mail-smtp-no-envia-correos-de-pedidos/
-
Issue with Viewing Sent Emailshttps://wordpress.org/support/topic/issue-with-viewing-sent-emails/
-
POST SMTP Sends Email but Site Times outhttps://wordpress.org/support/topic/post-smtp-sends-email-but-site-times-out/
-
PHPMailer was able to connect but failed while trying to send a mailhttps://wordpress.org/support/topic/phpmailer-was-able-to-connect-but-failed-while-trying-to-send-a-mail/
-
Issue with Sending Emails to Outlook Microsoft Accounthttps://wordpress.org/support/topic/issue-with-sending-emails-to-outlook-microsoft-account/
-
Errors on php8.0https://wordpress.org/support/topic/errors-on-php8-0/
-
Error: Could not connect to SMTP hosthttps://wordpress.org/support/topic/error-could-not-connect-to-smtp-host-2/