See llms.txt for all machine-readable content.

Back to Templates

Triage your Gmail inbox and log high-priority emails to Google Sheets

Quick overview

I packed three importable workflows for small business admin: Gmail triage into a Google Sheet, a follow-up for failed Stripe payments, and one follow-up for each new lead. They run on keyword rules, so there are no AI credits to buy.

How it works

  1. Workflow 1 checks Gmail every 5 minutes for new unread mail, skipping your own messages and the Promotions and Social tabs.
  2. Plain keyword rules flag bulk mail, urgency, VIP senders, the topic (Money, Customer or Admin), whether the email needs a reply and any deadline phrase.
  3. Every email is logged to the Inbox tab. Urgent and VIP mail goes into one alert email per run, at most once per quiet window (60 minutes by default), with a Gmail link to each message.
  4. Workflow 2 listens for Stripe's invoice.payment_failed and invoice.paid events, keeps one row per invoice in the Invoices tab, and emails the customer on the failed attempts you choose (1 and 3 by default), once per attempt.
  5. Workflow 3 takes leads from a form webhook into the Leads tab, thanks each new lead once and marks repeats. A daily 09:00 run sends one follow-up to leads still marked New after 2 to 10 days.
  6. Workflows 2 and 3 start in preview mode, so customer and lead emails come to your own address until you set customer_emails to send.

Setup

  1. Import 1-gmail-triage.json, 2-stripe-followup.json and 3-lead-followup.json.
  2. Create one Google Sheet with three tabs and these headers in row 1, spelled exactly. Inbox: received from subject category topic priority vip needs_reply deadline preview message_id link status. Invoices: invoice_id invoice_number customer_name customer_email amount currency status attempts last_event last_event_at invoice_link last_event_id last_emailed_attempt. Leads: created name email message source status followed_up.
  3. In each workflow, replace every placeholder: the sheet URL in each Google Sheets node, and your email address and name in Your Settings. Each workflow refuses to run until you do.
  4. Connect Gmail and Google Sheets credentials in all three workflows, and a Stripe API credential in workflow 2, using a restricted key with read access to invoices or your test-mode key.
  5. Test workflow 2 in Stripe test mode, put workflow 3's production URL in your form as a POST with name, email and message, and run each workflow once by hand before you activate it.

Requirements

  • n8n 2.19.0 or later for workflow 1, because its Gmail Trigger needs that version. Workflow 3 needs 1.102.0 or later and workflow 2 needs 1.59.0 or later.
  • A Google account with Gmail and Google Sheets, and a Stripe account for workflow 2. No AI account is needed.

Customization

  • I keep the VIP senders, word lists, urgency bar, alert window and bulk handling in workflow 1's Your Settings. Workflow 2 sets which failed attempts get an email, and workflow 3 sets the repeat window and the follow-up days. The customer wording lives in the Code nodes the README names.

Additional info

Honest limits: the triage runs on keyword rules with no AI, each lead gets one follow-up only, and Google Sheets is the log. Last tested 31 Oct 2026. I ran all three workflows on n8n 2.23.4 with real Google Sheets and Gmail. The inbox and the Stripe event were test data, so a live inbox and a live Stripe webhook were not part of it. Try Stripe test mode first.

Licence: personal and commercial use on your own instances and for your own clients. Do not resell or redistribute the files themselves.

Support: email [email protected] with your order email, your n8n version and the error text. I reply within 2 working days.

n8n is a trademark of n8n GmbH; these templates are not endorsed by n8n.