Lead Gen Website Pipeline
Automated system that finds local businesses with weak or no websites, AI-generates a custom demo website for each, deploys it to Vercel, and sends a personalized cold outreach email sequence — all without human intervention after initial setup.
What It Does
- 1. Discovers leads via Google Places API for configurable niches and cities
- Scores leads 0-100 based on website quality, reviews, phone availability
- Queues leads in a Google Sheet for human review/approval
- Generates demo websites via a 5-stage AI pipeline (research → spec → build → QA → validate)
- Deploys to Vercel automatically with daily rate limiting
- Sends cold outreach via AgentMail with a 5-email drip sequence (Day 0, 3, 7, 14, 30)
- Notifies you on Discord with pitch angles, demo URL, and visual QA scores
Pipeline Architecture
CODEBLOCK0
Requirements
API Keys (set in your .env)
| Key | Service | Purpose | Cost |
|---|
| INLINECODE0 | Google Cloud | Lead discovery + photos | ~$0-20/mo |
| INLINECODE1 |
Google AI Studio | Gemini for research/spec/QA | Free tier |
|
ANTHROPIC_API_KEY | Anthropic | Claude for spec generation | Pay per use |
|
OPENAI_API_KEY | OpenAI | GPT for HTML building | Pay per use |
|
VERCEL_TOKEN | Vercel | Demo site deployment | Free tier (100/day) |
|
AGENTMAIL_API_KEY | AgentMail | Cold outreach emails | Free tier |
|
GOOGLE_SHEET_ID | Google Sheets | Lead tracking | Free |
Google Sheet Setup
Create a Google Sheet with these columns (A-O):
INLINECODE7
Status values: review, filtered, approved, processing, demo_ready, failed, INLINECODE14
Share the sheet with a GCP service account for API access.
Infrastructure
- - Node.js 22+ on the host machine
- Google Cloud service account JSON key for Sheets API
- Vercel account (free Hobby tier works)
- AgentMail account with at least one inbox
- Discord channel for notifications (optional but recommended)
Setup Instructions
1. Clone and install
CODEBLOCK1
2. Configure environment
Copy .env.example to .env and fill in your API keys.
3. Configure your niches and city
Edit scripts/niche-defaults.json to customize:
- - Target niches (landscaping, cleaning, roofing, etc.)
- Color palettes per niche
- Common services per niche
- Trust items per niche
The pipeline supports 15 niches out of the box:
landscaping, auto detailer, cleaning service, handyman, roofing, pressure washing, plumbing, electrician, HVAC, painting, fencing, tree service, junk removal, pest control
4. Set up the poller
The poller watches your Google Sheet for approved leads and triggers the pipeline:
CODEBLOCK2
For production, set up as a systemd service or OpenClaw cron job.
5. Set up outreach emails
CODEBLOCK3
Set up as an OpenClaw cron job to run 3x/day:
CODEBLOCK4
Customization
Target City
Change the Google Places API search query in the n8n workflow or lead discovery script to target your city instead of Omaha.
Pricing Tiers
The business plan template includes 3 tiers:
- - Starter ($997 + $49/mo) — Single-page landing site
- Professional ($1,997 + $99/mo) — Multi-page with gallery, analytics
- Premium ($2,997 + $149/mo) — Blog, booking, live chat, priority support
Email Templates
The drip sequence (in send-outreach.js) follows the proven pattern:
- - Day 0: "I built you a website — take a look" (demo link)
- Day 3: Social proof — "businesses like yours saw 30-40% more calls"
- Day 7: Urgency — "your preview expires soon"
- Day 14: Last chance — "taking it down today"
- Day 30: Breakup — "closing the loop, door is always open"
Edit the templates in send-outreach.js → getDripEmail() function.
Design Blueprints
Add niche-specific design guidance in templates/designs/<niche>.md. The build stage loads these automatically to produce better-looking sites per vertical.
Pipeline Stages Deep Dive
Stage 1: Research
Consolidates lead data (name, phone, address, website, reviews) into a structured JSON summary. Uses scraped website data + Google Places API reviews.
Stage 2: Spec
Generates all website copy — hero section, services, about, reviews, service area, footer. No HTML yet, just structured content.
Stage 3: Build
Converts the spec JSON into a single-file responsive HTML page. Injects real photos (scraped or Google Places fallback), logo, niche-specific color palette.
Stage 4: QA
AI reviews the HTML for 13 quality checks: robots meta tag, demo banner, phone numbers, form action, footer attribution, broken images, alt text, mobile hamburger menu, and more.
Stage 5: Validate
Programmatic validation confirms all critical elements are present. Non-blocking — logs warnings but doesn't block deployment.
Stage 6: Deploy
POSTs the final HTML to Vercel API. Tracks daily deploy count (max 90/day to stay under free tier limit). Returns live URL.
Stage 7: Outreach
Generates a personalized cold email with pitch angles extracted from the lead data (no website, Gmail address, strong reviews, years in business).
Output Per Lead
Each processed lead produces a run folder with ~19 artifacts:
- -
intake.json — Enriched lead data - INLINECODE23 — Structured summary
- INLINECODE24 — All website copy
- INLINECODE25 — Production-ready HTML
- INLINECODE26 — Deploy URL + metadata
- INLINECODE27 — Cold email + follow-up
- INLINECODE28 — Mobile/tablet/desktop captures
- INLINECODE29 — Gemini Vision quality scores
- INLINECODE30 — Run tracking
Costs
Per-Lead Cost
- - Google Places API: ~$0.03-0.05/lead
- AI generation (Gemini + Claude): ~$0.10-0.50/lead
- Vercel hosting: $0 (free tier)
- AgentMail: $0 (free tier)
- Total: ~$0.15-0.55 per lead
Monthly Operating Cost (at 10-20 leads/day)
- - Google APIs: $5-20/mo
- AI models: $30-150/mo (less with Claude Max plan)
- Everything else: $0
- Total: $35-170/mo
Revenue Potential (at 2% response rate)
- - 50 emails/week → 1 conversation/week → 1 client/month
- 1 client = $997+ one-time + $49+/mo recurring
- Year 1 from one client/month: ~$12,000+ one-time + $3,500+ recurring
Selling This System
This pipeline is designed to be sold as a done-for-you service:
| Model | Setup Fee | Monthly | Your Time |
|---|
| Done-for-you | $2,000-$10,000 | $200-$1,000/mo | 4-8 hours setup |
| Pre-configured package |
$500-$3,000 | $100-$500/mo | 1-2 hours per client |
| Productized service | — | $1,500/mo flat | Template + light customization |
The pipeline documents itself. Each run folder is a complete audit trail. The niche configs are templates. Second client takes 1/4 the time of the first.
Credits
Built by Ryan Romero (Romero Automation) with Larry (OpenClaw agent). Pipeline architecture, spec generation, QA validation, and outreach automation — all designed for local service businesses in any US city.
潜在客户生成网站管道
自动化系统,能够查找拥有薄弱或无网站的本土企业,为每家企业AI生成定制演示网站,部署到Vercel,并发送个性化冷启动邮件序列——初始设置后无需人工干预。
功能概述
- 1. 发现潜在客户:通过Google Places API针对可配置的细分市场和城市进行搜索
- 评分潜在客户:基于网站质量、评论、电话可用性进行0-100分评分
- 排队潜在客户:在Google表格中排队等待人工审核/批准
- 生成演示网站:通过5阶段AI管道(研究→规格→构建→质量检查→验证)
- 自动部署到Vercel:每日速率限制
- 发送冷启动邮件:通过AgentMail发送5封邮件的滴灌序列(第0、3、7、14、30天)
- Discord通知:包含推销角度、演示URL和视觉质量评分
管道架构
Google Places API → 评分潜在客户 → Google表格(您批准)
↓
已批准潜在客户 → 抓取网站 → 获取Google评论
↓
AI研究 → AI规格(文案) → AI构建(HTML) → AI质量检查 → 验证
↓
部署到Vercel → 更新表格 → Discord通知
↓
生成冷启动邮件 → AgentMail发送 → 滴灌跟进
要求
API密钥(在.env文件中设置)
| 密钥 | 服务 | 用途 | 费用 |
|---|
| GOOGLEPLACESAPIKEY | Google Cloud | 潜在客户发现+照片 | ~$0-20/月 |
| GOOGLEAPI_KEY |
Google AI Studio | Gemini用于研究/规格/质量检查 | 免费层 |
| ANTHROPIC
APIKEY | Anthropic | Claude用于规格生成 | 按使用付费 |
| OPENAI
APIKEY | OpenAI | GPT用于HTML构建 | 按使用付费 |
| VERCEL_TOKEN | Vercel | 演示网站部署 | 免费层(100个/天) |
| AGENTMAIL
APIKEY | AgentMail | 冷启动邮件 | 免费层 |
| GOOGLE
SHEETID | Google Sheets | 潜在客户跟踪 | 免费 |
Google表格设置
创建包含以下列(A-O)的Google表格:
createdat | niche | businessname | address | phone | email | website | googlemapsurl | rating | reviewscount | haswebsite | websitequalityscore | lead_score | status | notes
状态值:review、filtered、approved、processing、demo_ready、failed、contacted
与GCP服务账户共享表格以进行API访问。
基础设施
- - 主机上的Node.js 22+
- 用于Sheets API的Google Cloud服务账户JSON密钥
- Vercel账户(免费Hobby层即可)
- 至少有一个收件箱的AgentMail账户
- 用于通知的Discord频道(可选但推荐)
设置说明
1. 克隆并安装
bash
git clone https://github.com/RazzleDazzleI/lead-gen-pipeline.git
cd lead-gen-pipeline
npm install
2. 配置环境
将.env.example复制为.env并填写您的API密钥。
3. 配置细分市场和城市
编辑scripts/niche-defaults.json以自定义:
- - 目标细分市场(园林绿化、清洁、屋顶等)
- 每个细分市场的配色方案
- 每个细分市场的常见服务
- 每个细分市场的信任项目
管道开箱支持15个细分市场:
园林绿化、汽车美容、清洁服务、杂工、屋顶、高压清洗、管道、电工、暖通空调、油漆、围栏、树木服务、垃圾清理、害虫防治
4. 设置轮询器
轮询器监控您的Google表格中已批准的潜在客户并触发管道:
bash
运行一次测试
node scripts/poll-approved-leads.js
持续运行(每5分钟)
node scripts/run-poller.js 5
对于生产环境,设置为systemd服务或OpenClaw cron作业。
5. 设置冷启动邮件
bash
先进行空运行——查看将要发送的内容
node scripts/send-outreach.js --dry-run
发送待处理的初始邮件+跟进
node scripts/send-outreach.js
仅发送计划的跟进邮件
node scripts/send-outreach.js --followups
设置为每天运行3次的OpenClaw cron作业:
bash
openclaw cron add --name outreach-sender \
--cron 0 9,15,21 * --tz America/Chicago \
--session isolated --announce \
--message Run: cd /path/to/project && node scripts/send-outreach.js
自定义
目标城市
在n8n工作流或潜在客户发现脚本中更改Google Places API搜索查询,以定位您的城市而非奥马哈。
定价层级
商业计划模板包含3个层级:
- - 入门版($997 + $49/月)——单页落地网站
- 专业版($1,997 + $99/月)——多页带图库、分析
- 高级版($2,997 + $149/月)——博客、预订、实时聊天、优先支持
邮件模板
滴灌序列(在send-outreach.js中)遵循经过验证的模式:
- - 第0天:我为您建了一个网站——请查看(演示链接)
- 第3天:社会证明——像您这样的企业电话量增加了30-40%
- 第7天:紧迫感——您的预览即将过期
- 第14天:最后机会——今天将下架
- 第30天:告别——结束循环,大门始终敞开
在send-outreach.js → getDripEmail()函数中编辑模板。
设计蓝图
在templates/designs/.md中添加细分市场特定的设计指导。构建阶段会自动加载这些内容,为每个垂直领域生成更美观的网站。
管道阶段深度解析
阶段1:研究
将潜在客户数据(名称、电话、地址、网站、评论)整合为结构化的JSON摘要。使用抓取的网站数据+Google Places API评论。
阶段2:规格
生成所有网站文案——英雄区域、服务、关于我们、评论、服务区域、页脚。尚无HTML,仅为结构化内容。
阶段3:构建
将规格JSON转换为单文件响应式HTML页面。注入真实照片(抓取或Google Places备用)、Logo、细分市场特定配色方案。
阶段4:质量检查
AI对HTML进行13项质量检查:机器人元标签、演示横幅、电话号码、表单操作、页脚归属、破损图片、替代文本、移动端汉堡菜单等。
阶段5:验证
程序化验证确认所有关键元素存在。非阻塞——记录警告但不阻止部署。
阶段6:部署
将最终HTML POST到Vercel API。跟踪每日部署计数(最多90个/天以保持在免费层限制内)。返回实时URL。
阶段7:冷启动
生成个性化冷启动邮件,包含从潜在客户数据中提取的推销角度(无网站、Gmail地址、强评论、经营年限)。
每个潜在客户的输出
每个处理的潜在客户生成包含约19个工件的运行文件夹:
- - intake.json — 丰富的潜在客户数据
- research.json — 结构化摘要
- spec.json — 所有网站文案
- final.html — 生产就绪HTML
- evaluation.json — 部署URL+元数据
- outreach-email.json — 冷启动邮件+跟进
- screenshot-*.png — 移动/平板/桌面截图
- visual-qa.json — Gemini视觉质量评分
- status.json — 运行跟踪
成本
每个潜在客户成本
- - Google Places API:~$0.03-0.05/潜在客户
- AI生成(Gemini + Claude):~$0.10-0.50/潜在客户
- Vercel托管:$0(免费层)
- AgentMail:$0(免费层)
- 总计:每个潜在客户约$0.15-0.55
月度运营成本(每天10-20个潜在客户)
- - Google API:$5-20/月
- AI模型:$30-150/月(使用Claude Max计划更少)
- 其他所有:$0
- 总计:$35-170/月
收入潜力(2%响应率)
- - 每周50封邮件→每周1次对话→每月1个客户
- 1个客户