View Categories

How to Solve WordPress Contact Form not Sending Email?

If you’re wondering why are my emails going to spam, this is a common WordPress issue affecting contact forms. By default, WordPress uses the PHP mail( ) function to send emails from your forms, which often lacks proper authentication and results in poor spam ratings. This can lead to:

  • WordPress Emails going to spam
  • WordPress Email not sending (due to server restrictions)

Solution: Implementing SMTP (Simple Mail Transfer Protocol) for your WordPress forms ensures reliable delivery of your notifications by routing emails through trusted servers like Brevo, Gmail, or Outlook. To enable SMTP functionality for your contact forms, we recommend using the SmartSMTP plugin, which seamlessly integrates with Everest Forms to guarantee your form submissions reach their destination.

Set up the SmartSMTP Plugin to Stop WordPress Emails Going to the Spam Folder #

As soon as you’ve installed and activated the Everest Forms plugin, it automatically installs the SmartSMTP plugin. You only need to activate and configure the settings. Follow the steps below for a complete setup:

Step 1: Activate SmartSMTP Plugin #

Go to your WordPress dashboard and navigate to Everest Forms > SMTP. Next, click on the Install & Activate SmartSMTP button.

Navigate to Everest Forms and SmartSMTP

Now, you’ll see the SmartSMTP setting panel to configure settings.

SmartSMTP Email Service Providers

Step 2: Configure SmartSMTP Settings #

SmartSMTP authenticates your emails, ensuring essential notifications (e.g., submissions, payments) reach inboxes.

A. Choose Your Email Service Provider #

An Email Service Provider is a service that offers email sending and receiving functionality. It allows you to send emails via SMTP instead of relying on your web server.

SmartSMTP offers three connection options:

SMTP OptionRecommended ForProsRequirements
Default SMTPFor testing purposes onlyNo detailed setup is neededEmail address and name
Brevo SMTPBeginners who want to use BrevoNo manual config, reliableRequires a Brevo account
Other SMTPAdvanced users needing custom SMTPWorks with any providerRequires manual configuration details
Option 1: Default SMTP (Not Recommended) #

Default SMTP is the WordPress default option that uses your web server’s default email configuration. This typically involves sending emails directly from your website’s domain using your hosting provider’s mail server. Hence, we recommend you choose from options 2 and 3.

Note: Enabling this option often leads to email delivery issues, as mentioned above. Avoid this option unless you’re testing.
Option 2: Brevo (Needs Brevo Account) #

Prerequisite: Brevo account

Brevo (formerly Sendinblue) is a trusted email service provider that works seamlessly with SmartSMTP. The plugin has pre-configured settings for Brevo (host, port, encryption). So, using this option only requires you to have a Brevo account and an API Key.

Generate Brevo API Key #

From your Brevo account, navigate to SMTP & API.

Next, click on Generate a new API key.

Copy the API key to a secure location.

This key will be used to authenticate your SmartSMTP plugin with Brevo.

Configure Brevo in your WordPress website #

Navigate to SmartSMTP and enable Brevo.

Fill in:

From Email Address: Enter your site’s admin email address or any email address with which you want to send the email from your site.

From Name: Display name to mention in the email.

Api Key: Paste your Brevo API key.

Click Save Connection Settings.

Option 3: Other SMTP (Gmail, Outlook, etc.) #

Prerequisite: Get SMTP details from your provider (see common examples below).

The Other SMTP option allows you to connect to any external SMTP provider (like Gmail, Microsoft, and Amazon SES) that meets your specific requirements.

When to use this option?

  • To use your existing SMTP provider
  • To take full control over email settings
Configure Other SMTP Settings #

Select Other SMTP and toggle to enable the service.

From Email Address: Use an authenticated address (e.g., [email protected]).

From Name: Sender’s name

Reply-To-Email Address: To receive responses to your email. It can be the same as your email address.

SMTP Host: Example: smtp.gmail.com for Gmail and smtp.office365.com for Outlook.

Type of Encryption: Choose between TLS or SSL

  • TLS (Transport Layer Security)
  • SSL (Secure Sockets Layer)

SMTP Port:

  • 587 (for TLS)
  • 465 (for SSL)

SMTP Authentication: Enable and enter:

  • Username: Your SMTP email address
  • Password: Your email password or App password

Some providers (like Gmail and Outlook) require you to create an AppPassword instead of using your email password for security reasons. Hence, configure accordingly.

Click on Save Connection Settings.

Once everything is configured, WordPress will route emails (such as form submissions, order confirmations, and password resets) through the SMTP server instead of the default mail ( )  function.

SMTP Settings for Popular Email Providers #
ProviderSMTP HostPortEncryptionApp Password Guide
Gmailsmtp.gmail.com587TLSGoogle App Password
Outlooksmtp.office365.com587TLSMicrosoft App Password

Step 3: Test & Troubleshoot #

You can send the test emails once you ensure the setup is ready.

Test Email #

  1. Navigate to Test Mail under SmartSMTP
  2. Enter the email address, check HTML Formatted, and click Send Test Mail.
Note: You can also customize the test email. 

Check your mailbox to see whether or not you have received the email.

Mail Logs #

Navigate to SmartSMTP > Mail Logs to see if emails have been sent or failed.

This feature provides you with the delivery log of every email sent from your site. You can check the Status tab of the email sent.

Click on the View button to see the complete email log.

Best Practices #

  • Use a professional email address
  • Update Regularly: Keep SmartSMTP and Everest Forms updated
  • Monitor Logs: Check Mail Logs to monitor failed deliveries

Powered by BetterDocs

Scroll to top