Automate Personalized Email Campaigns with Google Docs, Sheets, and SMTP
# Emailing Using Google Sheet, Google Docs, and SMTP Automate personalized email campaigns using a Google Sheets contact list, a Google Docs template, and SMTP delivery. ## How It Works - **Google Docs** is used as the email template with variables: `{{firstname}}`, `{{lastname}}`, `{{company}}`, `{{email}}`. - **Google Sheet** contains your list of recipients (one per row). - For each contact, the workflow merges personal data into the Google Docs template. - Email is sent to each recipient via SMTP (batch size: 1). Use the `Wait` node to respect provider quotas. - After sending, the workflow updates the process column of the Google Sheet with the date/time. ## How to Use 1. **Copy Templates:** - [Google Docs Template](https://docs.google.com/document/d/1sR1Mjee0heur6CgEV_ssYzOUbFNaDnyEnPSt1CFEMWI/edit?usp=sharing) - [Google Sheet Template](https://docs.google.com/spreadsheets/d/1mFKp3wmbV9qp2tpGGsN72zdiC32y8H1nhjdgP885y-U/edit?usp=sharing) - Find each document's ID (the text after `/d/` and before `/edit` in the URL). 2. **Configure Workflow:** - Enter your Google Docs and Google Sheets IDs in the `settings` node. - Set your email subject in the appropriate parameter. 3. **Set Up Credentials:** - Connect your Google account. - Configure the SMTP node with your mail server details. 4. **Update Data:** - Edit the Google Docs template with your message and variables. - Prepare your Google Sheet with these columns: **email**, **firstname**, **lastname**, **company**. 5. **Deploy and Test:** - Connect all nodes. - Test with a small contact batch. - Troubleshoot any node errors (indicated in red in n8n). ## Requirements - **Google Credentials & Permissions**: For Sheets and Docs access. - **SMTP Server**: For email delivery (adjust Wait node for rate limits). - **n8n Version**: Tested on 1.105.2 (Ubuntu). ## Need Help? - Comment on this [post](https://www.linkedin.com/posts/n8n-about_n8n-emailing-smtp-activity-7358928869015310336-G_9n/) or contact me on [LinkedIn](https://www.linkedin.com/in/stephaneheckel/) - Ask in the [n8n Community Forum](https://community.n8n.io/)! ## See Also After running your email campaign, some messages may fail to deliver. This [workflow](https://n8n.io/workflows/7251-flag-bounced-emails-in-google-sheets-from-gmail-delivery-error-messages/) scans your email inbox for delivery errors (e.g., bounced messages), flags problematic email addresses in the Google Sheet, and ensures future campaigns skip them.
Emailing Using Google Sheet, Google Docs, and SMTP
Automate personalized email campaigns using a Google Sheets contact list, a Google Docs template, and SMTP delivery.
How It Works
- Google Docs is used as the email template with variables:
{{firstname}},{{lastname}},{{company}},{{email}}. - Google Sheet contains your list of recipients (one per row).
- For each contact, the workflow merges personal data into the Google Docs template.
- Email is sent to each recipient via SMTP (batch size: 1). Use the
Waitnode to respect provider quotas. - After sending, the workflow updates the process column of the Google Sheet with the date/time.
How to Use
-
Copy Templates:
- Google Docs Template
- Google Sheet Template
- Find each document's ID (the text after
/d/and before/editin the URL).
-
Configure Workflow:
- Enter your Google Docs and Google Sheets IDs in the
settingsnode. - Set your email subject in the appropriate parameter.
- Enter your Google Docs and Google Sheets IDs in the
-
Set Up Credentials:
- Connect your Google account.
- Configure the SMTP node with your mail server details.
-
Update Data:
- Edit the Google Docs template with your message and variables.
- Prepare your Google Sheet with these columns: email, firstname, lastname, company.
-
Deploy and Test:
- Connect all nodes.
- Test with a small contact batch.
- Troubleshoot any node errors (indicated in red in n8n).
Requirements
- Google Credentials & Permissions: For Sheets and Docs access.
- SMTP Server: For email delivery (adjust Wait node for rate limits).
- n8n Version: Tested on 1.105.2 (Ubuntu).
Need Help?
- Comment on this post or contact me on LinkedIn
- Ask in the n8n Community Forum!
See Also
After running your email campaign, some messages may fail to deliver. This workflow scans your email inbox for delivery errors (e.g., bounced messages), flags problematic email addresses in the Google Sheet, and ensures future campaigns skip them.
New buyers can create an account from the cart to unlock a controlled $10 first-purchase credit on eligible orders of $25+.
Related bundle
Customer Support Automation Suite
8 hand-picked workflows for $39.00.
That is $4.88 each, vs $14.99 for this one alone.
View bundleSecure checkout powered by Stripe
Support
How to import this workflow into n8n
- 1Purchase or download the workflow to get the n8n workflow JSON file.
- 2In your n8n instance, open Workflows and choose "Import from File" (or paste the JSON with Ctrl+V on the canvas).
- 3Open each node marked with a credential warning and connect your own accounts and API keys.
- 4Run the workflow once manually to verify the data flow, then toggle it to Active.
Related Communication workflows
- Automate Outbound Calls with Ultravox AI and Twilio$4.99
- Automate Intelligent Email Classification with AI in Gmail$4.99
- Generate AI videos and carousels with Blotato for Instagram and TikTok$9.99
- Automating WhatsApp Replies Using GoHighLevel with Redis and Anthropic$24.99
- Automate Gmail Email Labeling with AI for Enhanced Organization$14.99
- Automate Email Summarization and Logging with AI and Google Sheets$9.99
Need this deployed? We'll set it up for you.
Our automation experts deploy this workflow in your stack, connect your accounts, and verify it works — or build a custom solution from scratch.