Skip to content
Try Free →

SLA policies on conversations

Last updated: · 4 min read

What an SLA policy defines

An SLA policy specifies two clocks per conversation:

  • First response time. From customer message arrival to first agent (or bot) response.
  • Resolution time. From conversation start to "resolved" status.

Policies vary by channel, priority, and audience tag. Examples:

  • Chat, high-priority Enterprise customer. First response 2 minutes; resolution 1 hour.
  • Email, standard customer. First response 4 hours; resolution 24 hours.
  • WhatsApp, anonymous visitor. First response 5 minutes; resolution 4 hours.

SLA policies are workspace-scoped and apply to all conversations matching their conditions. Available on Business and above. Business+

Creating an SLA policy

Four-step setup:

  1. Open Conversations > SLA Policies > Create Policy.
  2. Name the policy (e.g., "Enterprise high-priority chat").
  3. Define conditions that trigger this policy:
    • Channel(s)
    • Priority level
    • Audience tag (e.g., enterprise_customer)
    • Business hours vs after-hours
  4. Set the targets:
    • First response time (minutes or hours)
    • Resolution time (minutes or hours)
    • Escalation threshold (when to alert: typically 75% of target elapsed)

Save. The policy applies to new conversations matching the conditions within 30 seconds.

Policy priority and matching

Multiple policies can match a single conversation. Resolution order:

  1. More specific conditions win. A policy matching "Enterprise + chat + business hours" beats one matching "chat".
  2. Higher priority field wins for ties. Set priority 1 to 100 per policy; higher wins.
  3. Default policy. A workspace-level fallback policy covers anything not matched by a specific one.

Use the Policy Tester under SLA Policies to simulate which policy a sample conversation would receive.

What the bot does for SLA

The bot's first answer counts as the first response for SLA purposes:

  • Bot answers within 1 to 2 seconds. First-response SLA is essentially always met when the bot handles a conversation.
  • Escalated to human. The clock pauses during bot-only turns and restarts when the conversation joins the human queue.
  • Mixed bot and human. SLA tracks the human-side response time only.

This means: enabling the bot effectively guarantees first-response SLA compliance for the majority of conversations.

Breach detection and alerts

At the escalation threshold (default 75% of target elapsed):

  1. The conversation enters "SLA risk" state.
  2. Visual indicator in inbox (orange clock icon).
  3. Optional notifications fire:
    • In-app banner for assigned agent
    • Email to assigned agent
    • Slack alert to a configured channel
    • Webhook event conversation.sla_risk to a configured endpoint

If the target elapses without resolution, the conversation enters breach state:

  • Red clock icon.
  • Optional auto-escalation (reassign to senior agent, raise priority).
  • Webhook event conversation.sla_breached fires.

Business hours

SLA clocks can pause outside business hours:

  1. Open SLA Policies > Business Hours.
  2. Define your team's schedule per time zone.
  3. Choose pause behavior per policy:
    • Pause clock outside hours (typical for email).
    • Don't pause (typical for chat with 24/7 expectations).

Holidays can be uploaded as a CSV or pulled from a Google Calendar integration.

Per-agent SLA reports

Track who's meeting SLA targets and who's not:

  • % first-response on time. Per agent, last 30 days.
  • % resolution on time. Per agent, last 30 days.
  • Average response time. Per agent.
  • Average resolution time. Per agent.
  • Worst-breach incidents. Drill into specific conversations that breached the most.

Reports update every 5 minutes. Export to CSV on Business and above.

SLA policy examples

Pattern 1: Chat-first SaaS support.

ConditionFirst responseResolution
Chat, anyone5 min4 hours
Email, anyone4 hours24 hours
WhatsApp, anyone10 min8 hours

Pattern 2: Tiered customer support.

ConditionFirst responseResolution
Enterprise tag, any channel2 min1 hour
Paid tag, any channel10 min6 hours
Free tag, any channel1 hour48 hours

Pattern 3: Business hours only.

ConditionFirst responseResolutionBusiness hours?
Email, anyone2 hours1 business dayYes (pause outside hours)

API access to SLA state

Terminal window
curl https://api.askvault.co/v1/conversations/conv_xxx/sla \
-H "Authorization: Bearer ak_xxx"

Returns:

{
"policy_id": "sla_enterprise_chat",
"first_response_target_seconds": 300,
"first_response_elapsed_seconds": 87,
"first_response_state": "ok",
"resolution_target_seconds": 3600,
"resolution_elapsed_seconds": 1245,
"resolution_state": "at_risk"
}

Useful for embedding SLA status in your own dashboards or alerting tools.

Limits

  • SLA policies per workspace. 25 on Business, 100 on Enterprise.
  • Conditions per policy. Up to 10.
  • Escalation rules per policy. Up to 5.
  • History retention. 365 days standard, 6 years Enterprise.

Common pitfalls

Policy doesn't match expected conversations. Wrong condition specificity. Use the Policy Tester to confirm matching. Often the audience tag isn't applied to the customer's profile.

Breach alerts spam Slack. Threshold too tight. Move escalation alert from 75% to 90% of target.

Bot resolves everything; SLA looks perfect but customers complain. Resolution-by-bot is being counted. Set the policy to track human-resolution only if your team expects to manually resolve.

Holiday days not respected. Holiday calendar not uploaded or out-of-date. Check Business Hours > Holidays for current year.

FAQ

Does the SLA clock pause when a customer doesn't reply?

Yes for resolution time (we don't penalize you for customer delay). No for first response (the customer is waiting on you).

Can SLA policies trigger automation?

Yes. Combine with automation rules. Example: at SLA risk, auto-reassign to senior agent.

What if I don't want SLA tracked on a conversation?

Apply the no_sla audience tag during the conversation. SLA policies with the inverse condition skip these.

Does the bot's response count for first-response SLA?

Yes by default. Toggle off under SLA Settings > Bot Counts For First Response if your team wants only human responses to qualify.

How accurate is the breach detection?

Within 60 seconds. Clocks tick at 1-minute resolution. Sub-minute timing isn't tracked.

Was this page helpful?