← Portfolio  /  Case Study
Case Study · CRM Automation

LeadLoop - Every new lead, texted, called, and qualified automatically

A GoHighLevel workflow that texts a new lead the moment they submit, follows up with a call, and qualifies them based on their reply - without a human ever touching the pipeline.

Role · Sole Automation Engineer: architecture, build, testing Tools · GoHighLevel · SMS · Voice · Workflow Builder
The Problem

Most leads go cold within five minutes

Speed-to-first-contact decides whether a lead converts or disappears. Manual follow-up loses to inboxes, timezones, and human fatigue.

Before

Forms in, leads out the back door

A new inquiry sits in an inbox until someone notices. By the time the team replies, the lead has shopped around, lost interest, or already booked someone else. No one knows who's been contacted, who hasn't, or who actually wanted the service.

After

Texted in seconds, qualified in minutes

The form fires the workflow. SMS goes out instantly, a call is queued for 15 minutes later, and the lead's reply routes them automatically - either into the sales pipeline or into a clean "not interested" funnel.

How It Works

Five simple steps

No technical knowledge needed to follow this, every box is a thing happening in the background, automatically.

1 · Form submitted

A lead fills out a form. Their profile is created and tagged in GHL.

2 · Instant SMS

A confirmation text goes out within seconds.

3 · Call after 15 min

The system queues a call to personally reach the lead.

4 · Qualify by reply

Lead replies INTERESTED or NOT INTERESTED - workflow routes them.

5 · Quote or filter

Interested leads get a quotation. Not-interested leads exit cleanly.

The Three Outcomes

Every lead lands in the right place

The workflow handles all three real-world outcomes without anyone watching.

PATH 1 · INTERESTED

Lead replies "INTERESTED"

A quotation document is sent automatically. The lead stays in the pipeline with the new-lead-for-service tag.

Outcome: Quote delivered, sales team takes over from a warm position.
PATH 2 · NOT INTERESTED

Lead replies "NOT INTERESTED"

Moved to the "Customer Not Interested" workflow. Tag swapped, polite confirmation SMS sent. Pipeline stays clean.

Outcome: No follow-up spam. Tag searchable for future campaigns.
PATH 3 · NO RESPONSE

Lead doesn't reply at all

After 5 min silence on SMS or 20 min on the call branch, lead auto-moves to "not interested." A "couldn't reach you" SMS goes out.

Outcome: Dead leads exit automatically - no manual cleanup needed.
From The Lead's Side

What the customer actually sees

A natural-feeling SMS conversation. The lead never knows they're talking to an automation.

9:41● ● ●
EM
Ema Services
Today 9:41 AM
Hi Sarah, thank you for your reservation! We will contact you shortly.
9:56 AM · Missed call
Hi Sarah, we just tried to give you a call. We'd love to send you a quotation - please reply INTERESTED or NOT INTERESTED.
INTERESTED
Great! Sending your quotation now 📄

Designed to feel human

Short, polite, in the brand's voice. The first SMS goes out within seconds - fast enough that the lead remembers signing up.

  • First touch: instant confirmation - "we got you"
  • Second touch: a real call attempt at 15 minutes
  • Third touch: a clear yes/no answerable in one word
  • Closing touch: the quotation, or a polite exit
Inside The Build

Two workflows working together

For the technically curious: here's what's actually wired up in GoHighLevel.

All Workflows - Side by Side

WF1 top · WF1 bottom · WF2 not-interested
WF1 top - form trigger, tag, instant SMS, wait, call WF1 - Trigger & SMS
1
Form trigger

Fires the instant a contact submits the form in GoHighLevel.

2
Add tag & instant SMS

Tags new-lead-for-service and sends confirmation text within seconds.

3
Wait + call

15-min pause, then queues a call to personally connect with the lead.

WF1 bottom - branch on reply, condition, route to quote or filter WF1 - Branch & Route
4
Branch on call outcome

If lead replies, SMS asks INTERESTED / NOT INTERESTED. Timeout after 20 min fires a different SMS.

5
Condition: parse reply

Routes to "Send Documents" if INTERESTED - otherwise fires the Not-Interested workflow.

6
Timeout safety net

5-min reply timeout - silent leads exit the active pipeline automatically.

WF2 - not interested filter: remove tag, add tag, send SMS WF2 - Not Interested
1
Trigger on opt-out

Listens for "NOT INTERESTED" reply - case-insensitive match on any variation.

2
Remove active tag

Strips new-lead-for-service so the contact stops appearing in the sales pipeline.

3
Add the closure tag

Applies not-interested - searchable later for future re-engagement.

4
Closing SMS

Sends a polite "we won't follow up" message - leaves the door open.

Built For

Any business that lives or dies on response speed

Drop this template into any industry where leads expect a fast first touch.

Real estate agencies
Medical & dental clinics
Service-based businesses
Marketing agencies
Sales teams & SDRs
Local businesses & trades
The Results

What changed for the workflow

<10s
First touch

SMS goes out within seconds of form submission.

3
Touch points

Confirmation SMS, live call, qualifying question - all automatic.

100%
Coverage

Every form submission is followed up. None slip through.

0
Manual chasing

The team only steps in when a lead has self-qualified as interested.

Built With

Tools used

All native to GoHighLevel - no third-party integrations, no extra subscriptions.

GoHighLevel Workflow Builder SMS Voice Calls Tags & Triggers Form Builder

Need something like this for your business?

I build small, reliable automations that quietly take a workload off your team's plate. Open to client work and full-time roles.

Get in touch →