If your WordPress site is supposed to send contact form notifications, password reset emails, or order alerts, but nothing is arriving, the problem is usually not the form plugin itself. In most cases, WordPress is trying to send mail through PHP mail, and that method is unreliable on modern hosting.
The good news is that this is one of the easiest WordPress issues to fix. In many cases, the right solution is simply to route email through SMTP instead of depending on your server’s default mail function. A plugin like WP Mail SMTP can solve the problem in minutes.
If you have ever updated a form, tested it once, and assumed everything was fine, you are not alone. Email delivery problems often stay hidden until a client, customer, or subscriber says they never got the message. That is why this fix matters so much. It protects your leads, your support flow, and your reputation.
Why WordPress email fails
WordPress core uses the wp_mail() function, which typically depends on PHP mail underneath. That sounds convenient, but many hosts block or throttle it because it is easy to abuse and hard to authenticate. Even when mail leaves the server, it may land in spam, get rejected outright, or never be sent at all.
There are a few common reasons this happens:
- Your host disables PHP mail for security or deliverability reasons.
- The outgoing message does not have proper authentication.
- The sender address does not match the server or domain settings.
- Spam filters treat the message as suspicious.
- Your form plugin is configured correctly, but the transport layer is not.
That is why the issue often feels confusing. The form submits, the site looks normal, and yet the email never arrives. The form is not always broken. The delivery path is.
The fix: use SMTP instead of PHP mail
SMTP gives your site a proper, authenticated path for sending email. Instead of hoping the server will hand off a message correctly, you connect WordPress to a real mail provider and send through that service.
For most sites, the easiest route is an SMTP plugin. WP Mail SMTP is the go-to option because it is beginner-friendly, widely used, and supports popular providers like Gmail, Google Workspace, SendGrid, and Mailgun.
Here is the practical benefit: once SMTP is set up, your emails are more likely to authenticate, pass spam checks, and actually reach inboxes. That means contact forms work, password resets arrive, and notification emails stop disappearing into the void.
Set up WP Mail SMTP with Gmail or Google Workspace
If you are running a small site or a business site with modest email volume, Gmail or Google Workspace is often the simplest place to start. It is especially useful when you want a reliable setup without introducing a more complex email platform.
Basic setup looks like this:
- Install and activate WP Mail SMTP.
- Open the plugin settings and choose Google / Gmail as the mailer.
- Connect your Google account using the plugin’s OAuth flow.
- Make sure the sender email matches the account or workspace domain.
- Send a test email and confirm it arrives.
If you are using two-factor authentication on your Google account, you may need an App Password rather than your normal login password. That is a very common stumbling block. If authentication fails, do not assume the plugin is broken. Double-check the Google account security settings first.
For business sites, Google Workspace is often the better long-term option because it gives you a professional domain-based email address. That helps with trust, branding, and deliverability.
Set up WP Mail SMTP with SendGrid or Mailgun
If your site sends more transactional mail or you want a more purpose-built delivery service, SendGrid and Mailgun are strong options. They are designed for application email, so they can be a better fit when you need more control, better logs, or higher volume.
These platforms are a little more technical than Gmail, but the setup is still manageable:
- Create an account with the provider.
- Verify your sending domain.
- Copy the SMTP credentials or API key into WP Mail SMTP.
- Match the from email to your verified domain.
- Run a test message before going live.
SendGrid is often a good fit for teams that want a mainstream transactional email platform with clear tooling. Mailgun is popular with developers and agencies that want flexibility and solid deliverability controls. Either one is usually far more reliable than hoping PHP mail will behave itself.
How to test whether your email is working
Never assume setup is complete until you test it. WP Mail SMTP includes a built-in test email tool, and you should use it every time you change providers, credentials, or sender settings.
Test in this order:
- Send a test email from the plugin.
- Check the inbox, spam folder, and promotions tab.
- Submit your contact form and confirm the notification arrives.
- Run a password reset test if that email flow matters to your site.
If the test fails, inspect the error message carefully. Most issues come down to a wrong password, an unverified sender, a blocked host, or a missing DNS record. Fixing the root cause usually takes less time than repeatedly guessing.
Check spam folders first
Before you dig into settings, check spam. It sounds obvious, but a surprising number of “missing” WordPress emails are actually sitting in the junk folder. Gmail, Outlook, and other providers can be aggressive when a message looks automated or poorly authenticated.
Look for these signs:
- The email arrived but was flagged as spam.
- The sender name looks unfamiliar or generic.
- The from address does not match the domain.
- The message has no proper SPF or DKIM authentication.
If spam filtering is the only issue, SMTP plus proper domain authentication usually fixes it quickly.
Common mistakes that keep WordPress email broken
Most email problems are caused by one of a few avoidable mistakes. Fix these and you will solve a lot of frustration fast.
- Using PHP mail and expecting it to work reliably. It may work on one host and fail on another.
- Skipping the test email. If you do not test, you do not know whether the fix actually worked.
- Entering the wrong SMTP credentials. A single typo can break the entire setup.
- Using an unverified sender address. Many providers require a verified from address or domain.
- Ignoring DNS authentication. SPF, DKIM, and sometimes DMARC matter for deliverability.
The fastest path is simple: install an SMTP plugin, pick a trusted provider, verify the sender, and test immediately. That is enough to solve most WordPress email failures.
Is Your Host Blocking WordPress Emails?
Kinsta’s managed WordPress hosting is configured for reliable email delivery and comes with expert support to help you set up SMTP correctly. No more lost password resets or missed form submissions.
FAQ
Why are my WordPress emails not sending?
Most of the time, WordPress is trying to send email through PHP mail and the host blocks, throttles, or mishandles it. SMTP is usually the fix.
Is WP Mail SMTP free?
Yes, the plugin has a free version that is enough for many sites. Paid plans add more mailers and extra features.
Do I need Gmail or Google Workspace?
No, but they are easy options for small sites. If you want a business email tied to your domain, Google Workspace is a better fit.
Should I use SendGrid or Mailgun instead?
Use them if you want a more dedicated transactional email service or you expect higher volume. They are great choices for growth.
How do I know the fix worked?
Send a test email from WP Mail SMTP, then submit a real form entry and confirm the message arrives in the inbox.
What if emails still go to spam?
Check your sender address, verify your domain, and make sure SPF and DKIM are configured correctly. Spam filtering is often an authentication problem, not a plugin problem. For a broader look at keeping your site safe, see our guide on how to secure your WordPress site.
Final thoughts
When WordPress email stops working, the solution is usually not complicated. The site is often missing a reliable delivery method, not a better form plugin. Once you move away from PHP mail and use SMTP, most of the mystery disappears.
If you only remember one thing, make it this: do not trust email until you have tested it. Set up WP Mail SMTP, choose the right provider, verify the sender, and confirm delivery. That small step can save you from missed leads, broken password resets, and a lot of unnecessary stress.
Running into other WordPress issues? These guides cover more common problems: How to Fix the WordPress 500 Internal Server Error, Locked Out of WordPress Admin, and How to Back Up WordPress.
This post contains affiliate links. If you buy through them, I may earn a small commission at no extra cost to you.


