How to Set Up the Amazon SES Mailer in WP Mail SMTP

Would you like to use Amazon SES to improve email deliverability for your WordPress site? Amazon Simple Email Service, or Amazon SES, is a powerful tool that’s commonly used for sending marketing emails. The Amazon SES mailer for WP Mail SMTP lets you securely use this same tool to make sure your emails get delivered.

In this tutorial, we’ll show you every step needed to set up the Amazon SES mailer in WP Mail SMTP.

Requirements: Amazon SES requires your site to have an SSL certificate (https). For details on setting up SSL on your WordPress site, please check out WP Beginner’s SSL guide.

What is Amazon SES?

Amazon SES is a service designed to send emails for businesses. While our focus here is on using their services to improve the deliverability of emails sent out from your website, they also offer tools to create and send out marketing emails.

Amazon SES is free for the first year, and then after that pricing is based on the number of emails you send, as well as some other factors such as the size of email attachments. For full details, please be sure to check out Amazon SES’s pricing page.

In order to use Amazon SES, you must have an SSL certificate installed on your WordPress site.

For this mailer option, it’s also a good idea to have a domain-specific email address (ie example@yourdomain.com). For most reliable email deliverability, this domain-specific email address should be used as the From Email when setting up WP Mail SMTP on your WordPress site.

1. Configuring an Amazon AWS Account

Before we get started, you’ll need to sign up for a free account with Amazon Web Services, or AWS.

While your account is free and this mailer setup does not require use of any paid services, AWS will require that you enter a credit card when setting up an account.

After signing up for an Amazon Web Services account, their system will try to determine your region based off your address. If AWS is unsure of your region, you’ll be asked to select the next closest region.

Select a region in AWS

Create an IAM User

Now that you’ve created an account in Amazon Web Services, the next step is to set up an IAM User. This will provide you with access keys needed later.

First, you’ll need to click this link to open Amazon Web Services’ IAM Users page.

Within this page, click the Add user button.

Add new user in IAM for AWS

Next, you’ll set up a new user. In the User name field, you can add any name you’d like. However, we recommend using the following name format:

yourdomain_wpmailsmtp

For example, for WPForms.com we would use this user name: wpformscom_wpmailsmtp. If you need to set up additional users down the road, this will make it easy to keep track of which site is connected to each user and to edit specific users as needed.

Then for Access type, check the Programmatic access box.

Set up IAM user details in AWS

When you’re ready, click the Next: Permissions button to proceed.

Next, you’ll be setting permissions for this new user. From the top row of boxes, select Attach existing policies directly.

Then, type “AmazonSESFullAccess” (no quotes) into the search bar. This should leave only one result, named “AmazonSESFullAccess”. Be sure to check the box next to this option so that this permission is added for the user.

Provide permissions to IAM user in AWS

When you’re ready to move forward, click the Next: tags button. We’ll skip the next page, so you can also click the Next: Review button.

On the next page, you’ll be shown all the details you’ve chosen for this user. You can double check that everything looks correct, then click the Create user button.

Review details before creating user in AWS

AWS should now display a Success message. You’ll also see an Access Key ID and Secret Access Key for your user. Be sure to take a moment to copy these somewhere safe.

Note: You will not be able to see this Access Key ID and Secret Access Key again once you close this page, so be sure to download a CSV with these details and/or copy them into a safe location.

You can also keep this tab/window open for now, as we’ll be using these keys a little later.

2. Switching AWS to Production Mode

All Amazon SES accounts are, by default, put in Sandbox Mode. This is very limiting, as it means that your account will only be allowed to send emails to email addresses that have been verified through Amazon. In this step, we’ll show you how to move from Sandbox Mode to Production Mode so that you can send emails to anyone.

To begin this step, you’ll need to open this link to create a request with Amazon Web Services.

In the top row of boxes, be sure that Service limit increase is selected.

Create case for server limit increase

Next, you’ll need to fill out the Case Classification form. This is an important step, as it’s what Amazon uses to try and keep spammers from using their system. Within this form, you’re essentially proving to Amazon SES that your site will be sending emails for legitimate purposes.

We’ve shared all of the details you’ll need for this form below:

  • Limit Type: SES Sending Limits
  • Mail Type: Transactional
  • Website URL: Your site’s home URL
  • My email-sending complies with the AWS Service Terms and AUP: Yes
  • I only send to recipients who have specifically requested my mail: Yes
  • I have a process to handle bounces and complaints: Yes
  • Region: Choose the same region as when you set up your AWS account (whichever is closest to where your site’s server is located).
  • Limit: Desired Daily Sending Quota
  • New limit value: Estimate the maximum number of emails you expect your site to send per day.

