Speed to Lead Automation: Build an AI Agent That Texts Every Web Lead Back in Under 60 Seconds
A step-by-step build in n8n and Twilio that replies to form, Facebook and Google Local Services leads within a minute, qualifies them by text, and hands the good ones to you. With the consent rules, real costs and what breaks.
Speed to lead: the first reply usually wins
A homeowner finds a water stain on the ceiling at 7 pm, fills out the contact form on three roofing websites, and goes back to dinner. One roofer texts back at 7:01 with her name and a question about the stain. The other two call the next morning. By then she has already booked an inspection with the first one.
That is speed to lead, and it is the cheapest win most service businesses are leaving on the table. This guide shows you how to build an AI agent in n8n and Twilio that texts every written lead back in under a minute, asks the right questions, and hands the real ones to you. It covers the build step by step, the consent rules, how to deal with Google Local Services leads, and what it all costs.
What the research and the builds on this site show
The most cited study is a 2011 Harvard Business Review article, "The Short Life of Online Sales Leads." The authors sent test web leads to 2,241 US companies: only 37 percent responded within an hour, 23 percent never responded, and the average response time among those that did was 42 hours. In a separate analysis of 1.25 million leads, firms that tried to contact a lead within an hour were nearly seven times as likely to qualify it as firms that waited even one hour longer, and more than 60 times as likely as firms that waited a day or more.
You will also see the claim that responding in 5 minutes instead of 30 makes you 100 times more likely to reach a lead. That comes from a 2007 study sponsored by InsideSales.com, covering phone calls only, and it was never peer reviewed. The direction is right. Do not build a business case on the multiplier.
The builds documented on this site are more useful because they are small businesses like yours. A landscaping company cut response time from 30 to 60 minutes down to under 60 seconds and saw its lead-to-booked-estimate rate rise 42 percent against the previous month, with the biggest effect on Google Local Services leads. That was two weeks of data, so treat it as an early signal (builtwithagents.ai/strategy/instant-ai-lead-response-local-service-businesses). Another builder runs lead response agents for four local service clients and reports six-month averages of response time falling from over six hours to four minutes and a 34 percent lift in lead conversion. One three-person plumbing company went from responding to 30 percent of its leads to 94 percent on the same ad spend (builtwithagents.ai/strategy/19-openclaw-agents-local-service-businesses-8-dollars-month). Both are self-reported.
What the agent does, and what it does not
This agent handles written leads: website forms, Facebook lead ads, and message leads from Google Local Services Ads. It texts the lead within a minute, using their name and what they asked about, asks one or two qualifying questions, offers real appointment slots from your calendar, and alerts you with a summary when someone books or needs a person.
It does not quote prices, diagnose problems, or keep chatting forever. And it is not for missed phone calls. If your leads mostly ring your phone, set up missed call text back first (builtwithagents.ai/blog/missed-call-text-back-ai-follow-up), which uses the same Twilio number and much of the same workflow.
A worked example: a four-person roofing company
Take a roofing company getting about 300 written leads a month from its website and Facebook lead ads, plus a trickle from Google Local Services. These are illustrative numbers, not a documented client.
At 7:12 pm, Dana submits the website form: name, mobile number, "leak over the garage after the storm," and a ticked consent box. The form posts to an n8n webhook. n8n checks the number is a real US mobile, checks the Google Sheet to make sure Dana is not already a lead from this week, and passes her details to Claude with the prompt below. At 7:12 and 9 seconds, Twilio sends: "Hi Dana, it's Kyle at Summit Roofing. Got your note about the leak over the garage. Is water coming in now, or is it a stain?"
Dana replies at 7:20: "Stain, but it's spreading." A second workflow catches the reply, loads the thread, and the AI checks the calendar and offers Thursday at 10 or Friday at 2 for a free inspection. Dana picks Friday. The booking goes into Google Calendar, the sheet is updated, and Kyle gets a Slack message with the address and a two-line summary. Nobody at the company touched it.
How to build it
Step 1: Register your texting number first
Buy a local number in Twilio for $1.15 a month and start A2P 10DLC registration in the Twilio Console under Messaging. Twilio blocks business texts from unregistered local numbers (error 30034), and approval takes days, so do this before anything else. As of October 2026, a Standard brand costs $46 in one-time registration and vetting fees, a campaign has a $15 vetting fee, and campaigns carry a monthly fee of roughly $1.50 to $10. A toll-free number at $2.15 a month is the alternative, but it must be verified before it can text.
Step 2: Put consent on every form
Under the TCPA, texting a mobile number with automated tools needs the person's prior express consent, and texts that include advertising need prior express written consent. Add an unchecked box to every form: "I agree to receive texts from Summit Roofing about my request. Message and data rates may apply. Reply STOP to opt out. Consent is not a condition of purchase." Store the timestamp and the wording with each lead. Honor STOP and similar replies immediately; the rules give you 10 business days at most. Several states have stricter rules, including on texting hours, so keep automated texts to daytime and early evening in the lead's time zone. This is not legal advice; have someone check your wording.
Step 3: Send every lead source to one webhook
In n8n, create a workflow that starts with a Webhook node, and point your website form at its URL. Most form builders can post to a webhook. Connect Facebook lead ads through Meta's integration in Zapier or Make, or any tool that forwards them to the same webhook. Use a Set node to map every source into the same fields: name, phone, source, message and consent.
Google Local Services Ads is the awkward one. Phone leads ring your business directly, so they belong in your missed-call flow. Message leads are available through the Google Ads API's local services lead resource, but there is no webhook, so you need a scheduled n8n workflow that polls for new leads. That needs Google Ads API access and some setup, and every poll counts as an n8n execution: polling every 10 minutes adds about 4,300 executions a month, which pushes you past the Starter plan to Pro or a self-hosted instance. If you run ServiceTitan, its native LSA integration captures message leads for you.
Step 4: Check, then let the AI write the first text
Add a check before the AI: does the phone number look valid, has this number come in within the past seven days, and is the consent box ticked? If any check fails, log the lead and alert a person instead of texting. Then add an AI Agent or chat model node with Claude or an OpenAI model. A prompt that works: "You are Kyle, the scheduler at Summit Roofing in Denver. Write one text under 160 characters to a new lead. Use their first name and refer to exactly what they wrote. Ask one question that helps us decide how urgent it is. No prices, no promises about timing, no emojis, no links." Keeping the text under 160 characters keeps it to a single SMS segment.
Step 5: Send it, log it, alert yourself
Add a Twilio node to send the text, a Google Sheets or CRM node to log the lead, the message and the timestamp, and a Slack or SMS node to alert whoever is on duty. Compare the form submission time with the send time in your log. If anything is over 60 seconds, find the slow step.
Step 6: Handle the replies in a second workflow
In Twilio, set your number's incoming message webhook to a second n8n workflow. It looks up the lead by phone number, loads the conversation so far from the sheet, and passes it to an AI Agent node with one tool: your calendar, through Cal.com or Google Calendar. The prompt tells it to ask at most two more questions, offer two real slots from the calendar tool, and never invent availability. Add hard handoff rules: if the lead asks for a person, mentions price, sounds upset, or the thread passes six messages, stop and alert a human.
Step 7: Follow up once, then stop
If there is no reply, send one follow-up two hours later and one the next morning, then stop. Leads who ignore three texts will not answer a fourth, and each extra text increases opt-outs. Before you go live, submit 20 test leads through every form, including a fake number, a duplicate, an angry reply, a STOP reply and a request for a price, and check every result.
What it costs
For the 300-lead roofing example, as of October 2026: the Twilio number is $1.15 a month. Outbound texts are $0.0083 per segment plus a carrier fee of $0.0035 to $0.005, and inbound texts are $0.0083 too. At about six messages per lead including replies, that is roughly 1,800 segments, or about $25 a month. n8n Cloud Starter is $24 a month billed monthly for 2,500 executions, which covers the first texts, replies and follow-ups at this volume (add LSA polling and you need the $60 Pro plan or self-hosting). Claude Haiku 5.5 costs $0.10 per million input tokens and $0.50 per million output tokens, so a couple of thousand short AI calls cost well under a dollar. Add the 10DLC fees above. All in, about $55 a month after one-time fees of around $60.
If you would rather not build, GoHighLevel does most of this out of the box: $97 a month for Starter plus $50 or $97 for an AI Employee add-on, and its messaging fees. Plenty of the home service builds on this site run on it. If you want the AI to call the lead rather than text, one builder here wires n8n to Vapi to place an outbound AI call the moment a form arrives (builtwithagents.ai/strategy/nate-herk-ai-voice-agent-calls-every-new-lead-n8n-vapi). Voice costs more per lead, and many people do not pick up unknown numbers, so start with text.
What breaks
Robotic first texts. "Thank you for your inquiry, a representative will contact you" gets ignored. The first text must mention what the lead actually wrote.
Spam and bots. Bots fill forms with fake numbers, and texting them wastes money and can hurt your sender reputation. Add a hidden honeypot field to your form and validate numbers before texting.
Double contact. If your office already called the lead, the AI's follow-up looks clumsy. Log manual contacts in the same sheet or CRM and have the workflow check before each follow-up.
Invented availability. An AI that promises "tomorrow morning" without checking the calendar creates no-shows and angry customers. Only let it offer slots returned by the calendar tool.
Edge cases. One moving company builder on this site needed about a dozen rounds of simulated conversations to iron out edge cases before the agent was ready (builtwithagents.ai/strategy/openclaw-lead-response-agent-blue-collar-businesses). Budget for that testing.
When it is not worth it
If you get fewer than about 20 written leads a month and you can reply personally within five minutes, do that instead. If most of your leads phone you, fix missed calls first. And if you cannot commit to reading the conversation log every day for the first two weeks, wait until you can.
Frequently Asked Questions
What is speed to lead?▾
It is the time between a lead contacting you and your first response. Research from Harvard Business Review found firms that tried to reach a lead within an hour were nearly seven times as likely to qualify it as firms that waited longer, and most small businesses respond far slower than they think.
How fast should I respond to a new lead?▾
Within five minutes if you can, and within the hour at the latest. An automated text in under 60 seconds is the easiest way to get there consistently, especially for leads that come in at night and on weekends.
Can I automate replies to Google Local Services Ads leads?▾
Partly. Phone leads ring your business directly, so handle them with missed call text back. Message leads can be pulled from the Google Ads API by a scheduled workflow, since there is no webhook. ServiceTitan users can use its native LSA integration.
Do I need consent to text someone who filled out my form?▾
Yes. Automated texts to a mobile number need prior express consent, and marketing texts need prior express written consent under the TCPA. Use a clear, unchecked consent box on the form, store the record, and honor STOP replies right away.
How much does an AI speed to lead system cost?▾
A DIY build on n8n, Twilio and Claude runs about $55 a month for 300 leads, plus around $60 in one-time 10DLC registration fees, as of October 2026. GoHighLevel with an AI Employee add-on costs $147 to $194 a month before messaging fees.
Should the first contact be a text or a call?▾
Text first for most service businesses. It is cheaper, it reaches people who do not answer unknown numbers, and it gives them an easy way to reply. Call when the lead asks, or for high-value jobs after the first text has landed.