How to Fix WordPress Email Not Sending — WP Mail SMTP Setup Guide

By default, WordPress sends email using PHP's built-in mail() function. Many hosting environments and spam filters block this method, which is why contact forms, order confirmations, password resets, and notification emails often fail to deliver. This guide shows you how to fix it by connecting WordPress to a proper SMTP server.

Need help sorting your WordPress email?

We can configure SMTP sending for your WordPress site as part of our managed support. Contact our team →


Why WordPress Email Stops Working

The two most common reasons WordPress emails fail to deliver:

  • PHP mail() is blocked — Many hosting setups and spam filters reject email sent via PHP's mail function because it lacks authentication.
  • No SPF/DKIM records — Without these DNS records, even correctly sent email is flagged as spam. See our SPF, DKIM and DMARC setup guide for details.

The fix is to route WordPress email through a properly authenticated SMTP account. The best free option is your Host Dada email account.


Step 1 — Create a Dedicated Sending Email Account

Create a specific email address to use for outgoing WordPress mail (e.g. noreply@yourdomain.co.uk or wordpress@yourdomain.co.uk).

  1. Log in to your Host Dada control panel.
  2. Open cPanel and go to Email → Email Accounts.
  3. Click Create and set up the new address.
  4. Note down the password you set — you'll need it shortly.

Your SMTP settings will be:

  • SMTP Host: mail.yourdomain.co.uk
  • SMTP Port: 587 (STARTTLS) or 465 (SSL)
  • Username: your full email address (e.g. wordpress@yourdomain.co.uk)
  • Password: the password you just set
  • Encryption: TLS or SSL

Step 2 — Install WP Mail SMTP

WP Mail SMTP is the most widely used plugin for fixing WordPress email. The free version covers all standard SMTP setups.

  1. Log in to your WordPress admin dashboard (yourdomain.co.uk/wp-admin).
  2. Go to Plugins → Add New Plugin.
  3. Search for WP Mail SMTP.
  4. Click Install Now on the plugin by WPForms.
  5. Click Activate.

Step 3 — Configure WP Mail SMTP

  1. Go to WP Mail SMTP → Settings in the left menu.
  2. Under From Email, enter the email address you created in Step 1.
  3. Under From Name, enter your website or business name.
  4. Tick Force From Email and Force From Name to ensure all plugins use these settings.
  5. Scroll to Mailer and select Other SMTP.
  6. Fill in the SMTP settings:
    • SMTP Host: mail.yourdomain.co.uk
    • Encryption: TLS
    • SMTP Port: 587
    • Toggle Authentication ON
    • SMTP Username: your full email address
    • SMTP Password: the email account password
  7. Click Save Settings.

Step 4 — Send a Test Email

  1. Go to WP Mail SMTP → Tools → Email Test.
  2. Enter an email address you have access to.
  3. Click Send Email.
  4. Check your inbox. If the test email arrives, your configuration is working.

If the test fails, a detailed error message will appear — see the troubleshooting section below.


Alternative: Using Gmail / Google Workspace as Your Mailer

If you have a Google Workspace account, you can use Gmail's SMTP instead. The settings are:

  • SMTP Host: smtp.gmail.com
  • SMTP Port: 587
  • Encryption: TLS
  • Username: your Gmail address
  • Password: a Google App Password (required if 2FA is enabled)

Note: Standard Gmail accounts have sending limits (500 emails/day). For transactional email on busy sites, a dedicated email service (such as your Host Dada email) is more reliable.


Common Issues and Fixes

Test email fails with "SMTP connect() failed"

This usually means the SMTP host or port is wrong, or the connection is being blocked. Try switching from port 587 (TLS) to port 465 (SSL) — or vice versa. Also confirm your SMTP host by checking cPanel's Email Accounts page for the correct server name.

Test email fails with "Authentication failed"

Double-check the username (it must be the full email address, not just the local part) and the password. Try logging in to Webmail with the same credentials to confirm they work.

Emails send successfully but arrive in spam

This is an SPF/DKIM issue, not an SMTP issue. Add SPF, DKIM and DMARC records to your domain — see our SPF, DKIM and DMARC setup guide.

WooCommerce order confirmation emails not arriving

After configuring WP Mail SMTP, go to WooCommerce → Settings → Emails and check that each email type (New Order, Processing, Completed, etc.) is enabled. Send a test email from each one.

Contact form emails not arriving

Most contact form plugins (Contact Form 7, Gravity Forms, WPForms) have their own "from email" setting. After configuring WP Mail SMTP with Force From Email enabled, they should all route through your SMTP configuration automatically.


Related Articles

Still not working?

Our WordPress support team can diagnose and fix email delivery issues on your site. Get support →

آیا این پاسخ به شما کمک کرد؟ 0 کاربر این را مفید یافتند (0 نظرات)