The first minute after a lead comes in.
Someone fills in your form and asks about a job. This is what I'd have happen next: a text sent automatically when they submit, two questions, two times to choose from, and a real person brought in when the lead needs one.
If people ask about jobs through a form on your site, every text below is written out, ready to paste. Swap each {{field}} for the matching field from your form or CRM. If you also call lists, the CLEAN page has the rows to delete before you dial, with a formula for each and a sheet that has them built in.
Automatic
The first text, sent when the form is submitted, with their first name and the service they asked about.
2 questions
Before you offer a time: how soon they need it, and where the job is.
2 times
To choose from, then booked. Price questions and silence go to one named person.
What’s inside
- The five steps, from the form to a booked time
- Every text written out, with roofing, cleaning and heating and air versions of the first one
- The reply to send for each answer, and when to bring in a person
- How to test it on your own phone before you switch it on
- The whole script in one plain file
The five steps
The steps run in n8n or GoHighLevel, and the texts go out through Twilio. The agent is the part that reads each reply and sends the matching text from this page. Anything it can't match goes to a person.
The form sends the lead to your CRM
- When someone submits your form, it posts their details to your CRM by webhook: first name, mobile number, the service they picked, and whether they ticked the box agreeing to be texted.
The first text goes out automatically
- It uses their first name and the service they asked about, and it ends with question one, so there is something easy to answer.
- If the box isn't ticked, nothing goes out.
Two questions
- How soon they need it, and where the job is. Each answer has a set reply below.
Two times to choose from
- Offer two real slots from your calendar. They reply 1 or 2, and the slot is booked.
A named person takes over
- If the lead asks about price, goes quiet, or replies with something the script doesn't cover, the automatic texts pause and one named person on your team gets an alert with the lead's details and their last message.
The first text
Three versions, by trade. Each one uses their name and the service, says who is texting, and ends with question one. Keep "Reply STOP to opt out" on the first text.
Roofing
Cleaning
Heating and air (HVAC)
The two questions
Question one, how soon, is already in the first text. Question two asks where the job is. Each answer gets one set reply. If a reply matches neither answer, the agent sends nothing more and alerts the named person. If your form already asks for the address, swap question two for a question the form doesn't ask, and write one reply for each answer.
Question one: now (leaking, not working, this week)
- Send
Question one: planning ahead
- Send
Question one: anything else
- Send
- Nothing. Send the staff alert.
Question two: a ZIP code in your area
- Send
- The two-times text, below.
Question two: a ZIP code outside your area
- Send
Question two: anything else
- Send
- Nothing. Send the staff alert.
Offer two times
For a lead who said now, offer your two soonest slots.
The ZIP code is in your area
- Send
They reply 1 or 2
- Send
Neither time works
- Send
- Nothing more. Send the staff alert.
Bring in a person
One alert, to one named person on your team, by text or in your CRM. The automatic texts pause for that lead until the person replies.
The staff alert
The four reasons
Asked about price. No reply after the follow-up. Neither time works. A reply the script doesn't cover.
When they ask about price
The agent doesn't quote. It sends this to the lead, and the alert to your named person:
If they don't reply
You set how long counts as quiet. When a lead goes quiet at any step, send this once, during your working hours.
They go quiet at any step
- Send
They say yes
- Send
- The question they haven't answered yet.
They say no
- Send
Still no reply
- Send
- The staff alert, with the reason "no reply after the follow-up". Then stop texting. The named person decides whether to call.
Before you text anyone
No tick, no text
Text only people who agreed to be texted on your form. Put a box on the form that they tick to agree, send that answer with the webhook, and have the first step check it.
The wording of the box
The exact wording of that box is yours to settle with your own adviser; this page doesn't cover the law.
When someone replies STOP
If anyone replies STOP, send them nothing else.
Test it on yourself
Before you switch it on for real leads, run it on your own phone.
Fill in your own form from your own phone, with the box ticked.
- What should happen
- The first text should arrive on its own, with your first name and the service you picked. Note how long it took.
Answer "now", then a ZIP code inside your area.
- What should happen
- You should get two times. Reply 1 and check the booking lands in your calendar.
Fill it in again and reply "how much?"
- What should happen
- The named person should get the alert, and the automatic texts should stop.
Fill it in once more without ticking the box.
- What should happen
- Nothing should arrive.
Take the files
Open a .csv in Google Sheets (File, then Import) or Excel.
The trades, fields and times on this page are examples to adapt. Nothing here is a result or a promise; it is a script.
A fast first text is one step. What happens around it is the system.
Lead Generation Group is a program that teaches you to generate your own leads and sets up the Lead Generation OS with you. The first 90 days focus on paid acquisition: Meta ads, the offer, the funnel, tracking, CRM and follow-up.
See If You Qualify