Skip to content

How to Fix WPForms Email Delivery Failure

Fix WPForms email delivery failure by checking notification settings, spam filtering, SMTP, DNS authentication, and mail provider logs in the safest order.

6 min read Last updated Jun 16, 2026

WPForms email delivery failure usually means the form submitted correctly, but the notification was misaddressed, filtered, or blocked after WordPress tried to send it. Start by checking the WPForms notification recipient, sender address, and spam folders. If those are correct, move to SMTP setup, DNS authentication, and mail provider logs.

Quick Checks Before Changing Anything

Submit the form once using a real email address you control. Do not keep testing with the same message over and over, because mail providers can throttle or group repeated messages.

Check these first:

  • Look in spam, junk, promotions, and quarantine folders.
  • Confirm the recipient address in WPForms is current and spelled correctly.
  • Check whether the mailbox forwards elsewhere.
  • Ask whether your host or email provider recently changed spam filtering.
  • Make sure WordPress, WPForms, and any SMTP plugin are updated from Dashboard > Updates. WordPress documents normal plugin updates in its plugin management guide.

If submissions are visible in WPForms entries or the form shows a success message, treat this as an email delivery problem first, not a broken form.

Check WPForms Notification Settings

Open WPForms > All Forms, edit the affected form, then go to Settings > Notifications.

Confirm:

  • Enable Notifications is turned on.
  • Send To Email Address contains the correct destination.
  • Multiple recipients are separated correctly.
  • The From Email uses an address on your own domain, not the visitor’s email address.
  • The Reply-To field can use the visitor’s email address instead.

This step only confirms that WPForms is configured to create the notification. It does not prove your web host, SMTP service, DNS records, or recipient mailbox will accept and deliver it.

The sender address matters. Many mail providers distrust messages that claim to come from Gmail, Yahoo, Outlook, or another external domain while being sent by your website server. WPForms explains the same delivery pattern in its notification troubleshooting documentation.

A safer setup is:

From Email: [email protected]
Reply-To: {field_id="email"}
Send To: [email protected]

Use the smart tag picker in WPForms rather than typing field IDs from memory.

Decide Whether This Is WPForms, WordPress Mail, Or Your Mailbox

Use this decision path before installing anything new:

What happens Most likely area to check
Form does not submit or shows a front-end error WPForms field validation, CAPTCHA, JavaScript, caching, or theme/plugin conflict
Form submits, but no notification arrives anywhere WordPress mail, SMTP, host mail restrictions, or recipient filtering
Notifications go to one recipient but not another Recipient mailbox, forwarding, spam filtering, or domain policy
Notifications arrive only in spam Sender identity, SPF/DKIM/DMARC, message content, or SMTP setup
Notifications stopped after changing hosts or DNS Mail routing, SMTP credentials, SPF/DKIM records, or host mail limits

This keeps you from debugging the form builder when the real failure is downstream.

Fix In The Safest Order

1. Correct The Sender Address

In the WPForms notification settings, set From Email to an address at the same domain as the website.

For example, if the site is example.com, use:

[email protected]

Avoid using the visitor’s submitted email as the sender. Put that field in Reply-To instead, so replies still go to the person who submitted the form.

2. Test A Different Recipient

Temporarily send notifications to a second mailbox at a different provider. For example, test one mailbox at your domain and one external mailbox.

If one receives the message and the other does not, WPForms is probably handing the email to WordPress, and the failure is with filtering, forwarding, or authentication for the missing recipient.

Remove the temporary test recipient after confirming the result.

3. Set Up SMTP Instead Of Default WordPress Mail

WordPress sends mail through the wp_mail() function, which depends on the server’s mail configuration. The WordPress developer reference documents wp_mail() as the core mail function, but it does not guarantee that every host will deliver messages reliably from PHP mail alone: wp_mail() reference.

For most WPForms delivery failures, an SMTP plugin is the practical fix. SMTP sends mail through a real mail provider instead of relying on the web server.

In wp-admin:

  1. Install a reputable SMTP plugin.
  2. Connect it to your domain mailbox or transactional email provider.
  3. Send the plugin’s test email.
  4. Submit the WPForms form again.
  5. Check the SMTP plugin’s email log if logging is available.

Use the same sender domain in WPForms and in the SMTP plugin. Mixing identities can bring the failure back.

4. Check DNS Authentication

If SMTP is connected but messages still land in spam or disappear, check your domain’s email authentication records.

Your email provider should give you exact DNS records for SPF, DKIM, and sometimes DMARC. Add those records at the place where your domain’s DNS is managed, which may be your registrar, host, CDN, or DNS provider.

Do not guess these values. Copy them from the mail provider’s setup screen. Wrong SPF or DKIM records can make delivery worse.

5. Review Mail Provider Logs

If you use Google Workspace, Microsoft 365, Zoho, SendGrid, Mailgun, Postmark, Amazon SES, or another provider, check its message activity or delivery logs.

Look for:

  • rejected sender
  • authentication failure
  • recipient suppressed or bounced
  • rate limit
  • spam policy rejection
  • invalid SMTP credentials

This is the fastest way to separate “WordPress did not send it” from “the mail provider rejected it.”

Optional SSH Check

If you have SSH and WP-CLI access, you can confirm that WPForms Lite is installed and active:

wp plugin status wpforms-lite

Use this only as a status check. It does not prove that email delivery is working.

If WP-CLI cannot connect to the database, stop there and use your host’s WordPress admin or support panel instead. A database connection failure is a hosting or configuration issue, not a WPForms notification setting.

How To Confirm It Worked

A fix is working when a fresh form submission arrives at the intended mailbox and the sender looks like your own domain.

Confirm all of these:

  • The message arrives outside spam.
  • The From address matches your site or mail domain.
  • Replying to the message goes to the visitor, if you used a Reply-To smart tag.
  • A second test recipient receives the same notification.
  • Your SMTP or mail provider log shows the message as accepted or delivered.

After testing, remove any temporary recipients and test forms.

Rollback And Escalation Notes

Before changing DNS records, copy the existing values somewhere safe. DNS changes can affect normal business email, not just WPForms notifications.

If a new SMTP plugin makes delivery worse, disable it and restore the previous WPForms notification sender while you check credentials and DNS records.

Contact the right support team based on the evidence:

Evidence Contact
Form does not submit WPForms support or the plugin/theme causing the front-end conflict
WordPress cannot send any mail Hosting support
SMTP test fails SMTP plugin support or mail provider
SMTP succeeds but recipient never receives it Mail provider or recipient mailbox administrator
DNS records are unclear or not propagating DNS host, registrar, or mail provider
Messages are accepted but marked as spam Mail provider, with SPF/DKIM/DMARC results included

Published by

Editorial Staff

Practical WordPress fixes, recovery steps, and performance notes from the BugWP editorial team.