Skip to content
All modules

Module 03 · foundations · beginner

Google Sheets Lead Tracker

After this module you can capture leads from any website or tool into a clean, deduplicated Google Sheet.

What it does

POST /webhook/lead with {name, email, source}. The workflow trims and lowercases the data, rejects invalid leads with a 400, and writes valid ones to a Google Sheet. If the email already exists, it updates that row instead of adding a duplicate.

Flow

New Lead → Normalize → Valid Lead? ─true─→ Save Lead (Sheets: append or update by email) → Respond OK
                                    └false→ Build Error → Respond Error (400)

Verification status

  • Validation path (400s): tested on n8n 2.43.6.
  • Google Sheets save + dedupe: needs your Google credentials. Run WITH_CREDS=1 ./test/test.sh after connecting.

Files

File Tier Purpose
lesson.md Free Step-by-step build, including Google credentials
workflow/starter.json Free Webhook + Normalize only
workflow/learner.json Learner Finished workflow
assets/leads-template.csv Free Sheet header row
exercises.md Learner Practice tasks
solutions.md Learner Exercise solutions
notes.md Private Learning log
sell/ Private Offer, video script, blog post