What you'll build: A complete GoHighLevel system for a local service business — missed-call text-back, online booking, automated Google review requests, and a 5-email nurture sequence. This is the exact setup Systrify deploys for clients.
Before you start: You need a GHL account (Agency or sub-account), a connected phone number (Twilio or LC Phone), and a Resend or SMTP email sender. This guide covers all three.
Section 1 — Account Setup
1.1 Sub-account structure
Each client gets their own GHL sub-account. Never build workflows in the Agency account directly.
1 Go to Agency Dashboard → Sub-Accounts → Create Sub-Account. Use the client's business name + city (e.g. "Green Nest Salons - Manchester").
2 Set timezone to Europe/London. This affects all scheduled sends and cron triggers.
3 Enable Phone (Twilio / LC Phone) under Settings → Phone Numbers. Buy a local UK number (the area code matters — clients trust local numbers). For London: 020x. For Manchester: 0161.
4 Under Settings → Email Services, connect your Resend or SMTP sender. Use hello@[clientdomain].co.uk if they have a domain. Otherwise use a subdomain of your agency domain.
1.2 Business info
Fill in Settings → Business Profile completely. GHL uses these in automation placeholders ({{business.name}}, {{business.phone}}).
- Business name (exactly as it appears on Google Maps)
- Address (for review links and local SEO)
- Website URL
- Google My Business profile URL (you'll need this for review request links)
Section 2 — Missed-Call Text-Back
This is the single highest-ROI automation for local businesses. A missed call sends an immediate SMS: "Sorry we missed you — want to book in?" Studies show 78% of people buy from the first business that responds. This makes you that business.
1 Go to Automation → Workflows → New Workflow → Start From Scratch.
2 Name it: "Missed Call → Text Back"
3 Trigger: Inbound Call Status → Missed (not voicemail — missed)
4 Add action: Send SMS. Message:
Hi {{contact.first_name | default: "there"}} 👋 Sorry we just missed your call at {{business.name}}! We'd love to help. Want to book a time that suits you? {{calendar.booking_url}}
5 Set delay: Wait 0 minutes (instant). Fire immediately — speed is the whole point.
6 Add a second action: Add Tag → missed-call-texted. This lets you report on how many missed calls you're recovering.
7 Add a 4-hour wait, then a second SMS if they haven't booked:
Still looking to book? We have a few slots available this week — grab one here: {{calendar.booking_url}} 🗓️
Pro tip: Set up a "Stop On Booking" filter — add a condition before the second SMS: "If contact has tag 'booked' → exit workflow." This prevents sending the follow-up to people who already booked after the first text.
Section 3 — Online Booking Calendar
1 Go to Calendars → Create Calendar → Simple Calendar.
2 Set availability: 9am–6pm Mon–Sat. Add 15-min buffer between bookings.
3 Enable Google Calendar Sync — critical so the client's personal calendar blocks times automatically.
4 Booking confirmation: auto-send SMS + email. Use this confirmation email template:
Subject: Your booking at {{business.name}} is confirmed ✅
Hi {{contact.first_name}},
You're booked in for {{appointment.start_time | date: "%A, %B %d at %I:%M %p"}}.
📍 {{business.address}}
📞 {{business.phone}}
Need to reschedule? Use this link: {{appointment.reschedule_url}}
See you soon,
{{business.name}} team
5 Add the booking link to: the Missed Call Text-Back (step 2), the client's Instagram bio, Google Business profile, and website header.
Section 4 — Google Review Request Automation
After every completed appointment, GHL automatically sends a review request. Most local businesses get 3–5x more reviews within the first month. Reviews directly drive Google ranking and walk-in conversions.
1 Create a new Workflow: "Post-Appointment Review Request".
2 Trigger: Appointment Status Changed → Completed (or "Showed" if you use that status).
3 Add a 3-hour wait (give them time to get home).
4 Send SMS:
Hi {{contact.first_name}} 😊 Hope you enjoyed your visit to {{business.name}}! Would you mind leaving us a quick Google review? It takes 30 seconds and really helps us. Here's the link: [GOOGLE_REVIEW_LINK]
Replace [GOOGLE_REVIEW_LINK] with the direct Google review link: search your business on Google Maps → Share → Copy link → shorten with bit.ly.
5 Add a 2-day wait. If they haven't reviewed (check GHL's reputation module), send a follow-up email:
Subject: A small favour, {{contact.first_name}}?
Hi {{contact.first_name}},
We hope you're happy with your recent visit. If you have 30 seconds, leaving us a Google review would mean the world to us — it helps other local people find us.
[Leave a review →]
Thanks so much,
{{business.name}}
Section 5 — 5-Email Nurture Sequence
For leads who enquire but don't book immediately. These go out over 10 days and convert ~18% of fence-sitters into bookings.
1 Trigger: Contact Tag Added → "new-enquiry" (add this tag when a lead submits your booking form without booking).
Email 1 — Immediate (Day 0):
Subject: Thanks for reaching out to {{business.name}}
Hi {{contact.first_name}},
Thanks for getting in touch! We'd love to get you booked in.
Check availability and grab a slot here: {{calendar.booking_url}}
Any questions, just reply to this email.
{{business.name}} team
Email 2 — Day 2:
Subject: Still thinking about it?
Hi {{contact.first_name}},
Just wanted to follow up — we have a few slots available this week if you'd like to get booked in.
[Book your appointment →] {{calendar.booking_url}}
{{business.name}}
Email 3 — Day 4 (social proof):
Subject: What our customers are saying
Hi {{contact.first_name}},
Here's what recent customers said about us:
⭐⭐⭐⭐⭐ "Absolutely love this place — so professional and friendly." — Sarah M.
⭐⭐⭐⭐⭐ "Best I've found in [city]. Won't go anywhere else now." — James T.
Book your spot today: {{calendar.booking_url}}
{{business.name}}
Email 4 — Day 7 (soft urgency):
Subject: A few slots left this week
Hi {{contact.first_name}},
We're getting quite booked up — if you want to come in this week, it's worth grabbing a slot soon.
[Check availability →] {{calendar.booking_url}}
{{business.name}}
Email 5 — Day 10 (last touch):
Subject: Last message from us, {{contact.first_name}}
Hi {{contact.first_name}},
We don't want to keep emailing you, so this is our last follow-up. Whenever you're ready, the link is here: {{calendar.booking_url}}
We hope to see you soon.
{{business.name}}
Section 6 — Pipeline Setup
Track leads through stages so you (and the client) can see conversion at each step.
1 Go to Opportunities → Pipelines → Create Pipeline. Name it "Booking Pipeline".
2 Add stages: New Enquiry → Texted/Emailed → Booked → Completed → Won (Repeat)
3 Wire up automations to move contacts between stages automatically:
- Missed call → Move to "Texted/Emailed"
- Booking confirmed → Move to "Booked"
- Appointment completed → Move to "Completed"
Section 7 — Common Mistakes & Fixes
- Texts not sending: Check the phone number is connected under Settings → Phone Numbers. LC Phone needs a verified number — it takes 24–48h for provisioning.
- "{{contact.first_name}}" showing as blank: Make sure the contact's first name is populated. Add a fallback:
{{contact.first_name | default: "there"}}
- Calendar not syncing with Google: The Google Calendar integration needs OAuth re-auth every 90 days. Set a reminder to re-authenticate.
- Review link not working: The Google Review link must be from the "Share" button in Google Maps, not the address bar. Test it in an incognito window first.
- Workflows firing twice: Ensure "Allow Re-entry" is set to once per contact unless you explicitly want re-entry (like monthly re-engagement).
Need this done for you?
Systrify deploys this exact setup for local businesses in 5 working days, including a custom onboarding call and 30 days of support. Book a free 30-minute audit at calendly.com/systrify/30min or email [email protected].
© 2026 Systrify · [email protected] · systrify.com · This document is for the purchaser's personal use only. Do not distribute or resell.