
How We Set Up Automated SMS Marketing for a Local Service Business (And What It Did for Their Revenue)
Quick answer: We built an automated SMS marketing system for a local service business using GoHighLevel. The build included A2P registration, a 5-message onboarding sequence, a review request workflow, and a reactivation campaign for dormant contacts. SMS open rates run around 98% compared to roughly 20% for email, meaning almost every message we send gets read. For this client, the reactivation campaign alone recovered contacts who had gone cold for 90-plus days and generated bookings within the first week of going live. The full build took under three weeks from first conversation to active sequences.
SMS is the most reliable channel in a local service business's marketing stack. That is not an opinion. The numbers are not close: industry benchmarks put SMS open rates at 95 to 98 percent, compared to roughly 20 percent for email. Most SMS messages are read within three minutes of delivery. Most emails are read within 48 hours, if they are read at all.
Despite this, most small businesses either have no SMS marketing in place or are doing it manually, with one person copying and pasting messages into a phone one contact at a time. That is not a system. That is a full-time job disguised as marketing.
We fix this. Here is exactly how we built a complete automated SMS marketing operation for a local service business, what tools we used, and what happened to their pipeline when the sequences went live.
SMS wins on immediacy every time. For a service business where timing matters, whether that's reminders, reactivation, or limited-time offers, there is no better channel.
The Build: Step by Step
Step 1: A2P Registration Comes First, or Nothing Else Works
Before you can send a single SMS through GoHighLevel at any meaningful volume, you need A2P 10DLC registration. A2P stands for Application-to-Person, which is how carriers classify messages sent programmatically rather than by one human texting another. Without this registration, your messages will be filtered, throttled, or blocked outright.
This step stops more businesses than any other part of the build. It feels bureaucratic because it is. But it is required.
Here is what the registration process requires:
A registered business with an EIN (sole proprietors can register but face stricter limits)
A business name and address on file with your carrier
A use-case description that accurately reflects what you will be sending
Opt-in language on every form, landing page, or intake process where you collect phone numbers
A compliant privacy policy on your website that references text message communications
We handle A2P registration for every client we onboard. We are registered and approved for Omnibus Victis AI and for Alabaster House, the Frederick, Maryland nonprofit we work with. The approval process typically takes one to two weeks. Starting it before the build means you are not waiting at the finish line.
One common mistake: businesses try to skip the opt-in documentation because they assume their existing contact list counts. It does not. Every phone number in your SMS system needs a documented opt-in tied to an appropriate use-case category. Build this into your intake flow from day one.
Step 2: Configure Your GoHighLevel Sub-Account for SMS
Once A2P is approved, you set up the sending infrastructure inside GoHighLevel:
Assign a dedicated phone number to the sub-account. This number will appear as the sender on all outbound messages. We use a local area code whenever possible, since contacts are more likely to read a message from a local number than an 800-series.
Set up SHAKEN/STIR caller ID verification if you are also using the number for voice calls. This prevents your calls from showing as "Spam Risk" on caller ID.
Configure opt-out keywords. At minimum, GHL handles STOP and UNSUBSCRIBE natively. Document what your system does when someone opts out, and test it.
Set business hours. GHL can be configured to hold messages that would otherwise go out at 2am and send them at the first available window during business hours. Turn this on.
Step 3: Build the Opt-In Trigger
Every contact who enters your SMS sequences needs to have opted in to receive text messages. In GoHighLevel, this typically works through one of three paths:
A web form with a checkbox that reads: "By checking this box, you consent to receive text messages from [Business Name] at the number provided. Message and data rates may apply. Reply STOP to opt out."
A booking flow where consent language is included in the confirmation step
An inbound text: if someone texts your number first, that is an inbound opt-in and you can trigger sequences from it
For this client, we used a combination of a web form and an inbound text trigger. Anyone who booked online confirmed consent through the form. Anyone who texted the business number directly was enrolled in a short welcome sequence after replying YES to a consent message.
Do not skip the consent confirmation step. It protects you legally and improves deliverability because you are not messaging people who did not ask to hear from you.
Step 4: Build the Core Sequences
This is where most of the actual automation lives. For this client, we built four distinct sequences in GHL workflows.
Onboarding sequence (new leads): Five messages over eight days.
Appointment reminder sequence: Three messages for every booked appointment.
24 hours before: reminder with address and what to bring
2 hours before: quick confirmation request (reply YES to confirm, NO to reschedule)
30 minutes before: "We'll see you soon," short, warm, no ask
Review request: One message sent 24 hours after a completed appointment with a direct link to the review platform. We keep this single message rather than a sequence. One ask, at the right time, works better than a three-message campaign that feels pushy.
Reactivation campaign: Contacts who have not engaged or booked in 90-plus days receive a three-message reactivation sequence over two weeks. The messages are conversational in tone, not promotional. The goal is to restart a conversation, not blast a discount code.
Step 5: Build in Two-Way Conversation Handling
Automated sequences that cannot handle replies are a liability. When someone texts back a question and gets no response, you have just turned an automated system into an active negative impression.
We connect GHL's Conversation AI to the SMS inbox so that replies route to either an AI response (for common questions, scheduling requests, or simple objections) or a live inbox notification to the business owner for anything that requires a human. For most local service businesses, AI-handled SMS conversations commonly resolve 65 to 80 percent of routine inquiries without human escalation, per industry chatbot benchmarks."
For this client in particular, the Conversation AI was configured to answer questions about pricing, availability, and service scope, and to book appointments directly from the SMS thread.
Step 6: Test Before You Go Live
Run the full sequence on yourself and at least one team member before activating for real contacts. Specifically test:
That opt-out keywords immediately remove the contact from all active sequences
That appointment reminders fire at the correct time in the correct time zone
That replies route to the correct inbox or AI handler
That the reactivation sequence does not trigger for contacts who have recently booked
One misconfiguration at this stage costs you contacts. Test it.
What Happened When the Sequences Went Live?
We built this system for a local service business in the mid-Atlantic region. Within the first seven days of the reactivation campaign going live, contacts who had been dormant for more than 90 days replied and booked. The reactivation sequence converted 11% of a cold list back into active pipeline in the first two weeks, without any ad spend, without any manual outreach, and without the business owner touching a single message.
The appointment reminder sequence reduced no-shows from roughly 22% to under 6% within the first month.
That second number is worth sitting with. A 22% no-show rate is right in line with the industry average of roughly 23% across service businesses, meaning roughly one in five booked appointments simply never materializes. The revenue that disappears from no-shows in a year is not trivial. A two-message reminder sequence that costs nothing per send fixed most of it, consistent with industry data showing automated SMS reminders alone cut no-shows by around 38%.
What This Looks Like at Each Service Tier
If you are evaluating whether this build is right for your business, here is how we scope it across our service levels:
Foundation ($997/mo): A2P registration, one primary sequence (onboarding or reactivation), appointment reminders, and basic opt-out compliance.
Growth ($2,497/mo): Full sequence library (onboarding, reminders, review request, reactivation), two-way Conversation AI, custom intake forms with consent language, monthly sequence performance review.
Partner ($4,997/mo): Everything in Growth plus advanced segmentation, multi-channel sequencing (SMS + email), ongoing optimization, and dedicated build support as the business grows.
Related Posts
If you are working through the broader automation picture for your business, these three posts are worth reading alongside this one:
How to Automate Bookings and Follow-Ups: how the appointment side of the system connects to the SMS layer
GoHighLevel for Small Businesses: What It Actually Does: a ground-level overview of what GHL is and how the pieces fit together
Five Small Business Automation Tasks You Can Implement This Month: a starting checklist if SMS is your first automation build
FAQ
Does my business need A2P registration to send automated SMS messages?
Yes. If you are sending text messages programmatically, meaning through a CRM, marketing platform, or any automated tool, carriers require A2P 10DLC registration. Unregistered messages face filtering and blocking. The registration process takes one to two weeks and requires basic business documentation. We handle this for every client we onboard.
Can I use automated SMS if I already have a contact list from a previous system?
Only if those contacts provided explicit consent to receive text messages when they originally gave you their number. Generic web form submissions or in-person sign-ups without specific SMS consent language do not qualify. For older lists without clear SMS consent documentation, the safest path is a single opt-in confirmation message before enrolling them in any sequence.
What is the difference between SMS marketing and a conversational AI on SMS?
SMS marketing sequences are pre-written messages that go out based on triggers and timing, such as a new lead, a booked appointment, or 90-day dormancy. Conversational AI handles replies in real time, answering questions and booking appointments without a person at the keyboard. Both run inside GoHighLevel. A complete SMS system has both: sequences that initiate contact and AI that handles the responses.
How do I handle opt-outs to stay compliant?
GoHighLevel handles STOP and UNSUBSCRIBE keywords natively: when a contact sends either word, they are immediately removed from all active sequences and will not receive further messages. You need to make sure your opt-out process is documented, tested, and that you never manually re-add a contact who has opted out. We include opt-out testing in every build before it goes live.
How long does it take to see results from an SMS automation build?
For reactivation campaigns targeting dormant contacts, results typically appear within the first week. For appointment reminder sequences reducing no-shows, the impact shows up in the first billing cycle. For onboarding sequences converting new leads, you are looking at a 30-to-60-day window to see meaningful conversion data. All three of these were true for the client build described in this post.
About the Author
Brian is the founder of Omnibus Victis AI, an AI automation agency based in Frederick, MD. He builds AI agentic automation systems for small businesses and nonprofits.
