Skip to content
Flowmanic
AI ContentAI-PoweredStructurally Validated

AI Email Reply Drafter

New emails (minus obvious automated senders and receipts/calendar invites) get a short, professional reply drafted by AI and saved directly into your Gmail Drafts folder, with a Slack ping — including a one-line reason why — the moment it's ready. It also checks the thread first, so it never drafts a duplicate if you've already replied or a draft is already sitting there. You stay in full control — nothing is ever sent without you reviewing it first.

Automation flow

How it works

Every new email is checked against a filter for automated senders and automated-looking subjects (no-reply addresses, notifications, mailer-daemon, calendar invites, receipts, order/booking confirmations) so the AI never wastes a draft on something that doesn't need a human reply.

Before drafting, the workflow also re-checks the thread itself: Get Thread pulls the full Gmail thread and Check If Handled looks for two things — a message from you sent *after* the incoming email (a human already replied) or an existing draft on that thread (Gmail drafts show up as thread messages labeled DRAFT). A draft only counts if it actually has content — an empty compose window Gmail auto-saved doesn't block a real AI draft from being created. If either check is true, Already Handled? stops the run right there instead of creating a duplicate draft and a duplicate Slack ping.

This also covers the case where a second email arrives on the same thread before you've reviewed the first draft — the still-unsent draft is what gets detected, so run #2 never creates a second one. But since that new message might change what the pending draft should actually say, Is Stale Draft? checks specifically for that case (an unsent draft already existed, as opposed to a human reply) and sends a separate, lighter Slack ping — Notify Possible Stale Draft — flagging that a newer message came in since that draft was written, so you know to double-check it before sending.

Everything else gets sent to the AI along with your Business Context, and it drafts a short, professional reply plus a one-line reason for why it drafted it. It's only allowed to state prices, dates and policies that appear in that context. When the email asks about something the context doesn't cover, it leaves a [CONFIRM: ...] placeholder rather than guessing. Parse AI Response double-checks the draft text for leftover placeholders itself instead of trusting the model's own flag, so a flagged draft always gets the ⚠️ Slack ping and a filled-in Needs Check column. That draft lands directly in your Gmail Drafts folder — never sent automatically — your team gets a Slack ping with the subject and that reason, and (if you set it up) a row gets appended to a Google Sheet with the thread id, draft id, recipient, subject, and reason — a running record of exactly what the AI has drafted and why.

Services used

GmailAI API (OpenAI-compatible)SlackGoogle Sheets

What you'll need

  • Free [n8n Cloud](https://n8n.io) trial or self-hosted n8n
  • Gmail
  • An AI API key (OpenAI or any OpenAI-compatible provider — Claude, Gemini, or a local model via a compatible proxy)
  • Slack (optional — remove Notify Draft Ready if you don't want a notification)
  • Google Sheets (optional — remove Log to Sheet if you don't want an audit log)

What's included

  • Never sends automatically — draft only, you stay in control
  • Filters out automated/no-reply senders and receipts/invites on its own
  • Skips threads you've already handled — no duplicate drafts or Slack noise
  • Flags a pending draft as possibly stale if a newer message comes in first
  • Optional audit log of every draft (thread, recipient, subject, reason) in Google Sheets
  • Bring your own AI API key — no per-run markup from us
  • Completely free — part of the Starter Pack

Estimate what this could save you

3.6 hours/month

≈ $108/month in your time

A rough estimate based on what you enter above — not a guarantee. Actual time saved depends on your process.

Questions about this template

Free

No account needed — the download link lands in your inbox instantly.

Structurally validated: automatically checked for valid n8n format before every deploy.

Difficulty
Medium
Setup time
~15 min
Integrations
4
Node count
13
Format
.json + guide