Yelp AI Auto-Responder (BYO Zapier + LLM Key)
The Problem
Yelp Request a Quote leads fan out to 3-5 contractors at the same time, and the first to reply books the job 78% of the time. Most contractors check Yelp twice a day, which means they lose every lead to whoever showed up first. This recipe wires Zapier's native Yelp Leads app to ChatGPT and back again so every new lead gets a personalized reply posted through Yelp messaging in under 15 seconds. Bring your own Zapier account and your own OpenAI API key. No per-lead platform fees, no data leaving your accounts, and you undercut every managed Yelp autoresponder tool by 80%.
How It Works
New Yelp Request a Quote lead (real-time trigger from the Yelp Leads Zapier app)
Zapier pulls the project survey answers, ChatGPT generates a personalized plain-text reply using your business brief, then posts it back via the Yelp Create Message action.
Yelp lead gets a warm, specific reply in the thread within 15 seconds. Yelp's fast-responder badge lights up. Booking rates on Yelp leads double.
Importable Templates
PRD
# Product Requirements Document
Recipe 111 — Yelp AI Auto-Responder (BYO Zapier + LLM Key)
THE AI TRADES Platform
---
Recipe Slug: `yelp-ai-auto-responder`
Recipe Number: 111
Rank: 111 | Tier: 2
Difficulty: No-Code Flow
Time Estimate: 1 hour
Category: Call & Lead Handling
Software: Yelp, Zapier, ChatGPT
Roles: CSR, Owner
Trades: All
Principles: Speed Wins the Job
---
1. Recipe Overview
Yelp Request a Quote leads cost nothing extra beyond your Yelp listing, but the first contractor to reply books the job 78% of the time. Most contractors check Yelp once or twice a day. By then the lead is gone.
This recipe wires a Zapier flow between Yelp Leads and ChatGPT so every new Request a Quote gets a personalized AI reply through Yelp messaging inside 10 seconds. You bring your own Zapier account and your own OpenAI API key. No third-party platform fees per lead, no data leaving your accounts.
Input: New Yelp Request a Quote lead (triggered via the native Yelp Leads app on Zapier)
Transformation: Zapier pulls the project survey answers, sends them to ChatGPT with your business brief, and routes the generated reply back through the Yelp Create Message action.
Output: Yelp lead gets a personalized reply in under 10 seconds, in your brand voice, without touching your phone.
---
2. The Problem
You Are Losing Yelp Leads to Faster Contractors
Yelp surfaces the Request a Quote button on every business profile. Homeowners hit "Request a Quote," fill out a short survey, and their request fans out to 3-5 local contractors at the same time. Yelp even tells the homeowner which businesses responded fastest on a leaderboard. Whoever replies first usually wins.
The speed-to-lead reality on Yelp:
- 84% of Yelp users prefer Request a Quote over calling (Yelp business data)
- Leads blast to up to 5 contractors simultaneously
- Yelp highlights response time in the business profile
- Average contractor response: 2-6 hours
- By the time you see the notification, two other contractors already replied
Why contractors are slow on Yelp specifically:
1. The Yelp Biz app notifications get buried alongside review pings
2. Messages come in through a separate inbox most owners never check
3. Unlike phone calls, there is no ringing to force attention
4. Many contractors still treat Yelp as a review site, not a lead channel
---
3. The Solution
A Zapier flow with three steps:
1. Trigger: Yelp Leads "New Lead" (real-time from Zapier's native Yelp Leads app)
2. Action: ChatGPT generates a personalized reply using the project survey answers
3. Action: Yelp Leads "Create Message" posts the reply back through the Yelp thread
The entire flow runs in 5-15 seconds from the moment Yelp notifies Zapier. Your customer sees a professional, specific reply almost immediately, and Yelp counts your business as one of the fastest responders on their leaderboard.
Expected results:
| Metric | Before (manual) | After (automated) |
|---|---|---|
| Average response time | 2-6 hours | Under 15 seconds |
| Yelp "fast responder" badge | Rare | Nearly always |
| Request a Quote reply rate | 30-50% | 90%+ |
| Booking rate on Yelp leads | 10-15% | 25-35% |
---
4. Prerequisites
| Requirement | Details | Cost |
|---|---|---|
| Yelp Business Account | Must be claimed and have Request a Quote enabled | Free |
| Zapier account | Professional plan needed for multi-step Zaps | $29.99/mo |
| OpenAI API key | Pay-per-token. GPT-4o-mini works well for this. | ~$0.0002 per reply |
| Business brief | 1-2 paragraphs describing your company, services, tone | Free |
Yelp Leads + Zapier cost note: Yelp Leads triggers counted toward free tasks through March 31, 2026. As of April 1, 2026, they count toward your normal Zapier plan limits. At typical contractor lead volume (20-100/mo) you stay well under the Professional plan ceiling.
---
5. Yelp Leads Zapier App Capabilities
Zapier has a native Yelp Leads app (not to be confused with Yelp Conversions). Here is what it exposes:
Triggers
| Trigger | Fires When | Notes |
|---|---|---|
| New Lead | A new Request a Quote lead comes in | Includes all project survey data |
| New Consumer Message | Customer sends a follow-up message | Use for multi-turn auto-replies |
| New Business Message | Your business sends a message | For logging/audit |
| Phone Availability | A masked phone number becomes available | Phone numbers are opt-in, often delayed |
Actions
| Action | What It Does |
|---|---|
| Create Message | Sends a plain-text reply through the Yelp lead thread |
| Mark Lead as Replied | Flags the lead as contacted |
| Mark Lead Message as Read | Clears the unread badge in your inbox |
| Get Lead Details | Fetches name and masked email |
| Get Business Details | Pulls business metadata |
Gotchas You Need to Know Before Building
| Limitation | What It Means for Your Build |
|---|---|
| Plain text only | No HTML, no bold, no images, no attachments in replies |
| No full URLs | Use URL shorteners (Bitly, TinyURL). Full URLs break Yelp parsing. |
| Contact data expires in 30 days | Masked email/phone become invalid after 30 days |
| Phone numbers unreliable | Only ~40% of leads include a masked phone. Use Phone Availability trigger to catch delayed ones. |
| Two-way SMS not supported | You can text outbound, but the customer cannot reply via SMS. All replies come through Yelp. |
| Zapier test data is fake | "New Consumer Message" and "New Business Message" triggers return dummy data during test. Real data flows on deploy. |
---
6. Zap Flow Setup
Step 1: Trigger — Yelp Leads "New Lead"
1. In Zapier, create a new Zap
2. Choose Yelp Leads as the trigger app
3. Select New Lead as the trigger event
4. Connect your Yelp Business Account via OAuth
5. Test the trigger. You should see a sample lead come through.
The payload includes project survey fields, the customer first name, masked email, and lead ID.
Step 2: Action — ChatGPT Generate Reply
1. Add an OpenAI (GPT) action
2. Select Conversation or Send Prompt
3. Connect your OpenAI account by pasting your API key
4. Model: `gpt-4o-mini` (fast and cheap)
5. System prompt: paste the business brief template from Section 7
6. User message: map the Yelp project survey fields into a template
User message template:
```
New Yelp lead for {{service_type}}. Here is what the customer told us:
{{project_survey_answers}}
Customer first name: {{customer_name}}
Write a reply that follows the system prompt rules. Keep it under 80 words.
```
Step 3: Action — Yelp Leads "Create Message"
1. Add a Yelp Leads action
2. Select Create Message
3. Lead ID: map from Step 1 (the trigger's lead ID field)
4. Message: map from Step 2 (the ChatGPT output)
5. Turn on the Zap
Optional Step 4: Action — Mark Lead as Replied
Keeps your Yelp inbox clean. Add a Mark Lead as Replied action right after Create Message. Pass the lead ID from Step 1.
Optional Step 5: Action — Google Sheets Log
Useful for tracking reply times and spotting flow failures. Log lead ID, customer name, service type, timestamp, and the generated reply.
---
7. Business Brief (System Prompt)
Paste the following into the ChatGPT action's system prompt. Replace the bracketed fields with your actual business info.
```
You are the front desk for [COMPANY NAME], a [TRADE] contractor
serving [CITY/REGION].
Your job is to reply to new Yelp Request a Quote leads in a warm,
professional, locally-grounded way. Follow these rules:
1. Plain text only. No markdown, no bullets, no bold, no URLs.
2. Keep replies under 80 words. Long replies feel like a brochure.
3. Use the customer's first name once, naturally.
4. Reference at least one specific detail from their request so they
know a human (not a form letter) read it.
5. Never promise a specific price. Say you need to see it or ask a
clarifying question.
6. End with a clear next step: "Want me to give you a call?" or
"What is the best phone number to reach you?"
7. Sound like a local contractor, not a chatbot. Avoid phrases like
"I would be delighted," "kindly," "at your earliest convenience,"
or any corporate filler.
8. Our service area is [LIST]. If they are outside it, politely say
we cannot help and wish them luck.
9. Our hours are [HOURS]. Acknowledge if their request is after hours.
10. We specialize in [SPECIALTIES]. If their request is outside our
scope, say so honestly.
Company phone: [PHONE]
Service area: [LIST]
Specialties: [LIST]
Things we do not do: [LIST]
```
---
8. Example Exchange
Yelp project survey (raw):
```
Service needed: Water heater repair
Emergency: Yes
ZIP code: 94110
Quantity: 1
Additional details: No hot water since last night. 40 gallon tank, about
8 years old, gas.
```
Generated AI reply:
```
Hi Jessica. Sorry you have been without hot water. Eight years on a
40 gallon gas tank is right at the edge of its lifespan, so a few
things could be going on. I can usually get someone out same-day for
no-hot-water calls. What is a good phone number to reach you? Happy
to also try to troubleshoot over the phone if that is easier.
— Mike at Bay Plumbing
```
- Delivery time: 12 seconds after the Yelp lead came in
- Word count: 67
- Plain text: yes
- References specific detail from the request: yes (40 gallon, 8 years, gas)
- Clear next step: yes (asking for phone number)
---
9. Multi-Turn Replies
The flow above handles the first message. If you want the AI to keep the conversation going, add a second Zap:
- Trigger: Yelp Leads "New Consumer Message"
- Action: ChatGPT Conversation (pass the full message history as context)
- Action: Yelp Leads "Create Message"
For the AI to have context across turns, you need to pull prior messages. The easiest approach is to log every message to a Google Sheet keyed by lead ID, then have Zapier look up the full thread before calling ChatGPT.
Warning: Multi-turn AI replies can go off the rails. Start with first-reply only. Watch the outputs for a week. Only add multi-turn after you trust the first-reply quality.
---
10. Stop Conditions
Your Zap should not reply in these cases. Add a Filter by Zapier step between the trigger and the ChatGPT action.
| Condition | Filter Logic | Reason |
|---|---|---|
| Outside service area | Does not contain ZIP in your list | Not your lead |
| Emergency you cannot handle | Service type matches "gas leak" AND you are not a plumber | Liability |
| Duplicate lead | Same customer name + ZIP in last 24 hours in your log | Prevent double-replies |
| Customer opted out | Name matches your do-not-contact list | Respect opt-outs |
| Parsed survey is empty | Survey fields all blank | Do not send a generic apology |
---
11. Testing Checklist
Run these before turning the Zap on live.
| # | Test | Expected Result | Pass? |
|---|---|---|---|
| 1 | Trigger test pulls a real past lead | Sample lead payload appears in Zapier | ☐ |
| 2 | ChatGPT step returns a <80 word reply | Reply under 80 words, no markdown | ☐ |
| 3 | Yelp Create Message action accepts the reply | Action completes with success | ☐ |
| 4 | Real lead comes in | Reply posts within 15 seconds | ☐ |
| 5 | Customer sees reply in Yelp inbox | Reply appears in the Yelp thread | ☐ |
| 6 | Business name is used correctly | No hallucinated company names | ☐ |
| 7 | Service area filter works | Out-of-area leads skip the reply | ☐ |
| 8 | Emergency keyword is handled | Urgent leads get urgent tone | ☐ |
| 9 | ChatGPT failure does not break flow | Zapier retries or alerts you | ☐ |
| 10 | Reply uses the customer's first name once | Not twice, not zero | ☐ |
Tip: Submit a fake Request a Quote on your own Yelp listing from a friend's account. Do not use your own account to test, Yelp will flag it.
---
12. Cost Breakdown
Monthly at 50 Yelp Leads
| Item | Cost |
|---|---|
| Zapier Professional plan | $29.99 |
| OpenAI API (GPT-4o-mini) — 50 leads x $0.0002 | $0.01 |
| Total | ~$30/mo |
Compared to Alternatives
| Option | Cost at 50 Leads/Mo |
|---|---|
| This recipe (BYO Zapier + key) | $30/mo flat |
| LeadWinner.ai | ~$150/mo ($2.99/lead) |
| LeadTruffle | $79/mo |
| Hire a virtual receptionist | $300-500/mo |
The break-even point versus LeadWinner is 10 leads/month. Past that, this recipe is cheaper. Past 100 leads/month, it is dramatically cheaper.
---
13. Upgrade Path: Direct Yelp API
Once you are handling 500+ leads/month, consider applying for direct access to the Yelp Leads API as a reseller partner. Benefits:
- No Zapier task limits
- Lower latency (direct push vs. polling)
- Access to all Yelp Leads endpoints without Zapier wrapping
Requirements: Yelp advertising spend minimum, partnership application, technical review. Worth it only at scale. For 99% of contractors, the Zapier route is the right answer indefinitely.
---
14. Metrics to Track
Log every auto-reply to a Google Sheet with these columns:
| Column | Why It Matters |
|---|---|
| Lead ID | Join key |
| Timestamp in | When Yelp notified |
| Timestamp replied | When your Zap posted |
| Delta (seconds) | Your actual response time |
| Service type | For segmentation |
| ZIP | Service area analysis |
| Reply text | Spot weird AI outputs |
| Customer replied? | Engagement rate |
| Booked? | Conversion rate |
Review weekly for the first month. You are looking for three things:
1. Reply time under 15 seconds 95%+ of the time
2. No weird AI outputs (hallucinated prices, wrong service, etc.)
3. Customer reply rate above 50%
---
Recipe 111 — Yelp AI Auto-Responder (BYO Zapier + LLM Key)
THE AI TRADES Platform
Difficulty: No-Code Flow | Setup: 1 hour | Category: Call & Lead Handling