WordPress SMTP: How to configure it to send Emails
When we send any email we expect it to be delivered to the inbox, but this might not be the case with WordPress. While sending emails with WordPress, there’s always an uncertainty, whether or not they are going to make up to the inbox. But why? Why is this dilemma?
In this article, I’m going to discuss all the causes that make your WordPress emails to land in spam. Also, I’m going to talk about WordPress SMTP and how to configure it to send emails.
Why aren’t WordPress emails landing in the Inbox?
The main reason behind this problem is that WordPress, by default, uses PHP mail() Function to send emails. And, most of the WordPress hosting servers are not configured to use this functionality properly. In most of the cases PHP mail() Function lacks email headers, I mean to say is that it doesn’t follow the proper protocol hence, your emails might not land in the inbox of receiver.
Another apprehension to this problem is that many email service providers use a variety of tools controlling email spam. These tools trace the original path of the email and thus raises the chances that emails sent from WordPress using PHP Mail() Function land in spam. Thus, the need arises for the email hosting server that provides proper authentication and follows the email protocol to enhance deliverability.
Thus, email should be sent using SMTP (Simple Mail Transfer Protocol) with well-configured headers, for this you either need to configure SMTP on your own hosting server or need to utilize a third party SMTP email service to send WordPress emails. There are a number of email service providers offering a variety of functionality and services. At TemplateToaster we have tried different email service providers, I’ll recommend a few we liked the most.
Mailgun
Mailgun is a very popular SMTP email service provider. It offers up to 10,000 emails totally free every month. And, if you have a requirement for more, Mailgun offers very affordable plans. You can easily choose the plan you need according to your requirements. Mailgun not only ensures the delivery but also provides you the reports of the same. Thus, in case your email is not delivered, you will have a complete report of it.
SendGrid
SendGrid is another immensely popular email SMTP service provider. It allows you to send up to 40,000 emails for free in its one month trial period. Also, you can store up to 2,000 contacts within Marketing Campaigns, free forever.If you wish to continue your free trial after the 30 day period, you can continue to send 100 emails per day. But, if you want to upgrade to a pricing plan, you can easily do that by choosing the plan according to your requirements.
Mailjet
Mailjet offers you to send up to 6000 emails for free every month. But, with this plan, you could send only 200 emails per day. Mailjet is an all-in-one email service provider. With Mailjet, you will be getting an unlimited number of contacts, real-time email tracking, delivery optimization etc with every plan, be it a free or crystal. Other than this if you wish to expand, it offers different pricing plans according to your needs. Also, you can add premium features like segmentation, email automation but you would have to pay for them accordingly.
Elastic Email
Elastic Emails is an email service provider that allows you to send up to 1,50,000 emails every month. And, if you need more you can buy them according to your need that too at a very reasonable price. It offers unlimited free contact storage, detailed delivery tracking and statistics, detailed campaign statistics, campaign creation tools with every account. It also provides 24/7 support with every account i.e. you can contact them at any point of time in the day.
Amazon SES
To use Amazon SES you need to sign up to Amazon Web Services account. You can send Amazon SES for free if you are an Amazon EC2 (Amazon Elastic Compute Cloud) user. You can send 62,000 messages per month to any recipient when you call Amazon SES from an Amazon EC2 directly or through AWS Elastic Beanstalk. Additionally, you can also receive 1,000 messages for free every month on Amazon SES. If you need to send more emails you will be charged at $0.10 per 1,000.
Now, as you know about these different types of email service providers, you must have a question that how does these work with WordPress!!!
How to configure Email SMTP Service Providers to send Emails in WordPress?
- To configure your SMTP email service provider to send WordPress emails, the very first thing you need is to sign up with any email service provider of your choice. Whether it be Mailgun, SendGrid or any other email service provider, you just have to configure basic domain settings.
- Go to domain settings and set the domain and sub-domain of your account e.g. “[email protected]” and select the desired password.
- Now, you need to install and activate WP Mail SMTP plugin through the ‘Plugins’ menu in WordPress.
- After activating it successfully, you need to visit Settings>Email.
- Here, you need to enter the email address you want to send emails from. After this, you can add a “from name”(the name you want to send emails from). In case you leave it empty the emails will be sent by default from WordPress.
- Make sure that you check the ‘Send all WordPress emails via SMTP’ option.
- Fill your SMTP host and port information you obtained from your email service provider you signed up to, in the SMTP Options. For encryption method, select SSL for encryption.
- In the authentication section, you need to check ‘Yes: Use SMTP authentication.’ option and then provide your SMTP login details.
- Now, save the changes you made by clicking ‘Save Changes’ button. Once, your changes are saved, you can send a test email to any account to check the deliverability. WP Mail SMTP will send the test email to the provided email address. In case you do not receive the test email, simply means that WP Mail SMTP is not configured properly.
Troubleshooting WordPress SMTP Settings
The most common reason behind this failure of test email to make it up to the Inbox is that the SMTP is incorrect, SMTP host or port. Thus, you need to be very particular about the SMTP host or port. Let me provide SMTP host and port settings for different SMTP email service providers, I discussed above to sail you through.
Mailgun
- From Email: Email address used in Mailgun account.
- SMTP Name: You can set any name to recognize Mailgun SMTP.
- HOST: smtp.mailgun.org
- PORT: 587
- USERNAME/API: Default SMTP Login.
- PASSWORD/Secret KEY: SMTP Password.
SendGrid
- From Email: Email address used in SendGrid account.
- SMTP Name: You can set any name to recognize SendGrid SMTP.
- HOST: smtp.sendgrid.net
- PORT: 25, 2525, or 587 for unencrypted / TLS connections
Use port 465 for SSL connections - USERNAME/API: Default SMTP Login.
- PASSWORD/Secret KEY: SMTP Password.
Mailjet
- From Email: Email address used in Mailjet account.
- SMTP Name: You can set any name to recognize Mailjet SMTP.
- HOST: Check Here
- PORT: Check Here
- USERNAME/API: Default SMTP Login.
- PASSWORD/Secret KEY: SMTP Password.
Elastic Email
- From Email: Email address used in Elastic Email account.
- SMTP Name: You can set any name to recognize Elastic Email SMTP.
- HOST: smtp.elasticemail.com or smtp25.elasticemail.com
- PORT: 25, 2525, 587, 465
- USERNAME/API: Default SMTP Login.
- PASSWORD/Secret KEY: SMTP Password.
Amazon SES
- From Email: Email address used in Mailgun account.
- SMTP Name: You can set any name to recognize Mailgun SMTP.
Region Name | SMTP Endpoint |
US East (N. Virginia) | email-smtp.us-east-1.amazonaws.com |
US West (Oregon) | email-smtp.us-west-2.amazonaws.com |
EU (Ireland) | email-smtp.eu-west-1.amazonaws.com |
Note: Amazon SES availability is limited to above regions only. Read More.
- USERNAME/API: Default SMTP Login.
- PASSWORD/Secret KEY: SMTP Password.
Another thing you need to keep a check on is that you select the correct encryption method. Usually, SSL works in most environments but checks it with your email service provider if they support it or not, for instance, Mailgun only supports TLS, not SSL.
This is the how you can configure WordPress SMTP settings to send your WordPress emails.