Connect Gmail or Google WorkSpace Emails with FluentSMTP

You can see this video or follow steps by steps instructions bellow.

Having trouble sending emails from WordPress using your Gmail or Google Workspace account? We’re here to help! This is a step-by-step tutorial on setting up Gmail or Google Workspace SMTP with WordPress.

Configuring Fluent SMTP with Gmail or Google WorkSpace Emails #

Hover over settings and go to Fluent SMTP Dashboard. If this is the first time you are using Fluent SMTP you will see the list of available Mailer, go ahead and select Google WorkSpace.

Configuring Fluent SMTP for Gmail

If you already have one or multiple SMTP driver setups and now you want to add MailGun also then go to the Settings Tab of Fluent SMTP and select Add New Connection. Now again all the available mailers will appear from where you need to select Google WorkSpace.

Configuring Fluent SMTP for MailGun

After selecting Google WorkSpace as the mailer, a very simple settings window will open as shown on the screenshot below.

Fluent SMTP Google Workspace

In this part, you need to setup “From Email“, “From Name“, “Application Client ID” and “Application Client Secret” and click the save button.

From Email: The “From Email” should be the email you verified with Google Workspace. Check the box to set the return path to match the from. The Return Path indicates where non-delivery receipts – or bounce messages – are to be sent. If unchecked, bounce messages may be lost. With this enabled,
you’ll be emailed using “From Email” if any messages bounce as a result of issues with the recipient’s email.

From Name: From name can be anything you want. The best practice is to use the combination of your name and company name. For example, I would choose something like “Jewel From WPManageNinja” where Jewel is the first name of the CEO and WPManageNinja is the company. The Application Client ID and Application Client Secret will be provided by Google Workspace.

How to get API Key and Secret: #

In this part, you have to go through multiple process, these processes are as below:

Create a new API credential project in Google Cloud Platform: #

Go to Google Cloud Platform by clicking on this link – From the dashboard click on the Select Project.

Select Project - Google Cloud Platform with Fluent SMTP

A popup will appear, click on the NEW PROJECT button.

Select New Project - Google Cloud Platform with Fluent SMTP

Give a Project name and hit on the CREATE button.


A notification will appear which will confirm that a project has been created.

A Notification Shown in Google Cloud Platform with Fluent SMTP

Now, if you have existing projects on your Google Cloud Platform, you need to select your newly created projects as default. To do that click on the dropdown as shown in the screenshot.

Click the Project Again - Google Cloud Platform with Fluent SMTP

Select the newly created project (For my case its FluentSMTP Connector), you can see a checkmark on the left side in the selected projects name.

Select The Project - Google Cloud Platform with Fluent SMTP

Enable Gmail API: #

Click on the Library from the left sidebar.

Click on The Library

On this page, you have to search for Gmail.

Search for Google

Click on the Gmail API.

Click Gmail

Now click on Enable button. It will take some time and will redirect you to Gmail API dashboard .

Enable Gmail

From the Gmail API dashboard, click on the Hamburger icon.

Click on the Hamburger from the Gmail API dashboard

Select APIs & Services -> Dashboard. It will redirect to Google Cloud Platform dashboard.

Go Back to Dashboard

Set Up OAuth consent: #

From the Hamburger Menu, click on the OAuth consent screen. You will get two radio item.

  1. If you are a Google Workspace user, select Internal so that it will bind with your workspace domain or email.
  2. For all other cases or every cases, you can choose External.
OAuth Consent

On this screen, you need to provide various information. In the App information section, Give an App name (It can be anything), select your email in the User support email section. You can add App logo too, but its not required.

App Information

In the App domain section, you can provide your homepage, privacy, terms & services links (Not required). But you must use your website url (without http:// or https://)

App Domain

In the Developer contact information, you can use any email so that google can notify you about any changes to your project.

Developer Contact and Save

Click Save and Continue button.

In the Scope section, you don’t have to add any details, just click Save and Continue button.


This is a very important steps, we need to add the email that we will use as a sender. To do that, click on the ADD USERS button.

Add User

On the right popup, type your email address and click on the ADD button.

Add User Popup

You can always add/edit emails later from this screen. After adding the email as a user click on the Save and Continue button.

Test users - Save and Continue

Create OAuth client ID credentials #

Now go to Credentials fro the hamburger menu. Click on the Create Credentials button and select OAuth client ID.

Credential Settings

Select Desktop app as the Application type.

Select Desktop App

Give a name, you can type anything for example: FluentSMTP Token. Now hit the CREATE button.

Give a Name and Click on CREATE

You will be given a Client ID and a Client Secret on a popup window. Simply copy them by clicking the copy icon (at the right side).

Copy Client ID and Secret

Now add both Client ID and Client Secret in the respected field in Google Workspace connection setting as bellow. Click on the Authenticate button and it will redirect you to google.

Authenticate and get token

here you need to allow some access:

  1. Select the email.
  2. As your newly created app is a local app, google can’t verify it. You can go ahead and click Continue.
  3. Click Allow.
  4. Confirm your choice by clicking Allow.
  5. Copy the code by clicking on the copy button at the right side.
Copy Access Token

Now paste the code (that you just copied) in the Access Token box.

Save Connection Settings

You should see its saved as bellow.


Powered by BetterDocs


  1. Easy to set up. I have the Legacy G Suite (free account) for one of my businesses. I can’t find the daily email sending limit this kind of account would have. Or is that different than using this Google API service. Does anyone know? Thanks. 🙂

  2. Hello, can you help me with this error:

    Fatal error: Uncaught TypeError: implode(): Argument #2 ($array) must be of type ?array, string given in /home/forge/ Stack trace: #0 /home/forge/ implode() #1 /home/forge/ Google_Service_Resource->createRequestUri() #2 /home/forge/ Google_Service_Resource->call() #3 /home/forge/ Google_Service_Gmail_Resource_UsersMessages->send() #4 /home/forge/ FluentMail\App\Services\Mailer\Providers\Gmail\Handler->sendViaApi() #5 /home/forge/ FluentMail\App\Services\Mailer\Providers\Gmail\Handler->postSend() #6 /home/forge/ FluentMail\App\Services\Mailer\Providers\Gmail\Handler->send() #7 /home/forge/ FluentMail\App\Services\Mailer\FluentPHPMailer->send() #8 /home/forge/ wp_mail() #9 /home/forge/ send_confirmation_on_profile_email() #10 /home/forge/ WP_Hook->apply_filters() #11 /home/forge/ WP_Hook->do_action() #12 /home/forge/ do_action() #13 /home/forge/ require_once(‘…’) #14 {main} thrown in /home/forge/ on line 291
    Възникна фатална грешка на вашия уебсайт. Моля, преверете пощата на администратора на сайта за инструкции.

    Научете повече за отстраняването на грешки в WordPress.

    1. Looks like you’re trying to set up FluentSMTP with a different domain. for that, you have to follow the above process again.

  3. Works great but after a few days it can’t send emails anymore,. So, I have to authenticate again with google and get another access token.
    Is it possible to get a refresh token? Is there a detailed tutorial for it?

    Thank you

    1. Hi Dave, you can’t get a refresh token. Please do the process again and allow untrusted applications. You won’t have to go through this again.

Leave a Reply

Your email address will not be published. Required fields are marked *