E-commerce

How to handle customer questions about wait times before reaching a human agent

How to handle customer questions about wait times before reaching a human agent

July 1, 2026

"How much longer?" "No one has answered me for 15 minutes." "I'm giving up if there's no agent." Three tickets where the human agent wait time lacks proactive communication.

The e-commerce queue wait support covers honest ETA, queue position, updates during the wait, and alternatives, distinct from unavailability (#917) and handoff rules (#12).

This guide #919 deploys policy AGENTWAIT-SUP, flow AW-1 to AW-8, and matrix AGENTWAIT-MAP. Pairs with the future customer service waiting queue bot (#920).

Summary

Why does waiting for an agent generate tickets?

Customer in queue after handoff, ETA exceeded, or prolonged silence. Agent does not communicate or minimizes the wait. Without AGENTWAIT-MAP, confusion with escunav_ #917 or handoff_ #12.

Five typical agent waiting frictions

  • Vague ETA: announced delay is imprecise or missing

  • No updates: silence during the wait

  • ETA exceeded: broken promise leads to frustration

  • Opaque position: customer does not know where they are

  • Threatened abandonment: leaves without resolution

DTC Retail Example

DTC Fashion, 7 agentwait_ tickets/month. After AGENTWAIT-MAP: agentwait_resolution_rate 86%, queue abandonments -38%.

AGENTWAIT #919 vs ESCUNAV #917, HANDOFF #12, NOHUMAN #918 and bot #920

Seven queue contents, seven distinct angles.

Quick matrix

#917 = no human available. #919 = customer already waiting in queue.

Promise #919

AGENTWAIT-SUP policy, AGENTWAIT-GATE tree, 8 macros, ETA queue registry, agentwait_resolution_rate KPI.

Which agentwait_* typologies should be classified?

Action-oriented classifier: eta ≠ position ≠ exceeded ≠ abandon.

Eight AGENTWAIT-MAP typologies

  • agentwait_eta_question: how much longer

  • agentwait_queue_position: position in the queue

  • agentwait_no_update: no updates while waiting

  • agentwait_eta_exceeded: promised delay exceeded

  • agentwait_abandon_threat: threat to leave without resolution

  • agentwait_callback_instead: prefers callback rather than waiting

  • agentwait_bot_while_waiting: can bot help while waiting

  • agentwait_vip_priority: VIP client priority waiting

AGENTWAIT-SUP Policy: agent rules and queue registry

The AGENTWAIT-SUP policy establishes proactive communication and an honest ETA during wait times.

Six AGENTWAIT-SUP rules

  1. ETA-HONEST: delay from live queue register

  2. UPDATE-PROACTIVE: message if wait > threshold

  3. EXCEEDED-ACKNOWLEDGE: acknowledge exceeded ETA

  4. ABANDON-RETAIN: alternative before abandoning

  5. BOT-WHILE-WAIT: bot can qualify queue need

  6. VIP-PRIORITY: priority queue if segment is documented

Minimum queue register

  • ETA calculation: wait estimation method

  • Threshold update: minutes before auto-message

  • Position display: show or hide queue rank

  • Callback option: alternative for long wait

  • Bot triage wait: qualification during wait time

Flow AW-1 to AW-8: processing pending questions

Eight sequential steps, SLA agentwait_eta_exceeded < 15 min response.

Flow AW-1 to AW-8

  1. AW-1 Triage: active waiting vs unavail #917 vs handoff #12?

  2. AW-2 Classify: agentwait_* via AGENTWAIT-MAP

  3. AW-3 Queue lookup: ETA position live registry

  4. AW-4 Communicate: macro AGENTWAIT ETA position

  5. AW-5 Exceeded: EXCEEDED-ACKNOWLEDGE if exceeded

  6. AW-6 Retain: callback bot_while_waiting abandon

  7. AW-7 Priority: VIP escalate if applicable

  8. AW-8 Close: KPI agentwait_resolution_rate + brief #920

Eight AGENTWAIT-* macros ready to paste

Aligned macros ETA update exceeded retain.

AGENTWAIT-* Library

  • AGENTWAIT-ETA: “Estimated wait: {{ETA}}. We will keep you updated.”

  • AGENTWAIT-POSITION: “Queue position: {{rang}}. Next agent in {{ETA}}.”

  • AGENTWAIT-UPDATE: “Update: {{statut}}. Revised time: {{ETA}}.”

  • AGENTWAIT-EXCEEDED: “Time exceeded, we are prioritizing your case.”

  • AGENTWAIT-CALLBACK: “Callback offered: {{créneau}}. Reference: {{id}}.”

  • AGENTWAIT-BOT-HELP: “In the meantime, I can help you with {{sujet}}.”

  • AGENTWAIT-RETAIN: “Before you go: {{alternative}}. Case: {{id}}.”

  • AGENTWAIT-DONE: “Summary: {{question}}. Queue status: {{résolution}}.”

AGENTWAIT-GATE Tree and reducing perceived wait time

Decision tree before leaving client without ETA or abandonment retention.

AGENTWAIT-GATE

  1. Human unavailable not in queue? → handoff ESCUNAV #917

  2. Initial handoff question? → handoff #12

  3. ETA requested? → ETA POSITION from registry

  4. ETA exceeded? → EXCEEDED + queue priority

  5. Abandonment threatened? → RETAIN callback bot_help

  6. VIP? → priority queue #26

Perceived wait

Proactive UPDATE every {{seuil}} min. BOT-HELP qualifies need: reduces frustration and speeds up agent handling. Brief #920 bot queue.

KPI, QA and handoff to bot #920

Measuring AGENTWAIT detects false ETAs and abandons without retention.

Four AGENTWAIT KPIs

  • agentwait_resolution_rate: waits handled without abandonment

  • agentwait_eta_accuracy: % ETA respected ± margin

  • agentwait_proactive_update_rate: % waits with UPDATE

  • agentwait_abandon_rate: low target queue abandonments

Handoff #920

Export AGENTWAIT-MAP to bot: agentwait_eta_question bot_while_waiting priority. Guardrail QUEUE-REGISTRY-GATE brief #920 ETA triage widget.

Edge cases: heavy BFCM queue, agent connects then disconnects, email chat

Three cases outside the standard flow.

BFCM queue 30+ min

Honest extended ETA. Massive CALLBACK + BOT-HELP triage. Enhanced proactive communication.

Agent disconnects mid-wait

EXCEEDED + UPDATE + queue reassignment. Do not make the client start from scratch without explanation.

Async email wait

Distinguish live chat queue vs email ticket. SLA #101 for async distinct AW flow.

Agent training: 20 minutes AGENTWAIT

Module: ETA UPDATE EXCEEDED RETAIN, distinguishing #917 #918 #920.

Exercises

  • Ticket A: "how many more?" → ETA POSITION

  • Ticket B: delay exceeded → EXCEEDED priority

  • Ticket C: "I give up" → RETAIN CALLBACK

How Qstomy structures AGENTWAIT in your stack

Qstomy route agentwait_*, sync ETA file live, macros UPDATE RETAIN and handoff #920 queue gate.

Three building blocks

  • Routing: intent queue_wait vs escalation_unavailable

  • Queue registry: ETA threshold update callback triage

  • Bot #920: inform and qualify during waiting time

Scenario: DTC, 7 tickets/month agentwait. Proactive UPDATE, bot #920 triage. agentwait_resolution_rate goes from 68% to 87% in 5 weeks.

AGENTWAIT deployment FAQ and checklist

FAQ

Minimize waiting?
No. ETA-HONEST from queue registry.

Difference #917?
#917 = unavailable human. #919 = customer already in active queue.

Difference #920?
#919 = agent tickets. #920 = triage bot for perceived waiting ETA.

Difference #12?
#12 = handoff moment. #919 = after handoff waiting.

7-day Checklist

  • D1: AGENTWAIT-SUP + AGENTWAIT-MAP + registry queue ETA

  • D2: 8 helpdesk macros

  • D3: routing matrix #917 #918 #12 #101

  • D4: 20 min training for ETA UPDATE agents

  • D5: agentwait_* tags + KPI

  • D6: test eta exceeded abandon callback

  • D7: bot brief #920 QUEUE-GATE

Interlinking

Enzo

July 1, 2026

Convert over 2,000 customers on average per month with Qstomy.

The world’s 1st Shopify AI dedicated to customer conversion

Empowering 200+ e-commerce merchants

Subscribe to the newsletter and get a personalized e-book!

No-code solution, no technical knowledge required. AI trained on your e-shop and non-intrusive.

*Unsubscribe at any time. We do not send spam.

Subscribe to the newsletter and get a personalized e-book!

No-code solution, no technical knowledge required. AI trained on your e-shop and non-intrusive.

*Unsubscribe at any time. We do not send spam.