Skip to content
Get a free quoteGet a quote
Published
Byline
GoHighLevel Partners Editorial

GoHighLevel’s Conversation SLA feature puts a countdown timer on every inbound thread and turns it grey, orange or red as a reply gets overdue – useful for seeing which lead is about to go cold. What it does not do, as of this writing, is fire a workflow when that timer hits red. HighLevel’s own SLA setup article still says (checked October 17, 2026) that SLA-based workflow triggers will be ‘available in upcoming phases.’ SLA reporting has since arrived, as the SLA Performance Dashboard and SLA widgets, but a breach still cannot start a workflow, so if you want an actual escalation – a Slack ping, a reassignment, a manager alert – you have to build it yourself with a different tool: the Wait action’s User Replied condition. This is the setup for both halves: the native timer, and the escalation it can’t yet trigger on its own.

Verify menu wording against your own account before you configure anything below – HighLevel ships UI changes often, and a support-article screenshot from a few months ago can already be stale.

What the Conversation SLA Actually Tracks

Turn it on under Conversations > Settings > SLA Settings. You get two ways to define the response-time target:

  • Common SLA – one target applies to every channel. Example: every conversation, regardless of source, must get a reply within 60 minutes.
  • Channel-Specific SLA – a different target per channel. SMS and the chat widget get a tight window because customers expect near-instant replies there; email gets a longer one because customers don’t.

For each target you set two thresholds, not one:

Threshold What it does Timer color
Due Soon Warning point before the deadline Turns orange
Overdue The response-time ceiling Turns red

Before either threshold, the timer sits grey – on track, nothing to do. The countdown itself appears in the conversation list next to the contact, and it clears the moment someone replies or manually marks the thread read. It does not track internal team chat, and it only starts counting on messages that arrive after you turn the feature on – it will not retroactively flag your existing backlog.

The Setting Almost Everyone Gets Wrong: What Counts as a Reply

Right next to the thresholds is a setting for which outbound messages actually stop the clock. You get three options:

  • Count every automated message as a valid reply – including a workflow-sent SMS or a Conversation AI response.
  • Count none of them – only a message a human actually typed clears the timer.
  • Count only specific workflows you name.

The default behavior treats Conversation AI replies as valid responses, which stops the timer. That is exactly right if your AI bot genuinely resolves the inquiry, and exactly wrong if the bot just sends a canned ‘thanks, someone will be with you shortly’ – in the second case your SLA looks green while the customer is still waiting on a human. Decide which is true for your account before you leave the default in place; this is the one setting on this page most likely to quietly make your SLA data lie to you.

The Native Gap: No SLA-to-Workflow Trigger Yet

This is the part worth building around rather than waiting on. Today, a breached SLA changes a timer’s color in the inbox and nothing else – it does not add a tag, does not fire a workflow, does not notify anyone outside of a person actively looking at that conversation list. For a solo operator watching their own inbox that might be enough. For an agency with staff assigned to sub-accounts, a color nobody is looking at is not an escalation.

Building the Escalation with the Wait Action

Since the native SLA can’t hand off to a workflow, build the escalation as its own workflow using the Wait action’s User Replied condition, which is a separate mechanism from the Conversation SLA settings above – the two don’t share configuration, so you’re setting the response window twice, once for the visual timer and once for the workflow.

  1. Create a workflow triggered on Customer Replied (or whatever event puts a new inbound message in front of your team – a form fill, a missed call, or an inbound SMS/email).
  2. Add a Wait action and choose the User Replied condition. This holds the contact until a team member replies – not until the reply is merely typed, but until it is actually delivered.
  3. Optionally scope it to the contact’s assigned user, so the wait is watching the right person’s response, not anyone on the team.
  4. Set the timeout to match the channel’s real target – the same number you used for that channel’s Overdue threshold in the SLA settings, so the two systems agree with each other.
  5. Two paths come out of the Wait step: one for the assigned user replying in time, one for the timeout firing first. Build the timeout path as the escalation – notify a manager, reassign the conversation, or add an ‘SLA breached’ tag you can report on later.

Match the timeout to the channel, the same way the Channel-Specific SLA does it on the tracking side:

Channel Typical target Timeout branch action
SMS / chat widget 5-15 minutes Notify manager by internal SMS or email, reassign if still unanswered
Email 60-120 minutes Notify manager, no reassignment – email doesn’t need the same urgency
Facebook / Instagram / WhatsApp 15-30 minutes Notify manager, tag contact for follow-up review

Confirm current numeric limits and channel options for the Wait action’s User Replied condition inside your own workflow builder before finalizing these – HighLevel adds channels to this list periodically and an older guide can undercount what’s actually available now.

Branching the Timeout Without Double-Notifying

The failure mode to avoid: an escalation workflow that fires on every single message instead of once per breach. If the same contact messages three times in an hour and misses the SLA each time, you don’t want the manager paged three times for one conversation. Two guards that keep this workflow honest:

  • Set the workflow to allow re-entry only on a genuinely new inbound conversation, not on every message inside an existing open thread.
  • In the timeout branch, check whether an ‘SLA breached’ tag or note already exists on this conversation before sending another notification – add the tag as the first action in that branch so the second run sees it and stops.

What to Verify in Your Own Account

Three things in this build are account-specific or subject to change, so check them before you rely on this for anything client-facing:

  • Whether business-hours scheduling has shipped for Conversation SLAs – as of HighLevel’s own documentation it had not, meaning a target set for business hours will still count down overnight and on weekends unless that has since changed.
  • The exact list of channels available in Channel-Specific SLA and in the Wait action’s User Replied condition – both are add-on lists that grow over time.
  • Whether your account’s Conversation AI setup should count as a valid SLA reply, per the section above – this is a business decision, not a technical one, and the default may not match how your bot actually behaves.

Frequently Asked Questions

Does the Conversation SLA apply to conversations that were already open before I turned it on?

No. HighLevel’s documentation is explicit that SLAs only apply to new messages arriving after the feature is enabled – it does not retroactively flag your existing open threads, so don’t expect a wave of red timers the moment you turn it on.

Can I set a different SLA for each sub-account?

SLA Settings live inside the Conversations module at the sub-account level, so each sub-account configures its own Common or Channel-Specific targets independently – there isn’t a single agency-wide switch that pushes one SLA to every client account.

Will a breached SLA eventually be able to trigger a workflow natively?

HighLevel’s support documentation says SLA-based workflow triggers are planned for a future phase but were not available at the time this was written. Until that ships, the Wait action’s User Replied condition, described above, is the workaround – check HighLevel’s changelog for whether a native trigger has since landed before you build a new one from scratch.

Does a workflow-sent message stop the SLA timer?

Only if you’ve configured it to. The response-validity setting under SLA Settings lets you choose whether automated messages count as a reply at all, and if so, whether every automation counts or only specific named workflows – the default counts Conversation AI replies as valid, which is worth double-checking against how your bot actually handles inquiries.

We build your GoHighLevel account for you

CRM, pipelines, funnels, SMS and automation — configured for your business, not left for you to figure out.

  • Setup (one-time)$850
  • Ongoing (per month)$38.80
Get my free setup quote

No obligation quote · reply within 1 business day

This site is independently operated and is not officially affiliated with, endorsed by, or sponsored by HighLevel LLC. We do not receive referral commissions — this is our own flat-fee implementation service.

$850 setup, $38.80/mo ongoingGet a quote