I had no idea WordPress was even using PHP mail to send emails. Set up WP Mail SMTP with Gmail this morning and tested it right away. Everything went through perfectly. My contact form has been silently failing for months and I never knew.
That is unfortunately a really common situation, Tobias. PHP mail works inconsistently depending on the host, and a lot of people only find out their forms are broken when a client mentions they never heard back. SMTP is the reliable fix and it only takes about 15 minutes to set up.
I followed the Gmail SMTP setup and kept getting an authentication error. Turned out I needed to create an App Password in my Google account instead of using my regular Gmail password. Might be worth adding that step to the guide for other people.
Great catch, Claudia. Google requires App Passwords when two-factor authentication is enabled on your account, which most people have these days. I will add a note about that to the Gmail section. Thanks for flagging it.
I went through this exact issue last week. Turned out my hosting provider had disabled the wp_mail function without telling anyone. The SMTP plugin route fixed it.
That is a real concern. On WordPress Sending Emails Fix, I would keep guardrails in place from the start and watch the first few runs closely. Once you see the pattern, it gets much easier to tune without adding unnecessary risk.
Would SendGrid or Mailgun be overkill for a small site with maybe 50 visitors a day? I am worried Gmail SMTP might have limits if my site grows.
For 50 visitors a day Gmail SMTP is completely fine, David. Gmail allows up to 500 emails per day through SMTP which is well above what a small site needs. SendGrid and Mailgun are worth considering if you start sending newsletters or transactional emails at scale, but there is no need to add that complexity right now.