Two-Way SMS in GoHighLevel: Setup for Sales Teams That Actually Use It
GoHighLevel's two-way SMS is one of its strongest features, but most setups are configured wrong and the team ends up frustrated. Here's how to set it up so reps actually use it.
Haroon Mohamed
AI Automation & Lead Generation
Why two-way SMS matters for sales
For service businesses, SMS dominates response rates over email by a meaningful margin. Open rates on SMS are 95%+ versus 25-40% on email. Response rates are 30-45% versus 5-15%. Time-to-first-response is minutes versus hours.
If your sales team isn't using SMS as a primary channel for prospect communication, you're leaving substantial conversion on the table.
GoHighLevel's two-way SMS feature is one of the platform's strongest capabilities — when set up correctly. The most common implementation I see in client accounts is technically functional but practically unused, because the configuration produces friction the team routes around.
This is the setup that actually gets used.
What "two-way SMS" actually means in GHL
Two-way SMS means: a phone number can both send and receive text messages, with the conversation visible inside GHL on the contact record. Reps see incoming SMS from leads in the conversation view. They reply directly from GHL. Outgoing automation messages and human messages live in the same thread.
The alternative — one-way SMS — only sends. Replies bounce or go to a black hole. This was acceptable a decade ago and isn't acceptable now. Don't run one-way SMS for a service business.
Step 1: Provision the right phone number
Where most setups go wrong starts here. Several considerations:
Local vs. toll-free. For most service businesses, a local number performs better than a toll-free. Local numbers feel personal; toll-free numbers feel like spam. The exception: nationwide brands where a local number would feel mismatched.
Number type and SHAKEN/STIR registration. In 2026, US carriers heavily filter SMS from unregistered or poorly-registered numbers. GHL phone numbers need to be registered through 10DLC (for application-to-person SMS) or with appropriate trust scoring. Skip this and your messages land in spam folders or get blocked entirely.
One number per use case, not one number per rep. A common mistake: provisioning a separate number for each sales rep. This sounds clean but creates problems:
- Each number needs separate 10DLC registration
- Numbers get associated with rep tenure (they leave, you lose the number's reputation)
- Conversation routing becomes more complex
The pattern that works for most teams: one or two main numbers, with conversations routed to the appropriate rep via assignment within GHL.
Step 2: Configure the conversation assignment
When an SMS comes in, who sees it? Default behavior in GHL: the assigned user on the contact gets notified.
For sales teams, you want:
- New leads: SMS routes to whoever is on lead duty (round-robin, or specific rep, or shift-based)
- Existing leads: SMS routes to whichever rep owns the contact
- Unidentified senders (someone texts the number who isn't in the system): Routes to a designated rep or shared inbox
The configuration:
- In sub-account settings, enable the "Conversation Notifications" appropriate to your team structure
- Set rep notification preferences (push, email, in-app) — most reps want push notifications for SMS
- Set up a "Lead Owner Update" workflow that assigns new contacts to the right rep based on your routing logic
- Test with a few inbound messages from your phone to verify routing
Step 3: Set the messaging rules of engagement
Two-way SMS without rules is chaos. The most common failures I see:
No business hours awareness. Lead texts at 11pm; rep gets pinged. Or rep texts back at 11pm because they saw the notification. Both are problems.
Unbounded thread length. A single conversation goes 50+ messages over weeks; nobody knows what was said. Conversations need a natural end-state (booked, lost, parked).
Multiple reps in the same thread. Without ownership clarity, multiple people start replying to the same lead, looking unprofessional.
No template usage. Reps re-typing the same response over and over because no templates are configured.
The fixes:
- Configure business hours in GHL. Outside hours, automated responses go out ("Thanks for reaching out, we'll be back to you in the morning") and rep notifications can be silenced or escalated.
- Set up a workflow that closes conversations when a deal is marked closed-won or closed-lost. Status visible to the team.
- Train on ownership. When a rep responds to a thread, the contact's owner becomes them. No one else replies in that thread.
- Build templates for the 8-12 most common SMS responses your team sends. Quick-reply selection from GHL's conversation view.
Step 4: Set up the automation/human handoff
Where automation and humans meet is a common friction point. Automated messages should feel different from rep messages or the trust breaks.
The pattern:
- Automated messages signed differently. Outbound automation might say "— Sent automatically by [Company]" or have a different sender name format. Reps' messages are clearly from a person.
- Automation defers to humans when in conversation. If a rep is actively conversing with a lead, automation pauses for that contact. GHL has settings for this; use them.
- Reps can pause automation manually. When a rep needs to handle a situation that doesn't fit the automated path, they can suspend automated messages on that contact with one click.
Without this discipline, leads receive automated marketing nudges in the middle of an active conversation with a rep, which is jarring and unprofessional.
Step 5: Define what counts as a "valid lead text"
Some SMS replies are deal-relevant. Some are autoresponders, opt-out requests, or wrong-number responses. Treating all of them as actionable wastes rep attention.
Configuration that helps:
- Auto-detect opt-out keywords ("STOP", "UNSUBSCRIBE"). GHL has DNC handling but verify it's configured. Don't text people who opted out.
- Filter known autoresponder patterns. "Out of office" responses, vacation autoresponders, "this number is no longer in service" don't need rep attention. A simple workflow can tag and silently archive these.
- Surface legitimate customer responses. Real questions, scheduling responses, qualification answers — these should ping reps immediately.
This is the difference between "100 SMS notifications per day, mostly noise" and "20 SMS notifications per day, all worth reading."
Step 6: Build the SMS templates that reps will actually use
If templates are buried, complicated to insert, or don't fit the situation, reps don't use them. They retype the same responses over and over instead.
Templates that get used:
- Initial response to inquiry. "Hi [first name], this is [rep] from [company]. Thanks for reaching out about [service]. Got a few minutes to chat about what you're looking for?"
- Booking link share. "Here's my calendar — pick whatever time works: [link]"
- Soft follow-up after no response. "Hey [first name], just wanted to bump this up in case my last text got buried — still good to chat?"
- No-show recovery. "Looks like we missed connecting earlier. Did something come up? Happy to reschedule."
- Post-call follow-up. "Great talking just now. As discussed, here's the proposal: [link]. Let me know if questions come up."
Aim for 10-15 templates covering 80% of common situations. More than that and reps can't find what they want; fewer than that and the most common cases aren't covered.
What good SMS usage looks like
A team using two-way SMS well shows specific patterns:
- Average reply time on inbound SMS under 15 minutes during business hours
- Reps initiating SMS to leads after voice/email touchpoints (multi-channel cadence)
- Templates inserted but customized — not copy-paste blasts
- Conversation context preserved across days (a rep can pick up a stalled thread two weeks later and continue naturally)
- Clear ownership — leads aren't getting messages from multiple reps simultaneously
Teams that don't use SMS well show the opposite: long delays, generic copy-paste responses, abandoned threads, and unclear ownership.
Common pitfalls
Things that consistently break SMS programs:
Not registering for 10DLC. Carriers will throttle or block your numbers. Just register.
Sending from a number that's also used for cold outbound. Compliance separation matters. Don't mix sales reply numbers with cold-outreach numbers.
Letting threads go stale without resolution. Open threads accumulate. Pipeline becomes impossible to read. Build a process to close threads.
Texting outside business hours. Annoys leads. Looks unprofessional. Use scheduling.
Treating SMS as broadcast. It's a conversation channel, not a newsletter channel. The compliance and tone are different.
Compliance reality
US SMS compliance has tightened significantly over the past few years:
- TCPA still applies — express written consent for marketing SMS
- 10DLC registration is effectively mandatory
- Opt-out handling must be honored
- Some jurisdictions (CA, others) have additional requirements
Make sure your SMS program is compliant. The financial penalties for noncompliance are significant and class-action exposure is real.
If you want help configuring two-way SMS in GoHighLevel for a sales team that actually uses it, let's talk.
Need This Built?
Ready to implement this for your business?
Everything in this article reflects real systems I've built and operated. Let's talk about yours.
Haroon Mohamed
Full-stack automation, AI, and lead generation specialist. 2+ years running 13+ concurrent client campaigns using GoHighLevel, multiple AI voice providers, Zapier, APIs, and custom data pipelines. Founder of HMX Zone.
Related articles
GoHighLevel Snapshots vs. SaaS Mode: Which Is the Right Agency Model in 2026?
If you're running an agency on GoHighLevel and thinking about scale, you have two business models available within the platform: **Path 1: Snapshot-based agency.** You hold the agency relationship wi…
GoHighLevel Trigger Links: The Underused Feature for Tracking Lead Engagement
A trigger link in GoHighLevel is a trackable URL that, when clicked by a contact, fires a workflow or applies a tag. From the recipient's perspective it looks like a normal link. Behind the scenes, G…