Alex Harris

Marketing Lead

Alex Harris

Marketing Lead

WPForms Not Sending Emails? Here's How to Fix It

WPForms Not Sending Emails? Here's How to Fix It

WPForms Not Sending Emails? Here's How to Fix It

You submitted a test entry. Nothing arrived. You check the WPForms entries list and the submission is there — so the form itself worked. But the email notification never showed up.

This is one of the most common WordPress support issues, and it has nothing to do with WPForms being broken. It's almost always an email delivery problem. Here's how to track it down.

Why WPForms Stops Sending Email Notifications

WPForms sends notification emails using WordPress's built-in wp_mail() function. By default, that function uses PHP's mail() — which most hosting providers either restrict, block entirely, or route through servers with no SPF/DKIM authentication.

The result: emails get dropped silently. No bounce, no error, no indication in WPForms that anything went wrong.

Step 1: Check Your WPForms Notification Settings

Before anything else, confirm the notification is configured correctly.

Go to WPForms → Your Form → Settings → Notifications.

Check:

  • The "Send To Email Address" field contains a valid address

  • You're not using a smart tag that's resolving to blank (e.g., {field_id="1"} where field 1 is optional and was left empty)

  • The notification isn't disabled (toggle at the top of each notification block)

Also verify conditional logic isn't suppressing the notification. If you've set up conditions like "send only if X equals Y", make sure your test submission actually matches.

Step 2: Send a Test Email from WordPress

WPForms has a built-in email test tool. Go to WPForms → Tools → Email Test, enter your address, and send.

If that email doesn't arrive either, the problem is WordPress/PHP mail — not WPForms specifically. This is actually good news because it narrows the fix considerably.

Step 3: Set Up SMTP (This Fixes Most Cases)

The permanent fix for WordPress email problems is to route mail through a proper SMTP service instead of PHP mail().

Good options:

  • SMTP.com / Brevo (formerly Sendinblue) — free tiers available, reliable delivery

  • Postmark — excellent deliverability, developer-friendly

  • Gmail SMTP — works, but has sending limits and requires an App Password

  • Amazon SES — cheap at scale, setup is more involved

For WordPress, use a plugin like WP Mail SMTP (the most widely used) or FluentSMTP (free, no upsell nags). Both have WPForms-specific documentation.

Once configured, re-run the email test from Step 2. If it delivers, you're done.

Step 4: Check Spam Folders (and Fix Deliverability)

Emails from WordPress often land in spam because:

  • No SPF record for your domain

  • No DKIM signature on outgoing mail

  • The "From" address doesn't match the sending domain

If you're using SMTP, your provider will walk you through adding SPF and DKIM DNS records. Do this — it matters.

Also check the "From Name" and "From Email" in your WPForms notification settings. Using a @gmail.com or @yahoo.com address as the sender while routing through your own mail server is a reliable way to get flagged.

Step 5: Check Hosting-Level Email Restrictions

Some hosts limit or disable outgoing email entirely:

  • WP Engine — blocks wp_mail() by default on some plans

  • Kinsta — recommends SMTP, doesn't restrict but logs are useful

  • SiteGround / Bluehost — typically allow PHP mail but with low daily limits

If you're on a managed host and SMTP is already configured but emails still aren't arriving, check your host's email sending logs or contact support. Rate limiting is a common issue on shared hosting.

Step 6: Look at WPForms Logs

WPForms Pro has a built-in logging feature. Go to WPForms → Tools → Logs and filter by "Email".

You're looking for entries like:

  • Email failed to send

  • wp_mail returned false

  • SMTP authentication errors

These will tell you exactly where delivery is failing.

If you're on WPForms Lite, install WP Mail SMTP — it has its own email log (free in the basic version) that captures every send attempt.

Step 7: Rule Out Plugin or Theme Conflicts

If you've confirmed SMTP is working but WPForms notifications still aren't sending, a plugin conflict might be interfering with wp_mail().

Test by:

  1. Deactivating all plugins except WPForms and WP Mail SMTP

  2. Switching to a default WordPress theme (Twenty Twenty-Four)

  3. Submitting a test form

If it works, re-enable plugins one at a time until you find the conflict.

The Problem Nobody Talks About: Silent Failures After the Fix

Here's the thing: you fix the email issue today. Everything works. You move on.

Then three weeks later, your SMTP credentials expire, your hosting provider changes something, or a plugin update breaks wp_mail() again. The form keeps accepting submissions. The emails stop arriving. Nobody notices.

This is the real problem with relying on manual testing — it's a point-in-time check, not ongoing monitoring.

FormDoctor's WPForms email troubleshooter can help you diagnose the issue right now. And if you're managing multiple client sites, FormDoctor can run automated checks on a schedule — submitting your forms like a real user and alerting you the moment email delivery breaks.

Quick Checklist

  • Notification settings configured correctly (email address, no blank smart tags, no suppressing conditions)

  • WordPress email test sends successfully

  • SMTP plugin installed and authenticated

  • SPF and DKIM DNS records added

  • From address uses your own domain

  • No hosting-level email restrictions

  • WPForms logs show no errors

  • No plugin conflicts

Experience peace of mind with Form Doctor

Integrates seamlessly with any website.

Experience peace of mind with Form Doctor

Integrates seamlessly with any website.