← All Field Notes
GHL · Digital Marketing Agency · Sep 26, 2026

Landscapers: 3 Texts That Turn One Job Into a Repeat Customer

Landscapers: 3 Texts That Turn One Job Into a Repeat Customer

Key Takeaways

You cut her lawn in April. You did good work. She paid, said thanks, and you never heard from her again. Next spring there's somebody else's truck parked out front. That's episode nine of The Trade Stack on our YouTube channel, and it's the biggest hole in the landscaping business. It isn't a quality problem. It's a silence problem. We're On Point Tech Solutions, a GHL consultant in the Bay Area based in Los Gatos, and this is the build we'd put in front of any landscaper, lawn care crew, tree service or irrigation shop: one trigger, three texts, one ask, and a settings tab. Every number below comes from a published source, and nothing here was run on a real crew, so treat it as a build plan, not a case study.

Why the Customer Disappears

HomeAdvisor puts the average landscaping install in this country at about $3,500. Getting that same customer back costs you a text message. Finding a brand new one costs five to twenty five times more than keeping her, per Harvard Business Review. That math alone should make repeat business the first thing you automate.

Then there's the calendar. The Bureau of Labor Statistics counts landscaping workers every month. Every July there are about a million of them. By the middle of winter it's under 800,000. Roughly a quarter of the industry disappears and comes back every year, on schedule.

Now picture it from her kitchen window. Four months without seeing a truck. In March she needs somebody, and she calls whoever she heard from last. Either that's you, or it's the guy who did text her.

Landscaping repeat customer follow up texts built by a GHL consultant in the Bay Area

Chapter One: Trigger on the Yes, Not the Finish

This decides who ends up in the sequence. You're not triggering when the job is finished. You're triggering the moment she accepts your estimate.

HighLevel has a trigger built for exactly that, called Estimates. It fires on sent, viewed, accepted, declined and invoiced. The one you want is accepted. She taps the button and she's in, before you've unloaded a single mower.

One filter is worth setting on it: estimate value. Set it to greater than, and put your smallest real job in the box. A $40 hedge trim doesn't need six months of follow up. A $3,000 install does.

Your check before you build anything: pull your accepted estimates from the last twelve months and count them. Then mark every customer whose name shows up more than once. The second number over the first is your repeat rate. Write it down. In a year you run it again, and that's the only way you'll ever know if this worked. And if you can't pull that list because your estimates live in a notebook in the truck, that's the real first job. Fix that before you automate anything.

Chapter Two: Thirty, Ninety, One Eighty

The timing is the whole trick.

  1. Day 30. The work has settled. She's looked at it a hundred times. You ask one question: how's it holding up?
  2. Day 90. This one is about the season that's coming, not about you.
  3. Day 180. The only message with a booking link in it.

Then it stops. Notice what isn't in there. Nothing on day two. Nothing on day seven. She just paid you. The fastest way to look desperate in this business is texting somebody about more work before the grass has grown back.

Now what the messages say, because this is where most people wreck it. Four rules:

Here's the day 30 text from the video: "Hey Denise, it's Marcus from Ridgeline. Just checking in on the beds we put in last month. Is everything filling in okay?" That's the whole message. No offer, no link, no "thank you for your continued business." It reads like a guy who did the work and honestly wants to know if it took. Send all three to your own phone before you turn anything on and read them out loud. If it sounds like a newsletter, cut it until it doesn't.

GoHighLevel estimate accepted workflow with 30, 90 and 180 day texts for landscapers

Chapter Three: The Referral Ask Goes After the Yes

Everybody puts the referral ask in the wrong spot. You don't ask on day one. You ask after she tells you she's happy, and that's an actual step in the builder.

Right after the day 30 text, drop in a wait step and set it to wait for the contact to reply. She writes back "looks great." Now the ask fires. One message: "That's great to hear. If anybody on your street asks who did it, would you send them my number?"

Nielsen surveyed more than 40,000 people on this. 88% trust a recommendation from someone they know over any other kind of advertising. You can't buy that. You can ask for it once.

Don't Let a Six Month Wait Land at Midnight

The day 180 text sits on a wait step for six months. A fixed wait ends when its clock runs down. It doesn't know what time it is, and it doesn't know you're asleep.

That's why HighLevel put a setting on the wait step called Advance Window. Turn it on and you get two controls: Resume On, the days of the week she's allowed to come out of the wait, and Resume Between Hours, the time of day. Weekdays, nine to five, done. Set it on every wait step in the workflow, not just the long one.

Your check: open each wait step and confirm the window is on.

The Gotcha: She Only Gets In Once

This one quietly kills the whole build. In your workflow settings there's a toggle called Allow Re-Entry. Turned off, a contact can enter that workflow one time. Ever.

So Denise comes back in year two, accepts another estimate, and nothing happens. The workflow you built to create repeat customers ignores the repeat customer. Two things to know:

Why This Matters for Bay Area Landscapers

Bay Area yards are big tickets. A drought tolerant replant in Los Gatos, a paver patio in San Jose, an irrigation retrofit in Campbell. When one install runs into the thousands, losing that customer to silence is expensive, and the crews we talk to around the South Bay are usually doing follow up from memory, if at all. As a GHL consultant in the Bay Area, this is the kind of build we like best: small, polite, and it keeps paying every spring she owns that house.

Same shape works for lawn care, tree work, irrigation and hardscape. Anybody whose customer needs the same thing again in a few months and doesn't think about you once in between. And once she books again, three invoice reminders make sure you get paid for it.

Practical Steps

  1. Pull twelve months of accepted estimates. Count them, count the repeat names, and write down your repeat rate.
  2. Build a workflow on the Estimates trigger, status accepted, with an estimate value filter above your smallest real job.
  3. Add wait steps and three texts at 30, 90 and 180 days. Booking link on the last one only.
  4. Name the job, no price, one question, first name. Read all three out loud from your own phone.
  5. After the day 30 text, add a wait for reply, then the one line referral ask.
  6. Turn on Advance Window on every wait step: weekdays, business hours.
  7. Open the workflow settings and turn Allow Re-Entry on.
  8. Run a test estimate through it and confirm it enters, waits and exits the way you expect.

Watch the Full Build

Final Thoughts

Trigger on the estimate she accepted, with a value filter so the little stuff stays out. Three texts at 30, 90 and 180 days. A wait for her reply, then the referral ask. Advance Window on every wait so nothing lands at midnight. Re-entry on, so she comes back through it every year. That's one afternoon of setup for a customer who stays yours.

The free version is at optechsol.llc/setup: the three messages word for word, the timing, the value filter and the settings tab. Rather have it running by Friday? That's what we do. On Point Tech Solutions is a GHL consultant in the Bay Area, based in Los Gatos, building systems for trades across San Jose and the South Bay. We build it for you or teach your team with an SOP, and either way you own it. Start at optechsol.llc.

Want this working in your business?
Get my plan ← Back to all Field Notes