Case classification form in AWS

Last, you’ll need to fill out the Use Case Description. In this field, share details about what kind of site you have and why you need to send out emails. Be sure to include the type of emails that your site will be sending (for example, confirmations of form submission, purchase receipts, etc). Try to be fairly detailed here, as Amazon may reject your request if it doesn’t feel enough information was provided.

Case description in AWS

When all of these details have been filled out, go ahead and click the Submit button.

Immediately after submission, you should receive two emails from Amazon Web Services. Both will simply confirm that a new case has been created.

AWS will generally review requests and let you know the result within one business day. In the meantime, though, you can continue with the next setup steps.

3. Setting Up WP Mail SMTP

While you’re waiting for AWS to review your case submission, you can set up WP Mail SMTP on your WordPress site.

Before we get started, be sure to install and activate WP Mail SMTP on your site.

Once you’ve installed and activated the plugin, go to WP Mail SMTP » Settings.

At the top of the Settings page, you’ll see a From Email option. For the From Email, you can use any valid email address. However, for best results we recommend using a domain-specific email address (ie example@yourwebsite.com).

You can also choose to check the box labeled Force From Email. If you’d like the From Email to be the same site-wide, this option will save you the trouble of editing the email settings throughout your site (in all form emails, etc).

Adjust From Email in WP Mail SMTP settings

Below the From Email, you can set the From Name. This is the name associated with emails sent out, and by default will be set to your site’s name. You can adjust this to any value you’d like. You can also check the Force From Name option to apply this setting site-wide.

Adjust From Name in WP Mail SMTP settings

Next, you’ll need to scroll to the Mailer field and select the Amazon SES option.

Select the Amazon SES mailer in WP Mail SMTP

We also recommend checking the optional Return Path checkbox to Set the return-path to match the From Email. With this enabled, you’ll be emailed if any messages bounce as a result of issues with the recipient’s email.

Set return path to match From Email

Now that you’ve chosen the Amazon SES mailer, you should see a new section appear titled Amazon SES. Here, you’ll need to add the access keys you created in your AWS account earlier. Go ahead and copy in the Access Key ID and Secret Access Key.

Add access keys for Amazon SES in WP Mail SMTP

Once your keys are in place, you can check the Region field. A region will already be pre-selected for you based on where your site’s hosting server is located, so just be sure to check that this is correct and matches what you chose in Amazon SES.

Choose closest region option in WP Mail SMTP settings

Now that you’ve added all of your WP Mail SMTP settings, click Save Settings.

After you’ve saved, an additional setting will appear: Verified Emails. This is where you will add any emails that you might like to use as the From Email on your site.

To add a new verified From Email, click Add an Email Address.

Add an Email Address to verify with Amazon SES

An overlay will appear, and you can add one email address at a time. After you click the Send Verification Email button, you should be shown a notice asking you to check that email’s inbox for a verification email.

Verify sending email address for WP Mail SMTP

This email will be sent from Amazon Web Services, and will include a verification link. You must click this link within 24 hours in order to verify this email address.

Email verification for Amazon SES

After you’ve successfully verified the email, you can return to your site’s WP Mail SMTP settings and refresh the page. Any verified emails should be displayed.

Verified Emails list in WP Mail SMTP

4. Sending a Test Email

Now that your WP Mail SMTP settings are ready and any From Emails have been verified, it’s important to send a test email to ensure that everything is working properly. To do this, make sure you’re on the Settings » WP Mail SMTP page and open the Email Test tab.

Open the Email Test tab in WP Mail SMTP

On this tab, you’ll see that the Send To field is already filled in with your site’s admin email. However, you can enter any email address that you have access to.

For HTML, you can also click the toggle if you’d prefer to send a plain text email. For most sites, though, it will make the most sense to test an HTML email (keep the default).

Once this is ready, click the Send Email button.

After sending the email, you should see a success message.

Notice showing the WP Mail SMTP test email sent successfully

If you check the inbox for that email address, you should have received the email for this test.

Successful test email from WP Mail SMTP

That’s it! You have successfully setup your site to send WordPress emails with Amazon SES. Now your form notifications will be delivered reliably.