How To Send Email in WordPress Using The Gmail SMTP Server
How To Send Email in WordPress Using The Gmail SMTP Server
Are you having trouble sending emails from your WordPress site?
One easy way to solve this is by sending WordPress emails using the Gmail SMTP server.
In this article, we will show you how to send emails from your WordPress site using the Gmail SMTP server.
Why and When You Need Gmail SMTP Server for WordPress Emails
Your WordPress site sends emails to notify you of new user registration, lost password reset, automatic updates, and
notifications from your contact forms.
By default, WordPress uses the PHP mail function to send out email notifications. However, this function doesn’t
work as expected due to a number of reasons.
Most WordPress hosting companies restrict usage of this function to prevent abuse and spam.
Spam filters on popular email service providers check incoming emails to monitor if they are sent from authentic
mail servers. Default WordPress emails fail this check and sometimes may not even make it to the spam folder.
SMTP (Simple Mail Transfer Protocol) is the industry standard for sending emails. Unlike the PHP mail function, SMTP
uses proper authentication, which increases email deliverability.
Gmail provides an SMTP service that you can use to send out emails from your WordPress site. If you just want to
send WordPress notification emails to yourself and a few users on your site, then Gmail SMTP servers are the best
option.
However, if you are planning on sending newsletter emails using WordPress or if you have an online store, then you
should use a mass emailing service provider, like Sendinblue or Mailgun.
You can use your free Gmail account to send out WordPress emails. However, for better deliverability, we
recommend using paid G Suite.
With G Suite, you get your own professional branded email address such as ([email protected]).
G Suite requires you to add MX records to your domain name which means that your emails will appear to be
coming from your own domain name boosting authenticity and ensuring better deliverability.
We use G Suite for WPBeginner and can honestly say it’s the best.
Video Tutorial
Subscribe to WPBeginner
If you decided to use G Suite, then you first need to set up your domain to work with Google Apps. We have a step-
by-step tutorial on how to set up a professional email address with G Suite.
The rest of the instructions are the same whether you are using a paid or free Gmail account.
The first thing you need to do is install and activate the WP Mail SMTP plugin. For more details, see our step-by-step
guide on how to install a WordPress plugin.
WP Mail SMTP is the best WordPress SMTP plugin on the market. It allows you to easily use any SMTP server to send
WordPress emails with higher deliverability.
We recommend buying the paid version called WP Mail SMTP Pro which gives you access to premium support, more
mailers, and white-glove set up by one of their experts.
Upon activation, you need to visit the Settings » WP Mail SMTP page to configure the plugin settings. Next, enter
your license key and click the ‘Verify Key’ button. You can find the key in your WP Mail SMTP account area.
Under the General settings tab, you need to make sure that you use your Gmail email address in the ‘From Email’
field. Next, you need to provide the sender’s name.
WP Mail SMTP plugin offers two ways to connect your WordPress site to the Gmail servers.
The first method uses OAuth Authentication. This is a more secure method to send emails using Gmail servers.
The second method is by entering Gmail SMTP settings manually. This method is not recommended because it is
less secure.
That being said, let’s set up WordPress to use Gmail SMTP for sending emails.
This method is recommended for all users. It is more secure and once you set it up, you’ll never have to do that
again.
Next, you will see the option to enter your Client ID, Client Secret, and a URL in the ‘Authorized redirect URI’ field
when you scroll down.
To start, simply visit the Google Cloud Platform website and then click on ‘My First Project’ at the top.
A small popup window will open where you can select your projects. Go ahead and click on the ‘New Project’ option.
On the next screen, you’ll be asked to provide a name for your project. Give it a memorable name, so that you can
easily recognize it in the future.
The developer console will now create your project and take you to its dashboard. Google offers developers access
to many of their APIs and services. You need to enable the APIs that you will be needing for this project.
This will bring you to the APIs library page. Next, you need to type Gmail in the search box to quickly find the Gmail
API and click to select it.
You will now see an overview of the API and what it can do. Simply click on the ‘Enable’ button to continue.
Now that your API is enabled, the next step is to create credentials that you can use in your WP Mail SMTP plugin
settings.
Click on the ‘+ Create Credentials’ button to continue and select the ‘Help me choose’ option from the dropdown
menu.
On the next screen, you can select ‘Gmail API’ from the dropdown menu for Which API are you using.
After that, choose ‘User data’ for What data will you be accessing and then click the ‘Next’ button.
Now, you’ll need to enter your App’s information. You can start by giving a name for your app, selecting the email
address you provided, and adding an app logo if you want.
Next, you’ll need to scroll down and enter Developer contact information. Once you’ve entered the email address,
simply click the ‘Save and Continue’ button.
On the next screen, you can configure the ‘Scopes’ for Gmail API. This is an optional step and you can skip this for
now.
Simply scroll down to the bottom of the page and click the ‘Save and Continue’ button.
Next, go ahead and enter details for OAuth Client ID. Start by choosing ‘Web Application’ as the Application Type
from the dropdown menu and then enter a name.
If scroll down, you’ll see options for Authorized JavaScript origins. You can skip this and head over to Authorized
redirect URLs.
Go ahead and click the ‘+ Add URL’ button under Authorized redirect URLs and enter
https://connect.wpmailsmtp.com/google/ under the URLs field.
Once you’ve entered the URL, simply click the ‘Create’ button.
Next, you’ll see your credentials under the Your Credentials area.
Go ahead and click on the Done button at the bottom to move on.
You will now be taken to your project’s credentials page. On this page, you can see your recently created credentials
listed here. You need to click on the edit icon next to your credentials to continue.
This will bring you to the edit credentials page where you will be able to see your client secret and client ID. You
need to copy and paste the key into your plugin’s settings page.
Return back to the plugin’s settings page in your WordPress admin area. Now that you have both client ID and client
secret keys, you need to click on the ‘Save Settings’ button to continue.
The plugin will now store your settings and reload the page. After that, you need to scroll down to the bottom of the
settings page and click on the ‘Allow plugin to send emails using your Google account’ button.
This will take you to your account on Google, and you will be asked to give the website permission to send emails on
your behalf.
Simply select your Gmail account and give permissions to link your Google API project.
After that, you will be redirected back to your website where you will see a success message.
This method allows you to manually connect to Gmail’s SMTP servers to send your WordPress emails.
First, you need to visit the Settings » WP Mail SMTP page to configure the plugin settings.
You need to start by providing the Gmail address you want to use in the ‘From Email’ field and your name in the
From ‘Name’ field.
Next, you need to select ‘Other SMTP’ as your mailer and check the box next to the return path.
After that, scroll down to the Other SMTP section to configure more settings.
Here is the exact configuration you need to add to the plugin settings:
SMTP Port: 465 (this should automatically appear when you select SSL encryption)
Once you are done, click on the save changes button to store your settings.
That’s all, you have successfully set up WP Mail SMTP to use Gmail SMTP servers.
Note: If you use method two, please know that it’s less secure because your password is stored in text. You can
enhance this by using the constants tip, but we strongly recommend using Method 1.
WP Mail SMTP plugin allows you to test your email settings, so you can make sure that everything is working
properly.
You need to visit the Settings » WP Mail SMTP page and click on the ‘Email Test’ tab. Simply provide an email
address that you can access in the ‘Send To’ field and click on the Send Email button.
You will see a success message. You can now check your inbox to see a message with the subject line ‘WP Mail
SMTP: Test Email to…’.
That’s all, you have successfully setup your WordPress site to send emails using Gmail SMTP servers.
If you want even more functionality, you should try WP Mail SMTP Pro.
With the Pro version of the plugin, you can connect with:
G Suite/Gmail
Amazon SES
Mailgun
SendGrid
And more
You also get additional features like email logs, the ability to fine-tune/control which notification your WordPress site
sends, and more.
We have seen users encounter a few issues when using Gmail SMTP with certain shared hosting configurations.
1. Log in to your cPanel account and create an email account that matches your Google apps email address. This
might seem strange because you’re not using your server for emails. This step basically tricks your server into
believing that you’re sending the email through the server.
2. In your cPanel account, go to the MX Records and change the MX routing from automatic to remote. It might be
a little tricky to find since each host now has a custom cPanel interface. You need to look for a small link next to
MX that says Email Routing: Remote Mail Exchanger.
3. After that log back into your WordPress site and send a test email.
We hope this article helped you learn how to send email in WordPress using the Gmail SMTP server. You may also
want to see our list of the best contact form plugins for WordPress, and our comparison of the best email marketing
services for small businesses.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also
find us on Twitter and Facebook.
How to Start a Podcast (and Make it Revealed: Why Building an Email List is so
Successful) in 2022 Important Today (6 Reasons)
How to Properly Move Your Blog from How to Fix the Error Establishing a
WordPress.com to WordPress.org Database Connection in WordPress
Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how
WPBeginner is funded, why it matters, and how you can support us.
Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi. We have
been creating WordPress tutorials since 2009, and WPBeginner has become the largest
free WordPress resource site in the industry.
Download Now
Mallory Moore
Jan 13, 2021 at 2:02 pm
After completing all the steps it re-directed me to my WordPress site but it went to a page that said not found to
there was no success msg so I can’t test as it still says unauthorized.
Reply
For that specific error message, you would want to take a look at our article below:
https://www.wpbeginner.com/wp-tutorials/how-to-fix-the-401-error-in-wordpress-solutions/
Reply
Vaskar
Oct 28, 2020 at 4:44 pm
I want to send newsletters/mail to my website subscribers. I want to send mail to my website subscribers from my
gsuite business mail address. Can you suggest to me that what I have to do now?
Reply
For creating a newsletter, we would recommend taking a look at our article below:
https://www.wpbeginner.com/beginners-guide/how-to-create-an-email-newsletter/
Reply
AJ
Sep 3, 2020 at 1:59 pm
Reply
Reply
Lennon
Aug 10, 2020 at 9:04 pm
Can we use a forwarding email address to set this up or do we have to have a Gmail account?
Reply
For other methods, you would want to take a look at our other article below:
https://www.wpbeginner.com/plugins/how-to-set-up-wp-mail-smtp-with-any-host-ultimate-guide/
Reply
Peter
Aug 3, 2020 at 4:26 am
Hi
When setting up Oauth consent screen, Internal and External options are present. Only external option is available to
Gmail users. Is this the correct one to choose?
Thanks!
Reply
It sounds like that would be correct, for questions about the plugin we would recommend reaching out to the
plugin’s support for assistance
Reply
Gordon Barker
Jul 27, 2020 at 3:27 am
No where can I find where to set the email “to field” please could you explain how to set this field?
Reply
You would want to check with the settings for your form plugin for setting the to location
Reply
Jairo Paredes
Jun 28, 2020 at 5:47 pm
Excellent!!!!
Thanks a lot….
Reply
You’re welcome
Reply
Ruxandra
Jun 16, 2020 at 11:26 am
Awesome! Thanks!
Reply
You’re welcome
Reply
Vivek
Jun 16, 2020 at 2:28 am
Hi,
My emails are automatically deleting, i’ve not set any filters or any other things. What might be the issue?
Reply
You would want to reach out to who you are using for your emails to ensure there isn’t an issue on thier end.
Reply
Vijay
May 29, 2020 at 12:56 pm
Thanks.
Reply
Reply
Dalton
Apr 20, 2020 at 8:31 pm
I followed the steps to set up the email and it works, but how do I send emails to my email list now?
Reply
If you’re attempting to create a newsletter then we would recommend going through our guide here:
https://www.wpbeginner.com/beginners-guide/how-to-create-an-email-newsletter/
Reply
Dusan
Mar 18, 2020 at 6:53 pm
With this I get the 2000 limit in a 24 hour period as it uses only 1 email address. Is there a way to use this as the
smtp relay that allows 10,000 emails to send per 24 hour period. Or any way to add in multiple emails to send from?
Reply
We do not have a recommended method to remove that limitation. For sending that many emails we would
recommend looking at email marketing services such as the ones from our article here:
https://www.wpbeginner.com/showcase/best-email-marketing-services/
Reply
Nauval
Feb 28, 2020 at 1:20 am
Reply
Yes
Reply
Dan Martin
Aug 7, 2019 at 3:58 pm
I just used this for my site and it worked. Seriously this was a life saver. I had spent several hours troubleshooting and
the video solved the whole problem in like 5 minutes. Thanks.
Reply
Reply
Luigi
Jul 24, 2019 at 9:36 am
How can I send emails configured with WP MAIL SMTP (I use gmail) customized with the site’s domain? I need to
differentiate emails depending on the type of email my site sends.
Reply
It would depend on what plugin/tools you are using to send the emails as WP Mail SMTP is for changing how
WordPress sends the emails not for users sending emails.
Reply
Austin Blair
May 16, 2019 at 5:34 am
Just wanted to say THANK YOU! I was totally struggling to get my contact form to send emails correctly until I came
across your post. I used the first method and it worked like a charm. However there was a step (probably recently
introduced) where I had to set up a consent form? Took me to a different screen not featured in the video, but was
relatively straight forward. Thanks again!
Reply
Thank you for letting us know and glad our article could help
Reply
Bobby Zopfan
Mar 23, 2019 at 10:54 am
But it didn’t work. SMTP couldn’t authenticate me. Although my ID/pW is fully correct.
Reply
If you reach out to the plugin’s support with your specifics they should be able to help you find the problem
Reply
Daniel
Mar 23, 2019 at 2:44 am
Thanks again for the awesome tutorial, the forms work fine now! I have a question: I’d like to change the From Name
in the plugin settings, but it’s impossible. I’ve tried to reintstall the plugin, all my settings were still saved tho. Is there
any way I could change the From Name of the email now?
Reply
You would want to reach out to the plugin’s support for how to set that up but for the moment, if you set it to
the default method it should allow you to change those settings.
Reply
Afam
Nov 23, 2018 at 2:58 pm
Hello there,
I’m really tired with this issue of CF7 not able to send mails to gmail from my site. It seems everyone has this issue.
I followed your instructions to the letter and got to the point I’m supposed to allow plugin to send emails using my
google account, an error appears telling me of a URI mismatch. What’s that? I copied and pasted the uri as you said.
What did I do wrong. Please help me, have not been sleeping because of this.
Thanks.
Reply
Hi Afam,
You may not have saved the redirect URI when creating the app, follow the steps again and make sure that you
copy the exact URL from plugin’s settings page to enter in your app.
Reply
Sarah
Oct 17, 2018 at 1:23 pm
Hello,
I have followed the instructions you provided, than you! I got all the way to the “allow plugin to send emails….” for
gmail and when i click on that button it gives me the message that the app hasn’t been verified.
I have tried multiple fixes but it is still isn’t working.
Any suggestions?
Thank you
Reply
Jorge Zamudio
Sep 5, 2018 at 12:03 am
your really save my day man !! hope you are doing well. Thank you
Reply
Raphael
Aug 29, 2018 at 6:42 pm
Don’t work for me. I’m using Google Cloud and Cloudflare and when i try to send a test email give me a error:
Reply
Hi Raphael,
Reply
My client use g suite for email, I have created WordPress page website with contact form 7 plugin. I have analyzed
contact form was not sending email from website to Gmail.
Therefore, I have used ‘WP Mail SMTP’ plugin and create gmail API, Now email is working.
But I am facing one issue, when submit contact us form email receive in gmail but all email recived from title is ‘me’.
Reply
This could happen if you are sending and receiving email on the same address.
For example, if you are using [email protected] in WP Mail SMTP and sending contact form messages
to [email protected] then Gmail would show sender name as ‘me’.
Reply
jood
May 22, 2018 at 1:24 pm
i think the key is create a same name account in bluehost within email , so as to trick host , the problem is the email
will be taken as spam .
Reply
raja
May 6, 2018 at 4:06 am
hi.. i have tried to send mail using wp-mail-smtp on wordpress BY gmail as per tutorial..
Not Acceptable!
An appropriate representation of the requested resource could not be found on this server. This error was generated
by Mod_Security.
—————————–
i have contacted hosting hostgator support.. Mod_security settings cant be whitelisted, as it may will leave the
website vulnerable.
Reply
Angela Andrieux
Apr 23, 2018 at 3:13 pm
Thank you for the thorough instructions! This site has saved me so many times. I really appreciate the great content!
Reply
Sushant
Apr 8, 2018 at 5:36 am
Reply
mostafa
Feb 22, 2018 at 8:49 am
thanks a lot for this tutorial . i have this problem for an week and the issue has solved with this tutorial.
Reply
Leonardo Assennato
Feb 20, 2018 at 9:08 pm
Hello,
I setup an email address to send the emails and it worked.
But I need to change the email account.
I already unnistalled and re-install the plugin but all the data are stored.
Reply
Linda
Feb 10, 2018 at 10:42 am
Reply
Pankaj Chauhan
Feb 7, 2018 at 3:20 pm
Reply
Imrana
Nov 20, 2017 at 10:19 am
Reply
Ahmad fatah
Oct 31, 2017 at 10:55 pm
Reply
Kevin
Aug 5, 2017 at 7:30 am
I just went through this and got the following message after trying to send a test email:
Reply
Pawan Negi
Jul 8, 2017 at 2:40 am
Hi please help me when i click on grant permission button it show me that error.
Error: invalid_scope
You don’t have permission to access some scopes. Your project is trying to access scopes that need to go through
the verification process. {invalid = [https://mail.google.com/]} If you need to use one of these scopes, submit a
verification request.
Learn more
Request Details
client_id=940707600009-5f3lstctsc081s72c27h4hhmf5212a7p.apps.googleusercontent.com
Reply
Amanda
Jun 1, 2017 at 1:04 pm
I got . . .
I can’t seem to get this fixed no matter what solve I try. There doesn’t appear to be a contact form in our future
Google Search didn’t help with this error code. I can’t imagine that I’m the first one to get it . . .
Reply
Laura Hart
May 25, 2017 at 7:25 pm
I loved how helpful this was, unfortunately I still can’t make the “grant access” button appear! Any idea why that
would happen? Googling isn’t working.
Thank you!
Reply
David
May 21, 2017 at 8:36 pm
Hi, I used this tutorial last year to install and configure the Gmail SMTP plugin. Until very recently, the Gmail SMTP
plugin in conjunction with my website’s contact form worked perfectly. But I tested my website’s contact form today,
and I got the following fatal-error message:
Fatal error: Uncaught exception ‘Google_Auth_Exception’ with message ‘Error refreshing the OAuth2 token, message:
‘{ “error” : “invalid_grant” }”
I don’t have a clue what that means. I get the same fatal-error message when I use the plugin to send a test message
at Gmail SMTP plugin>Settings>Test email.
I haven’t changed any of the plugin settings since I first installed it a year ago, and I haven’t done anything new with
my Google Console account either. I’m using the most recent version of the Gmail SMTP plugin, and also the newest
version of WordPress.
Thanks!
Reply
Hey David,
It seems like your Oauth2 token has expired. Try following the tutorial again from the beginning to set it up
again.
Reply
Ehsan
May 11, 2017 at 5:16 am
Thank U very much – one of my problem was this “my emails goes to spam folder”
with this service(Method 1) Now It’s great – of course after 14 days you must pay for that but still it’s prefect
I have question;
Can I send 100 Emails like newsletter for my customer is it OK for Google!?
I afraid my Emails after it goes to spam folder again
Reply
Sharon
Apr 27, 2017 at 4:55 pm
I did everything as described, but the contact form on my website still does not work.
Reply
Adondriel
Apr 25, 2017 at 4:37 pm
Hey, add a thing at the end for the troubleshooting thing: “Check with your website host and verify that they do not
block outgoing requests by default.” I know 1. GoDaddy does this, and won’t let you unblock. and 2. Namecheap
also blocks by default but you just gotta contact support, give em your info and ask em to unblock port 587 and
boom, it’ll all work again.
Reply
Lucas
Apr 5, 2017 at 10:00 am
Tks!
Reply
adam
Mar 5, 2017 at 8:09 am
i keep getting a Error: redirect_uri_mismatch when i press ‘grant permission’. It’s driving me nuts as I can’t work out
what is wrong? Everything seems to match.
Adam
Reply
Grzegorz
Apr 5, 2017 at 6:15 am
Reply
Macky
Feb 12, 2017 at 12:19 pm
I’m a complete WordPress beginner.The step-by step instructions are very easy to follow. Now my emails are working
perfectly!! Plus I also learnt how to insert headers & footers with ease.
Reply
Hi Macky,
We are glad you found the video helpful. You may also want to subscribe to our YouTube Channel for
WordPress video tutorials.
Reply
Fabio
Jan 8, 2017 at 9:47 pm
Reply
Maggie Z
Jan 6, 2017 at 11:33 am
A follow-up question – because of the login conflict issue, I was also considering using WP Mail SMTP. However,
many users on the support forum for that plugin express concern that the password for the email account is visible
on the admin page in plain text.
I have a firewall set up that prevents non-admins from getting in to the back end, so is there any real security
concern regarding the password showing in plain text? Any advice much appreciated!!!
Reply
Maggie Z
Jan 15, 2017 at 11:13 am
After troubleshooting quite a bit, I finally relented and went with WP Mail SMTP, which requires the “allow less
secure apps” solution – a tech support person at G Suite told me that it was safe, and it seems like the only
way to go for my particular setup. Appears to be working now. Thanks for the incredibly clear instructions!!! I
am now a firm fan of this site.
Reply
Maggie Zellner
Jan 6, 2017 at 11:29 am
The video is fantastic, and the plugin installed perfectly. Unfortunately I didn’t realize until after I went through the
whole process (because I didn’t read the documentation on the plugin carefully), the Gmail SMTP plugin eliminates
the need for users to log in, and therefore it interfered with the login process that we have instituted for paid
members on our website (which we manage through a plugin called PaidMembershipsPro).
Is there any way to disable that aspect of this plugin, so I can send all email via our Gmail account, but can still have
users log in and out?
Reply
Eric
Jan 5, 2017 at 6:37 pm
Great article! However, I am unclear on something when using WordPress for sending newsletters. What is the
difference between those mass emailing service providers (mailgun & Sendgrid) and using Google Apps for work
SMTP?
Can’t we use Google Apps for work to send newsletters just as well?
Reply
with Google Apps for Work, you can only send an email to 500 recipients max (for paid business accounts).
You cannot use it for newsletters.
Reply
Eric
Jan 6, 2017 at 12:28 pm
Thanks so much for your response! With Google Apps for Work only limiting to 500 recipients, then I suppose
it would work if we sent it to 500 or less people.
My next question, is it max to send all at one time or per day? If we throttle it to only send out a few per
minute, do you know if it would allow it to send thousands within a few hours?
Reply
Heather
Jan 1, 2017 at 6:32 am
Reply
zim ejin
Nov 21, 2016 at 8:21 am
Hi, this was very informative thank you for posting. however i have a website hosted on aws ec2, and route53 for
dns. i tried the secure configuration. it didn’t work. Is there a special configuration for self hosted websites on aws
ec2/route53. btw : i don’t have a cpanel installed.
Reply
« 1 2
Leave A Reply
Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our
comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's
have a personal and meaningful conversation.
Email Address
Save my name, email, and website in this browser for the next time I comment.
Notify me of followup comments via e-mail. You can also subscribe without commenting.
Don't subscribe
Submit Comment
Smash Balloon
Add Custom Social Media Feeds in WordPress.
Learn More
The Ultimate
WordPress Toolkit
Get FREE access to our toolkit – a collection of WordPress related
products and resources that every professional should have!
Download Now
Starting a WordPress
Blog SEO
WordPress WordPress
Performance Errors
WordPress Building an
Security Online Store
Search WPBeginner…
Imagely Coupon
Get 20% OFF on Imagely WordPress photography themes and plugins.
FEATURED IN
Copyright © 2009 - 2022 WPBeginner LLC. All Rights Reserved. WPBeginner® is a registered trademark.