Capture website leads in Google Sheets CRM with WhatsApp and Gmail alerts

Go to Workflow
0 views
Built by Gusti Bagus Cahya Utama Gusti Bagus Cahya Utama
Created on October 19, 2026

Description

Quick overview
This workflow receives website form submissions via a webhook, validates and normalizes lead data, stores valid leads in Google Sheets as a simple CRM, and sends instant WhatsApp alerts to your sales team, with retry logic and an error handler that escalates incidents via Gmail (with WhatsApp fallback).

How it works
Receives a POST request from your website form through an n8n webhook endpoint.
Validates required fields, normalizes the lead payload (including international phone formatting), and flags likely bots using a honeypot field.
Returns a success response for spam, a 400 validation error with per-field details for invalid submissions, or a 500 response if validation unexpectedly fails.
Appends valid leads to a Google Sheets “Leads” sheet and retries the write with exponential backoff when Google Sheets errors occur.
Responds to the form with 200 when the lead is saved, or 202 when the CRM write fails after retries while still continuing alerting.
Builds a WhatsApp message, fans out one message per sales recipient, retries failed WhatsApp sends with backoff, and marks the lead as alerted (Alert Status = SENT, Alerted At) back in Google Sheets when delivery succeeds.
If any execution fails or an escalation is raised, sends an incident email via Gmail and falls back to sending an ops WhatsApp alert if the email notification fails.

Setup
Create a Google Sheet with a “Leads” tab and the required headers (Lead ID, Submitted At, Name, Email, Phone, Company, Message, Source, UTM Source, UTM Campaign, Status, Alert Status, Alerted At), then set the spreadsheet ID in both Google Sheets nodes.
Add Google Sheets OAuth credentials, a WhatsApp Business Cloud credential (and set the Phone Number ID), and Gmail OAuth credentials for incident emails.
Update the Config values for sales WhatsApp numbers (international format, no “+”), default country code, CRM URL, and max retry attempts.
Set the alert recipients in Alert Settings (incident email address(es) and an ops WhatsApp number for fallback alerts).
Copy the production webhook URL for the “lead-capture” path and configure your website form to POST the expected fields (including an empty honeypot field such as website).

This workflow was created by Gusti Bagus Cahya Utama and shared publicly on the n8n community template library. n8nFind indexes it for discovery — the workflow remains the property of its original creator.

Nodes Used (3)

Gmail
n8n-nodes-base.gmail
Google Sheets
n8n-nodes-base.googleSheets
WhatsApp Business Cloud
n8n-nodes-base.whatsApp