How To Fix WordPress Not Sending Email Issue

If your WordPress website is not sending emails, the issue is usually that WordPress is using the default PHP mail function, which many hosting providers block or limit.

The best solution is to configure SMTP. In this guide, we’ll use WP SMTP Mailer – SMTP7 to send emails through Gmail or Zoho Mail and Forminator to deliver contact form notifications reliably.


Step 1 — Install the SMTP Plugin

Install the following plugin:

PluginAuthorPurpose
WP SMTP Mailer – SMTP7ArshidSends all WordPress emails through SMTP instead of PHP Mail
How To Fix WordPress Not Sending Email Issue

After activation, open the SMTP settings.


Gmail SMTP Settings

SettingValue
SMTP Hostsmtp.gmail.com
SMTP Port587
EncryptionTLS
Usernameyourgmail@gmail.com
PasswordGmail App Password
From Emailyourgmail@gmail.com
From Name147Website

Important: Do not use your regular Gmail password. Use a Gmail App Password instead.

How To Fix WordPress Not Sending Email Issue

How to Create a Gmail App Password

Before using Gmail SMTP:

  1. Enable 2-Step Verification on your Google account.
  2. Open Google Account → Security.
  3. Click App Passwords.
  4. Create a new App Password.
  5. Copy the generated password.
  6. Paste it into the SMTP Password field.
How to Create a Gmail App Password
How to Create a Gmail App Password

After saving the settings, send a Test Email to verify everything is working.


Zoho SMTP Settings

If your client uses Zoho Mail, use these settings instead.

SettingValue
SMTP Hostsmtp.zoho.com
SMTP Port587
EncryptionTLS
Usernameyourname@domain.com
PasswordZoho Email Password
From Emailyourname@domain.com
From NameBusiness Name

Step 2 — Install Forminator

Install the following plugin.

PluginAuthorPurpose
ForminatorWPMU DEVCreates contact forms and sends email notifications
wordpress not sending emails

After installation:

Forms → Select Your Form → Email Notifications


Configure Admin Email Notification

SettingValue
Recipientsowner@company.com
Multiple RecipientsSeparate with commas
From Name147Website or Business Name
Reply-ToVisitor’s Email Field

Example:

FieldExample
Recipientowner@company.com
Reply-To{email-1}

Using the visitor’s email as the Reply-To makes it easy for the business owner to reply directly from their inbox.


Send Confirmation Email to Visitors (Optional)

You can also send an automatic confirmation email after someone submits the form.

SettingValue
Recipient{email-1}
SubjectWe received your message

Example email:

Hi {name-1},

Thank you for contacting us.

We’ve received your message and will get back to you as soon as possible.

Thank you,

147Website


Step 3 — Test the Contact Form

After everything is configured:

TestExpected Result
Send SMTP Test EmailEmail is delivered successfully
Submit Contact FormAdmin receives notification
Visitor ConfirmationVisitor receives confirmation email (optional)
Reply ButtonReplies go directly to the visitor’s email

Troubleshooting Checklist

If emails are still not sending, check the following:

Item
SMTP plugin installed correctly
SMTP Host is correct
Port is set to 587
Encryption is TLS
Username matches the From Email
App Password is correct
SMTP Test Email works
Forminator Email Notifications are enabled
Recipient email address is correct
Hosting provider is not blocking outgoing SMTP

Recommended Setup Order

StepAction
1Install WP SMTP Mailer – SMTP7
2Configure Gmail or Zoho SMTP
3Send a Test Email
4Install Forminator
5Configure Email Notifications
6Submit a test form
7Verify both SMTP and contact form emails are working

Final Thoughts

A properly configured SMTP service greatly improves email deliverability compared to WordPress’s default PHP mail function. By using WP SMTP Mailer – SMTP7 with Gmail or Zoho Mail, and configuring Forminator email notifications correctly, you can ensure contact form submissions, password reset emails, and other WordPress notifications are delivered reliably. Always perform a test after setup to confirm everything is working before launching the website.

Still need help? Contact me.

Leave a Comment