> ## Content Index
> Fetch the complete content index at: https://snubmonkey.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# How to Set up Gmail SMTP Server on  Ghost CMS.
- URL: https://snubmonkey.com/how-to-set-up-gmail-smtp-server-for-ghost/
- Published: 2023-10-19T13:00:31.000Z
- Updated: 2025-04-16T22:31:12.000Z
- Description: Sending transactional emails from a self-hosted Ghost instance requires you to configure the mail manually. Transactional emails refer to emails containing password resets, member invitations, signup and login links.
- Author: yannick Coffi
- Tags: ghost cms, how to 🪄, linux 🐧, self-hosting 🪲

If you hold a Gmail account, you can use the *Gmail SMTP* server for free to send up to 500 emails per day (at the time of this writing).   
That's more than enough for most Ghost publications.

##   
**Generate** an App Password for Ghost

  
Log in to your Gmail or Workspace account, then open [https://myaccount.google.com](https://myaccount.google.com/?ref=snubmonkey.com) and navigate to  
*Security* \> *Signing in to Google* \> *App passwords*.  
Click *Select app*, choose "*Other*", and provide a name (e.g. Ghost SMTP)  
Click *Generate*, then copy down the password exactly as written and keep it handy.

⚠️ *You will only have one chance to write down the password.* 
*If you miss this step or made a mistake, then delete the password and start over*.

## Set up SMTP Server for Ghost

### **Configure** Ghost email settings  
  
  
Ghost uses *Nodemailer* to send emails, and the configuration for *Nodemailer* can be found in the Ghost *config.production.json* file.

Navigate into your installation directory

`cd /var/www/your_site_name`

##   
Edit Ghost config.

  
The ghost configuration file may contain a default mail block. 

```
$ sudo nano config.production.json
```

Comment out or remove the default configuration if it exists, and replace it with the following config.

```
"mail": {
"from": "your_email_address",
"transport": "SMTP",
"options": {
"host": "smtp.gmail.com",
"port": 587,
"auth": {
"user": "your_email_address",
"pass": "your_app_password"}
}
},
```

Save your configuration file and run `ghost restart` to apply the updated configuration.   
  
After Ghost has restarted, open a new *incognito* window and point your browser to *yourdomain.com/ghost*.

Voi·la!