How to send WordPress email with SMTP
Help centreOn this page
This guide shows how to make WordPress send its emails through a real mailbox on your hosting, using an SMTP plugin.
Why WordPress email goes missing
By default, WordPress sends email using PHP’s built-in mail function. Those messages aren’t signed in by any mailbox, so receiving servers often treat them with suspicion. They can land in spam or be rejected without you knowing.
Sending through SMTP means WordPress logs in to a mailbox with a username and password, just like Outlook does. The mail is then far more likely to arrive. This also fixes most cases of contact forms that seem to send but never reach your inbox.
Create a mailbox to send from
- Log in to cPanel and create a mailbox such as website@yourdomain.co.uk. See how to create an email account.
- Make a note of the address and password.
Use an address on the same domain as your website. Sending as a Gmail or Hotmail address from your site will usually fail checks at the other end.
Set up the SMTP plugin
There are several free plugins that do this. WP Mail SMTP and FluentSMTP are two common ones. The steps are much the same in each, though the wording may vary.
- Log in to WordPress and go to Plugins, then Add New.
- Search for the plugin, click Install Now, then Activate.
- Open the plugin’s settings. Choose Other SMTP (or a similar option) as the mailer.
- Enter these settings:
- From email: the mailbox you created
- SMTP host: mail.yourdomain.co.uk
- Encryption: SSL/TLS (sometimes just called SSL)
- Port: 465
- Authentication: on
- Username: the full email address
- Password: the mailbox password
- Tick the option to force the from address, if there is one, so every plugin sends as that mailbox.
- Save the settings.
Send a test
- Find the plugin’s Email Test or Test tab.
- Send a test to an address outside your domain, such as a Gmail account.
- Check it arrives, and check the spam folder too.
- Fill in your own contact form and check that message arrives as well.
If it doesn’t work
- Authentication failed. The username must be the full email address. Reset the mailbox password in cPanel and enter it again. See how to change an email password or mailbox size.
- Connection timed out. Check the host is mail.yourdomain.co.uk and the port is 465 with SSL/TLS.
- Mail sends but lands in spam. Set up SPF, DKIM and DMARC for your domain. See how to set up SPF, DKIM and DMARC.
- Test works but the contact form doesn’t. Check the form’s own settings. Some forms have their own from address that needs to match your mailbox.
Good to know
Outgoing mail from our servers passes through MailChannels, which filters it for spam. If messages are being held back, see why is my email not sending.
Still stuck? Open a support ticket and we’ll help.
WP Toolkit, staging, backups every six hours and free migration of your site.