Looking for a secure SMTP plugin that helps you receive email notifications from your WordPress contact forms? With WP Mail SMTP, you can fix delivery issues by authenticating emails through your Gmail or G Suite account — all while keeping your login credentials safe.
In this post, we’ll show you how to set up WP Mail SMTP for sending WordPress emails with your Gmail or G Suite email address.
Here’s a table of contents to help you work through the steps to set this up:
- Install the WP Mail SMTP Plugin
- Create a Web Application for Gmail SMTP
- Grant Permisions and Send Gmail SMTP Test Email
But first, let’s look at the reasons why you aren’t receiving email from your WordPress forms.
Why You’re Not Receiving Notifications
The most common reason for not getting emails is that your WordPress hosting server is not configured to use the PHP mail function. Regardless of if you’re using unmanaged or managed WordPress hosting.
In addition to this, anti-spam efforts by email providers can impact your emails as well.
As part of their filtering process, many email providers will check whether your email originates from the same domain noted in the From Email. For example, if your email claims to be sent from your Gmail address but is actually sent from your website’s server (rather than Gmail’s server), your email may be sent to spam or not be delivered at all.
You can fix this by using SMTP instead of the PHP mail function. SMTP (Simple Mail Transfer Protocol) is the industry standard for sending emails reliably.
Why Use the WP Mail SMTP Plugin for Gmail SMTP?
The main benefit of using the WP Mail SMTP plugin is that it lets you send WordPress emails securely using your Gmail or G Suite account without requiring you to enable less secure apps in your account.
In addition, unlike many other SMTP options, you won’t need to enter your Gmail username and password in your WordPress dashboard where other site users can see them. By using this method, you’ll help to keep your WordPress site secure.
Important: If you’re looking for a seamless experience setting up SMTP, our official recommended mailers include Sendinblue.
But if you’d still like to use Gmail or G Suite, let’s go ahead and take a look at how to set up WP Mail SMTP for sending WordPress emails using that mailer.
Step 1: Install the WP Mail SMTP Plugin
The first thing you need to do is to install and activate the WP Mail SMTP plugin. For step-by-step instructions, you can check out WPBeginner’s guide on how to install a WordPress plugin.
After installing and activating WP Mail SMTP, go to WP Mail SMTP » Settings and scroll down to the Mail section.
Here, you’ll see the From Email. Check this box.
Scroll down and you’ll see the From Name setting. This you can customize.
The From Name is the name associated with emails sent out, and is set to your site’s name by default. You can adjust this to anything you’d like. You can also check the Force From Name option to apply this setting site-wide.
To start the mailer setup process, you’ll need to scroll down a bit further to the Mailer section and click on the Google option.
Important: Gmail’s API (used by the Google mailer) will not allow you to customize certain aspects of your emails, such as the Reply To email address. If this is important to you to control, consider using an alternative mailer option. You may also want to consider a different mailer if you expect to send a high volume of emails, because Gmail’s API has rate limitations and a number of additional restrictions that can lead to challenges during setup.
If you are continuing your Gmail mailer setup and not selecting a different mailer, next we 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.
Next, you should see a new Gmail section appear. Here, you’ll see fields for Client ID and Client Secret.
To get the information for these fields, you’ll need to create a web application through your Google account. This doesn’t require any coding, and we’ll show you exactly what to do.
Step 2: Create a Web Application for Gmail SMTP
To create an application, you’ll first need to click here then sign in to your Gmail account and access Gmail’s application registration. This link should launch a new tab for you, so keep your WP Mail SMTP settings tab open because we’ll be coming back to those later.
Note: If you’re using G Suite, make sure that the Google account you use has email sending permissions (in other words, access to its own inbox).
Once you’ve followed that link and logged into your Gmail account, you should see a form named “Register your application for Gmail API in Google API Console”.
In the dropdown labeled Select a project where your application will be registered, leave the default option of Create a project. In some cases, you may also be asked to agree to terms of service.
After filling out this form, go ahead and click the Continue button.
Next, you should see a screen that says “The API is enabled”. To proceed to the setup page, click the Go to credentials button.
On the next page, you’ll be prompted to determine the credentials you need. Here are the fields on this page and the options you’ll need to select:
- Which API are you using? Gmail API
- Where will you be calling the API from? Web server (e.g. node.js, Tomcat)
- What data will you be accessing? User data
Once you’ve made these selections, click the What credentials do I need? button to go to the next step.
After clicking this button, Google will show a popup asking you to set up a consent screen. Go ahead and click on the Set Up Consent Screen Option.
This will open a new tab or window. Be sure to keep the original tab/window open, as we’ll return to it a little later.
In the new tab/window, you’ll be asked for several details to prepare your consent screen. This is the permissions screen that will display to you later in the setup process. It’s never seen by your users.
If you have a G Suite account, you’ll first set the Application type to Internal.
You will not see this option if you’re using an @gmail.com email account.
For Application name, you can add the name of your website (or any other name that feels logical to you).
Then, you can skip down to Authorized domains and add the URL for your website. Be sure not to include
When you’re ready, click the Save button at the bottom of this screen.
After saving your consent screen settings, Google will take you back to an API credentials screen. You can ignore this, and instead return to the first tab/window.
For this step, you’ll be creating an OAuth client ID. OAuth, or Open Authorization, is what will provide permission for your website to use your Gmail account to authenticate emails.
For the Name field, enter anything you like or leave the default name. This is only for reference within your Google account.
Last, we need to fill out the Authorized redirect URIs field. To get the URI for your site, you’ll need to go back to the tab or window with your WordPress site. Still on the Settings » WP Mail SMTP page, you’ll need to look under the Gmail section for the field labeled Authorized redirect URI.
The value in this field should be your site’s URL followed by some extra details. You’ll need to copy this value, which is easily done by clicking the button with the copy icon.
After copying the URI, return to the Google APIs page and paste it into the field under Authorized redirect URIs.
Note: In order to be certain that Google stores your data, enter the URL and then tap the Enter/Return key. When you see a trash can icon next to the URL, you’ll know it’s been stored and it’s ok to proceed.
When you finish filling out these details, you may see a Refresh button near the bottom of the page. Go ahead and click this.
Next, you can click the Create client ID button.
You’ve now successfully created a Google web application!
Now we need to see the full details. On the last screen, click I’ll do this later to go to the Credentials page.
Step 3: Grant Permissions and Send Gmail SMTP Test Email
On the Credentials page, you can now see the details of the web application you just created. To view Client ID and Client Secret, click the pencil icon.
This will open all of the details for your app. On this page, you’ll see the Client ID and Client secret values.
Each of these will need to be copied into your WP Mail SMTP settings back in your WordPress admin screen.
Note: Be very careful not to copy any extra text or spaces with your Client ID or Client Secret, as this will result in an error in the next step.
After saving these settings, the page will refresh. Before Google allows this information to be used to connect to your account, however, you must grant permission.
To do this, scroll to the bottom of this page and click the button labeled Allow plugin to send emails using your Google account.
This will open a login screen for Google. Go ahead and log into the account you’re setting this SMTP up with. Then, you’ll see a screen asking for permission for this site to send emails on your behalf.
When you’re ready, click the Allow button to proceed.
Next, you’ll be returned to your WP Mail SMTP settings and a success message will be displayed. Now that the connection is complete, you’re ready to send a test email under the Email Test tab.
Once the Test Email tab is open, you’ll need to enter a valid email address and click the Send Email button. You can use your business email address here if you want to. Be sure to use an email address you have access to so you can confirm the email is delivered.
When the test message has been sent, you’ll see a success message at the top of this tab.
You should also soon receive a test email at the email address you entered.
FAQ on Gmail SMTP
Below are some commonly asked questions to help you navigate the Gmail SMTP setup even further.
What If the Gmail SMTP Test Email Fails?
If the SMTP test email isn’t able to send, a debug log will appear with additional details. Here are some of the possible error messages and how to resolve them.
401. That’s an error.
This error appears when the Client ID isn’t able to be read properly. To fix, try copying the Client ID in again and check that there’s no whitespace or extra text.
400. That’s an error.
Missing required parameter: client_id
This error will display when the Client ID field is empty or not able to be read properly. To fix it, copy in the Client ID again and be careful not to add extra text or whitespace.
cURL error 60: SSL certificate problem
This message means that the server is missing a certificate that’s required for SMTP to work. To fix this, you’ll need to contact your site’s hosting provider to ask them to install this certificate (most likely the cacert.pem certificate, though it’s best to ask your host to check).
“message”: “Login Required”
If you see this in the debug message, permission still needs to be granted to your use Google account. For instructions on how to fix this, please see Step 3 of this tutorial. Also, be sure to check that the From Email in your SMTP settings matches the email used to setup the Google app.
What If I See a Gmail SMTP Screen Saying “This app isn’t verified”?
When you click the Allow plugin to send emails using your Google account button, Google might display a screen that says “This app isn’t verified. This app hasn’t been verified by Google yet. Only proceed if you know and trust the developer.” But don’t worry — the message is only referring to the app you just created in your own Google account (so you are actually the developer in this case).
None of the above
If your test email fails without an error message, your Gmail API might be disabled. To enable it, follow Google’s guide on enabling an API.
To bypass this message, you’ll need to click Advanced and then Proceed.
What If I Want to Switch to A Different Email Later?
If you’d like to change to a different Gmail/G Suite email address, you’ll need to repeat all tutorial steps above. This includes generating a new Client ID and Client Secret under this other email account.
When you get to the Authorization step (under Step 3), save your settings and then click the Remove Connection button. This will remove the authorization for your original email account and allow you to repeat the authorization steps with the new email.
That’s it! You’ve successfully configured WP Mail SMTP’s Google mailer on your WordPress site. You’ve fixed email issues with tons of plugins, including Ninja Forms email delivery problems.
What are you waiting for? Get started with the world’s best WordPress forms plugin today.