Stepthrough Start free

n8n Gmail Node Examples: Send, Draft, Wait for Approval

Quick answer

The n8n Gmail node's main actions are Send a message, Create a draft and Send message and wait for response. Use Create a draft while you're still checking the wording, Send a message once you trust it, and Send and wait when a person has to approve something before the workflow continues. Every field takes an expression, so each email goes to its own person with its own details. The free n8n weekly client status email lesson saves one Gmail draft per client.

Last updated

Take the free module →Module 8 of the free n8n Jump Start course, about 14 minutes. No account needed.

n8nGmailExamples

Which Gmail action should I pick?

ActionWhat happensLesson
Send a messageThe email goes out right awayDaily Job Alerts, Speed-to-Lead
Create a draftA draft waits in Gmail Drafts; nothing is sentClient status email
Send message and wait for responseSends, then pauses the workflow until the person answersInvoice approval
Reply to a messageReplies in the same threadEmail responders
Add label / Mark as readOrganizes the inboxTriage workflows

Example 1: one email per sheet row

Daily Job Alerts sends each tech their job. To is {{ $json["Tech Email"] }} (brackets because the column name has a space), the subject is {{ $json.Time }} job: {{ $json.Customer }}, and the message lists Job, Address, Time and Customer from the row. Email Type is changed from HTML to Text because the message is plain lines. Six rows in, a Filter drops the unassigned job, and Gmail runs five times: five emails.

Example 2: an AI-written draft for each client

In the client status lesson, Create a draft gets:

FieldValue
SubjectYour weekly update: {{ $('Get row(s) in sheet').item.json.Project }}
Message{{ $json.output[0].content[0].text }} (the AI's email)
To Email (under Options){{ $('Get row(s) in sheet').item.json.Email }}

A draft needs somebody to send it to, which is why To Email is added under Add option. Execute step makes 5 items, each labelled DRAFT. The $('Get row(s) in sheet') part reaches back past the AI node to the sheet row; see n8n Reference a Previous Node.

Example 3: an instant reply to a web lead

The speed-to-lead workflow replies within seconds. To is {{ $('Webhook').item.json.body.email }}, Subject is {{ $json.output.subject }} and Message is {{ $json.output.reply }}, both written by the Information Extractor. Email Type stays HTML, which is why the prompt asks for the reply as HTML paragraphs.

Example 4: wait for the owner's approval

In the invoice lesson, invoices over $1,000 go down the If node's true branch to Send message and wait for response. To is the owner's email, the subject is Approve invoice {{ $('Information Extractor').item.json.output.invoice_number }} from {{ $('Information Extractor').item.json.output.vendor }}?, and Response Type is Approval. The workflow pauses until the owner clicks a button in the email. n8n Send and Wait for Approval covers the options.

Example 5: turn off "Sent automatically with n8n"

By default n8n adds an attribution line to the bottom of emails. Click Add option, choose Append n8n Attribution and click the toggle to turn it off. Every send example in the lessons does this, because a customer shouldn't see it.

Try it free, step by step

n8n: Weekly Client Status Emails from a Google Sheet, Written by AI. Build an n8n workflow that wakes up every Monday, reads your client tracker in Google Sheets, has AI write a friendly update for each client and saves it as a Gmail draft. You do every step yourself in a practice copy of n8n, it checks your work as you go, and “Do it for me” finishes any step you get stuck on. Free, and nothing touches your real accounts.

Start the free lesson

Or read the full step-by-step guide

Common Gmail node mistakes

  • Fields left in Fixed mode. {{ }} arrives in the email as text. Hover and click Expression.
  • HTML email with plain line breaks. It shows as one paragraph. Use Text, or write <p> tags.
  • Sending before you trust it. Start with drafts; switch to Send a message after a week of good drafts.
  • Wrong Gmail account. The credential decides who the email is from.

Key takeaways

  • Create a draft while testing, Send a message once the wording is trusted.
  • Send message and wait for response pauses the workflow for a human decision.
  • Map To from the data so each item emails its own person.
  • Turn off Append n8n Attribution on customer-facing emails.

Frequently asked questions

How do I send an email from n8n with Gmail?

Add Gmail, choose Send a message, pick your Gmail credential, and fill To, Subject and Message, using expressions for anything that changes per item.

Can n8n create Gmail drafts instead of sending?

Yes. Choose Create a draft. Add To Email under Options so the draft has a recipient.

How do I remove the n8n footer from emails?

Add the option Append n8n Attribution and turn it off.

Is connecting Gmail to n8n safe?

Read Is It Safe to Connect Gmail to n8n?. The lessons are in the free n8n Jump Start course.

Free lessons in this post

Plain-English definitions, each with an example from a free lesson.

The full AI glossary

All free prompt templates

Visual guides

The same ideas as quick visual guides: swipe through the slides, or read each one as text.

All visual guides

Keep reading

All blog posts · All free tutorials