Yelp Incoming LeadAI + SMS Automation Architecture
Purpose
This document explains the full architecture and operational logic behind BA House Cleaning’s Yelp lead automation system.
The goal of this system is to:
- Improve Yelp response quality
- Improve response speed
- Create more human, contextual communication
- Reduce ghosting
- Maintain a premium and professional brand image
- Avoid spammy or overly aggressive automation
- Hand leads off cleanly to human sales when needed
This system combines:
- Yelp Leads
- Zapier
- OpenAI (GPT-4o)
- GoHighLevel (GHL)
- Human Sales Follow-Up
System Overview
High-Level Workflow
Yelp Lead Submitted
↓
Zapier Trigger Fires
↓
AI Generates Yelp Response
↓
Yelp Reply Sent
↓
Contact Created/Updated in GHL
↓
Wait 10 Minutes
↓
Phone Number Available?
├── NO → End
└── YES
↓
Business Hours?
├── YES → Add Tag: Yelp SMS Approved
└── NO → Add Tag: Yelp SMS Pending Morning
↓
GHL SMS Workflow Starts
↓
SMS Sent + Follow-Up Logic
↓
Human Sales Takeover OR Lead Cold
System Responsibilities
Zapier Responsibilities
Zapier is responsible for:
- Receiving Yelp leads
- Reading Yelp lead details
- Running AI logic through OpenAI
- Generating Yelp responses
- Sending Yelp replies
- Creating/updating contacts in GHL
- Checking business hours
- Detecting whether a phone number exists
- Applying automation tags
- Routing by service type
- Zapier handles the “intelligence” and orchestration layer.
GHL Responsibilities
GHL is responsible for:
- CRM/contact management
- Pipeline management
- SMS sending
- Follow-up timing
- Workflow automation
- Stopping workflows when leads engage
- Human sales handoff
- Opportunity tracking
GHL handles the communication workflow layer.
Yelp AI Response Philosophy
The AI is trained to:
- Sound natural and conversational
- Avoid robotic or overly polished language
- Acknowledge project details
- Ask only for missing quote information
- Avoid overwhelming leads with too many questions
- Avoid sounding like a call center
- Avoid sounding “too AI”
- Match tone to service type
- Maintain BA House Cleaning brand tone
Required Quote Information
For most residential quotes, the AI attempts to collect:
- Approximate cleanliness level from BA House Cleaning photo scale
- Approximate square footage
- Best email address for the quote
The AI should NOT:
- Mention Yelp proxy emails
- Mention temporary Yelp-generated emails
- Use a simple 1–5 cleanliness scale
- The AI should refer specifically to:
- “Our cleanliness photo scale”
- “Our cleanliness chart”
Service Type Logic
Recurring Cleaning
Examples:
- Weekly
- Biweekly
- Every 4 Weeks
Tone:
- Maintenance-focused
- Relationship-oriented
- Calm and professional
Cadence:
- Longer nurture okay
Deep Cleaning / One-Time
Tone:
- Reassuring
- Helpful
- Less sales-oriented
These leads are often:
- Overwhelmed
- Catch-up situations
- Preparing for guests or events
Move-In / Move-Out
Tone:
- Scheduling-focused
- Deadline-aware
- More direct
Cadence:
- Faster
- Shorter lifecycle
These leads usually book quickly or disappear quickly.
Commercial / Office Cleaning
Tone:
- More professional
- More consultative
Human sales should usually take over faster.
Operational Rules
Grout Cleaning
BA House Cleaning does NOT offer specialty grout restoration.
Standard floor mopping is included.
For specialty grout restoration:
- recommend grout specialists such as COIT when appropriate
Window Cleaning
BA House Cleaning offers:
- Interior window cleaning
Exterior window cleaning is ONLY offered for:
- Sliding patio doors
Do NOT imply full exterior window cleaning.
Email Requests
When requesting email:
Use:
- “Best email for the quote”
Do NOT mention:
- Yelp proxy emails
- Temporary email systems
After-Hours Logic
Philosophy
The system should NEVER create the impression that:
- The office is actively staffed overnight
- Staff are awake and texting at midnight
- Quotes are being actively worked after hours
The automation should feel human and operationally realistic.
After-Hours Yelp Replies
After-hours Yelp replies should:
- Acknowledge the office is closed
- Set expectations appropriately
- Invite quote information if desired
Example:
“Thanks for reaching out! Our office is currently closed, but we’ll review your request and follow up during business hours.”
After-Hours SMS Behavior
NO SMS should send:
- Overnight
- Late evenings
- Weekends
Instead:
- The lead is queued for next-business-morning SMS
Tag Definitions
| Tag | Purpose |
|---|---|
| new-yelp-lead | New Yelp lead entered system |
| Yelp SMS Approved | Lead may receive daytime SMS |
| Yelp SMS Pending Morning | Hold SMS until next business morning |
| Yelp SMS Sent | Prevent duplicate texting |
| new-yelp-lead-replied | Lead engaged/replied |
| sales-active | Human sales rep actively working lead |
| quote-sent | Quote has already been delivered |
| booked | Lead booked service |
| pause-automation | Manual emergency stop |
| yelp-lead-cold | Lead exhausted/no engagement |
Critical Automation Guardrails
Automation MUST STOP if:
- Lead replied
- Human sales took over
- Quote sent
- Lead booked
- pause-automation tag added
This prevents:
- Duplicate texting
- Conflicting communication
- Robotic follow-up
- Unprofessional customer experience
Human Takeover Philosophy
Automation should behave like:
“A respectful assistant to sales.”
NOT:
“A competing sales rep.”
Human sales always overrides automation.
GHL Workflow Structure
Workflow Name
Yelp Lead – SMS Nurture when Temp# Available
Trigger Conditions
Contact Changed
Fires when:
- Phone number changes
Contact Tag Added
Tag:
- yelp-lead-new-temp-number
Core Workflow Logic
Step 1
Wait 10 Minutes
Purpose:
- Prevent creepy instant SMS
- Allow Yelp phone updates to occur naturally
Step 2
Business Hours Check
IF:
- Mon–Fri
- 9 AM – 5 PM PST
THEN:
- Continue to SMS logic
ELSE:
- Hold until next business m