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

> Five n8n Gmail node setups from real workflows: send a message, create a draft, send and wait for approval, email type and the n8n footer.

Source: https://learn.ynteractive.com/content/blog/n8n-gmail-node-examples · Updated 2026-10-20 · Free from Stepthrough (https://learn.ynteractive.com)

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](https://learn.ynteractive.com/content/glossary/expression), so each email goes to its own person with its own details. The free [n8n weekly client status email](https://learn.ynteractive.com/content/weekly-client-status-email-google-sheets-ai-n8n) lesson saves one [Gmail draft](https://learn.ynteractive.com/content/glossary/gmail-draft) per client.

Last updated October 20, 2026

[Take the free module →](https://learn.ynteractive.com/courses/n8n-jump-start/8)Module 8 of the free [n8n Jump Start](https://learn.ynteractive.com/courses/n8n-jump-start) course, about 14 minutes. No account needed.

By [Robert Breen](https://learn.ynteractive.com/content/about) · Published October 20, 2026 · Updated October 20, 2026 · 4 min read

n8n · Gmail · Examples

## Which Gmail action should I pick?

| Action | What happens | Lesson |
| --- | --- | --- |
| Send a message | The email goes out right away | [Daily Job Alerts](https://learn.ynteractive.com/content/n8n-daily-job-alerts-google-sheets-gmail), [Speed-to-Lead](https://learn.ynteractive.com/content/speed-to-lead-agent-n8n) |
| Create a draft | A draft waits in Gmail Drafts; nothing is sent | [Client status email](https://learn.ynteractive.com/content/weekly-client-status-email-google-sheets-ai-n8n) |
| Send message and wait for response | Sends, then pauses the workflow until the person answers | [Invoice approval](https://learn.ynteractive.com/content/invoice-inbox-to-google-sheets-approval-n8n) |
| Reply to a message | Replies in the same thread | Email responders |
| Add label / Mark as read | Organizes the inbox | [Triage](https://learn.ynteractive.com/content/glossary/ai-triage) 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:

| Field | Value |
| --- | --- |
| Subject | `Your 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](https://learn.ynteractive.com/content/glossary/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](https://learn.ynteractive.com/content/blog/n8n-reference-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](https://learn.ynteractive.com/content/blog/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](https://learn.ynteractive.com/modules/n8n-client-status-email)

[Or read the full step-by-step guide](https://learn.ynteractive.com/content/weekly-client-status-email-google-sheets-ai-n8n)

## 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?](https://learn.ynteractive.com/content/blog/is-it-safe-to-connect-gmail-to-n8n). The lessons are in the free [n8n Jump Start](https://learn.ynteractive.com/courses/n8n-jump-start) course.

## Free lessons in this post

- [n8n: Weekly Client Status Emails from a Google Sheet, Written by AI](https://learn.ynteractive.com/content/weekly-client-status-email-google-sheets-ai-n8n): 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…
- [Daily Job Alerts: Email Each Tech Their Jobs from Google Sheets with n8n](https://learn.ynteractive.com/content/n8n-daily-job-alerts-google-sheets-gmail): Every morning at 7, n8n reads a plumbing company's jobs sheet, skips anything not assigned yet, and emails each job to the tech it's assigned to — customer, address…
- [Speed-to-Lead Agent: Answer Every Web Lead in 60 Seconds](https://learn.ynteractive.com/content/speed-to-lead-agent-n8n): Build an n8n workflow that scores every website lead with AI, emails a personal first reply within seconds, and pings Slack only when a lead is hot.
- [Invoices from Your Inbox to Google Sheets, with Approval](https://learn.ynteractive.com/content/invoice-inbox-to-google-sheets-approval-n8n): Build an n8n workflow that reads each vendor invoice PDF from Gmail with AI, logs the vendor, invoice number and total in Google Sheets, and emails the owner an Approve…

## Watch it in a free lesson: Speed-to-Lead Agent: Answer Every Web Lead in 60 Seconds

### Speed-to-Lead Agent: Answer Every Web Lead in 60 Seconds: video walkthrough

Full walkthrough · 3:28 · with captions

Build an n8n workflow that scores every website lead with AI, emails a personal first reply within seconds, and pings Slack only when a lead is hot. The whole lesson narrated step by step, recorded in Stepthrough’s simulated practice environment.

[Watch it with chapters and the full transcript](https://learn.ynteractive.com/content/speed-to-lead-agent-n8n#watch)

From the free lesson [Speed-to-Lead Agent: Answer Every Web Lead in 60 Seconds](https://learn.ynteractive.com/content/speed-to-lead-agent-n8n)

## Related terms

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

[Gmail draft](https://learn.ynteractive.com/content/glossary/gmail-draft) · [Triage](https://learn.ynteractive.com/content/glossary/ai-triage) · [Execute step](https://learn.ynteractive.com/content/glossary/execute-step) · [AI data entry](https://learn.ynteractive.com/content/glossary/ai-data-entry) · [AP aging report](https://learn.ynteractive.com/content/glossary/ap-aging-report) · [Apollo.io](https://learn.ynteractive.com/content/glossary/apollo-io) · [Approval threshold](https://learn.ynteractive.com/content/glossary/approval-threshold) · [Automation](https://learn.ynteractive.com/content/glossary/automation)

[The full AI glossary](https://learn.ynteractive.com/content/glossary)

## Related prompts

- [Appointment reminder text prompt and examples](https://learn.ynteractive.com/content/prompts/appointment-reminder-text-prompt): Appointment reminder text examples and a ChatGPT prompt that writes day-before reminders: time window, who is coming, one prep…
- [Automation time savings estimate prompt](https://learn.ynteractive.com/content/prompts/automation-time-savings-estimate-prompt): Estimate what one automation saves from your own numbers only: minutes before and after, setup and upkeep, costs you look up…
- [Invoice approval request email prompt](https://learn.ynteractive.com/content/prompts/invoice-approval-request-email-prompt): A copy-ready prompt that writes a clear approval request for a large invoice, so the owner can say yes or no in one reply with…
- [Rental property repair coordination prompt](https://learn.ynteractive.com/content/prompts/rental-property-job-coordination-prompt): Coordinate a repair at a rental: a clear email to the owner or property manager about approval and billing, and a short access…

[All free prompt templates](https://learn.ynteractive.com/content/prompts)

## Visual guides

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

- [Email each tech their jobs at 7am with n8n](https://learn.ynteractive.com/content/visual/job-alerts-n8n): Every morning someone at Rapid Flow Plumbing copies the day's jobs into emails, one tech at a time. Hand it to n8n.
- [Mistake to Avoid: Scheduling Before Setting the Timezone](https://learn.ynteractive.com/content/visual/mistake-scheduling-before-the-timezone): A visual tip for n8n schedules: set the workflow timezone before the schedule, so 7am means 7am where your business is.
- [Mistake to Avoid: Sending Every Job Email to One Address](https://learn.ynteractive.com/content/visual/mistake-one-address-for-every-job): A visual tip for n8n and Gmail: make the To field an expression for the Tech Email column, written in square brackets because of the space.

[All visual guides](https://learn.ynteractive.com/content/visual)

## Keep reading

- [n8n Data Mapping Examples: 20 Expressions to Copy](https://learn.ynteractive.com/content/blog/n8n-data-mapping-examples): Twenty n8n expressions from real workflows: sheet columns, names with spaces, webhook body fields, AI output paths, earlier nodes, dates and defaults.
- [n8n $('Node').item.json: Use Data from an Earlier Node](https://learn.ynteractive.com/content/blog/n8n-reference-previous-node): How $('Node name').item.json reaches back to an earlier node in n8n, when $json isn't enough, and examples from Gmail, If and Slack steps.
- [n8n Filter Node Examples: Skip Rows You Don't Want](https://learn.ynteractive.com/content/blog/n8n-filter-node-examples): How the n8n Filter node keeps only matching items: is not empty, equals, contains, number and date conditions, and when to use If instead.

[All blog posts](https://learn.ynteractive.com/content/blog) · [All free tutorials](https://learn.ynteractive.com/content)
