This n8n workflow template, "Email Outreach Automation," is designed to help you set up an automated email outreach system using tools you might already be familiar with: Google Sheets and Google Docs.
At its core, this workflow is a sequence of steps that n8n follows to send personalized emails to a list of contacts. The best part? It's built to be incredibly cost-effective, meaning you won't need to pay for any external API services or AI subscriptions to make it work. This makes it an ideal starting point for anyone new to automation or looking to manage their budget.
Think of this n8n workflow as a digital assistant that handles your email outreach from start to finish. Here's a simplified breakdown of what happens behind the scenes:
Your Contact List (Google Sheet): The workflow starts by reading your contact information (like names, emails, and company details) from a Google Sheet. This is where you'll keep all the people you want to email.
Email Content (Google Docs): Instead of writing each email individually, you'll create email templates in Google Docs. The workflow can then pull the content from these documents and personalize it for each recipient. This means you can use placeholders like {{firstname}}
or {{company}}
in your Google Doc, and the workflow will automatically replace them with the correct information for each person.
Smart Email Sequencing: The workflow is designed to send a series of emails to each contact. It keeps track of which email was sent last to each person in your Google Sheet. This ensures that your contacts receive the emails in the correct order and don't get the same email twice.
Sending Emails (Gmail or SMTP): Once the workflow has the contact's details and the personalized email content, it uses your Gmail account (or any other SMTP service you configure) to send the email. It even includes a
built-in delay to avoid hitting email sending limits.
This workflow is your entry point into efficient and affordable email automation. It's designed to be straightforward for beginners while offering powerful capabilities. Get ready to automate your outreach and see the results!
Sample Google Doc
Sample Google Sheet
Need Help?
Reach me: https://www.linkedin.com/in/gerald-akhidenor-1ab1a45/
Work with me: https://dominixai.com/
My website: https://jobmonkey.dev
My email: [email protected]
This guide will walk you through the process of setting up and running the Email Outreach Automation. This powerful workflow allows you to automate personalized email campaigns using n8n, Google Sheets, and Google Docs, all without incurring any API or AI subscription costs. Follow these steps to get your automated outreach up and running.
Before you begin, ensure you have the following:
An n8n Instance: This can be a local installation, a self-hosted server, or an n8n.cloud account. If you don't have one, you can find installation instructions on the official n8n website [1].
A Google Account: You will need this to create and manage your Google Sheets (for contacts) and Google Docs (for email templates).
A Gmail Account (or SMTP Credentials): This workflow uses Gmail by default for sending emails. If you prefer to use another email service, you will need its SMTP credentials.
Download the Workflow: Ensure you have the EmailOutreachAutomation.json
file downloaded to your computer.
Open n8n: Log in to your n8n instance.
Import: In the n8n dashboard, click on the "Workflows" tab in the left sidebar. Then, click the "New" button (or the +
icon) and select "Import from JSON".
Upload the File: A dialog box will appear. Click "Browse" or drag and drop the EmailOutreachAutomation.json
file into the designated area. Click "Import".
Save the Workflow: Once imported, the workflow will open in the editor. Click the "Save" button (usually located in the top right corner) to save your new workflow.
This workflow uses a Google Sheet as your contact database. You need to create a new Google Sheet and populate it with your contact information. The workflow expects specific column headers to function correctly.
Create a New Google Sheet: Go to Google Sheets (sheets.google.com) and create a new blank spreadsheet.
Name Your Sheet: Give your spreadsheet a descriptive name (e.g., "JobMonkey Email List").
Add Required Columns: In the first row of your sheet, add the following column headers exactly as they appear below (case-sensitive):
firstname
lastname
email
company
last_email_sent
(This column will be updated by the workflow to track the last email sent to each contact. Leave it blank initially.)last_email_date
(This column will be updated by the workflow with the date the last email was sent. Leave it blank initially.)processed
(This column will be updated by the workflow to mark contacts as processed. Leave it blank initially.)Populate with Data: Fill in your contact data under the respective columns. Ensure the email
column contains valid email addresses.
Get Your Google Sheet ID: The Google Sheet ID is part of the URL when you open your spreadsheet. It's the long string of characters between /d/
and /edit
. Copy this ID; you will need it in Step 4.
This workflow sends a sequence of up to 9 emails. You will create a separate Google Doc for each email in your sequence. The workflow uses placeholders in these documents to personalize the emails.
Create New Google Docs: Go to Google Docs (docs.google.com) and create a new blank document for each email you plan to send (e.g., "Email 1 Template", "Email 2 Template", etc.). The workflow is configured for up to 9 emails, but you can use fewer.
Write Your Email Content: Write the content for each email in its respective Google Doc. You can use the following variables (placeholders) which the workflow will automatically replace with data from your Google Sheet:
{{firstname}}
{{lastname}}
{{company}}
{{email}}
/d/
and /edit
. You will need these IDs in Step 4.This is the most crucial step for customizing the workflow. The 'Settings' node holds all the essential IDs and subjects for your campaign.
Open the Workflow: In n8n, open the Email Outreach JobMonkey copy
workflow you imported.
Locate the 'Settings' Node: Find the node named "Settings" (it's usually near the top, connected to the 'Schedule Trigger'). Double-click it to open its configuration.
Update 'googlesheetid':
googlesheetid
.value
with the Google Sheet ID you copied in Step 2.googledocid_1
, googledocid_2
, etc.), replace the value
with the corresponding Google Doc ID you copied in Step 3.emailsubject_X
, update the value
with the subject line you want for that specific email.The workflow uses a 'Send a message' node (Gmail node) to send emails. You need to provide your Gmail credentials or configure an SMTP service.
Locate the 'Send a message' Node: Find the node named "Send a message" (it's a Gmail node) in the workflow. Double-click it.
Add Gmail Account: Under the 'Credentials' section, click "Add new" next to gmailOAuth2
.
Connect to Google: A new window will open, prompting you to connect your Google account. Follow the on-screen instructions to grant n8n access to send emails on your behalf. Select the Gmail account you wish to use for sending.
Save Credentials: Once connected, save the credentials.
Close the Node: Click "Done" or close the node configuration.
If you prefer to use a different email service via SMTP:
Replace the 'Send a message' Node: Delete the existing "Send a message" (Gmail) node.
Add a New SMTP Node: Search for and add an "SMTP" node to your workflow. Connect it in place of the deleted Gmail node.
Configure SMTP Credentials: Double-click the new SMTP node. You will need to provide your SMTP host, port, username, and password. Consult your email provider's documentation for these details.
Map Fields: Ensure the To
, Subject
, and Message
fields in the SMTP node are correctly mapped to the data coming from the previous nodes (e.g., ={{ $(\'Loop Over Items\').item.json.email }}
for the recipient email, ={{ $(\'Settings\').item.json[\'emailsubject_\' + $(\'Determine Email Number\').item.json.emailNumber] }}
for the subject, and ={{ $json.html }}
for the message body).
Close the Node: Click "Done" or close the node configuration.
The 'Schedule Trigger' node determines when your workflow will run automatically. By default, it's set to run at 6 AM, 12 PM, and 6 PM.
Locate the 'Schedule Trigger' Node: Find the node named "Schedule Trigger" (it's the very first node in the workflow). Double-click it.
Adjust Schedule: You can modify the schedule to fit your needs. For example, to run daily at 9 AM, you would set the hour to 9
.
Close the Node: Click "Done" or close the node configuration.
Once all configurations are complete, it's time to activate and test your workflow.
Activate the Workflow: In the top right corner of the n8n editor, toggle the "Active" switch to ON
.
Test Manually (Optional but Recommended): To perform a test run without waiting for the schedule, click the "Execute Workflow" button (usually a play icon) in the top right corner. This will run the workflow once.
Monitor Execution: After execution, check the 'Executions' tab in n8n to see the status of your workflow runs. You can also check your Google Sheet to see if the last_email_sent
and processed
columns have been updated, and check your email outbox to confirm emails were sent.
Email Sending Limits: Be aware of the sending limits of your email provider (e.g., Gmail has a daily sending limit). The workflow includes a 'Wait' node to help space out emails, but adjust it (amount
parameter in the 'Wait' node) if you encounter issues.
Google API Quotas: While this workflow avoids paid API subscriptions, Google services do have free usage quotas. For very high volumes, you might eventually hit these, but for typical outreach, this should not be an issue.
Error Handling: The workflow has basic error handling. If you encounter issues, check the 'Executions' tab in n8n for error messages, which can help you diagnose problems.
Customization: Feel free to explore and customize other nodes in the workflow as you become more familiar with n8n. For example, you can adjust the 'Limits the number of emails per run' node to control how many emails are sent in each execution.
By following these steps, you will have a fully functional, automated email outreach system that is both powerful and cost-effective. Happy automating!