Как посчитать escalation rate в SQL

Проверь себя · 1/3разбор после ответа
Нужно пронумеровать заказы каждого пользователя по времени покупки, начиная с 1, чтобы найти его 1-й, 2-й, 3-й заказ. Какое выражение подходит?

Зачем escalation rate

Высокий escalation rate означает, что агенты Tier-1 не справляются — их плохо обучили или им достаются слишком сложные тикеты. Низкий escalation rate — это либо всё хорошо, либо сломанный процесс эскалации. Идеальный ориентир: 10–20% тикетов уходит с Tier-1 на Tier-2. Больше 30% — повод разбираться, меньше 5% — возможная скрытая проблема с качеством.

Формула

escalation_rate = escalated_tickets / total_tier_1_tickets

Tier-1 — первая линия поддержки. Escalated — тикет, переданный на Tier-2, в инженерную команду или профильному специалисту.

Escalation в SQL

WITH t1_tickets AS (
    SELECT ticket_id, opened_at, opened_tier
    FROM support_tickets
    WHERE opened_tier = 'tier_1'
      AND opened_at >= CURRENT_DATE - INTERVAL '30 days'
),
escalated AS (
    SELECT DISTINCT ticket_id
    FROM ticket_events
    WHERE event_type = 'tier_change'
      AND new_tier IN ('tier_2', 'tier_3', 'engineering')
)
SELECT
    (SELECT COUNT(*) FROM t1_tickets) AS total_t1,
    (SELECT COUNT(*) FROM escalated WHERE ticket_id IN (SELECT ticket_id FROM t1_tickets)) AS escalated,
    (SELECT COUNT(*) FROM escalated WHERE ticket_id IN (SELECT ticket_id FROM t1_tickets))::NUMERIC * 100
    / NULLIF((SELECT COUNT(*) FROM t1_tickets), 0) AS escalation_rate_pct;

По tier и категории

SELECT
    issue_category,
    COUNT(*) AS t1_total,
    COUNT(*) FILTER (WHERE escalated) AS escalated,
    COUNT(*) FILTER (WHERE escalated)::NUMERIC * 100 / COUNT(*) AS escalation_pct
FROM tier_1_with_escalation_flag
WHERE opened_at >= CURRENT_DATE - INTERVAL '30 days'
GROUP BY issue_category
HAVING COUNT(*) >= 30
ORDER BY escalation_pct DESC;

Категория «billing dispute» (спор по оплате) обычно эскалируется часто — тут нужен бухгалтер. «Password reset» (сброс пароля) — редко, Tier-1 решает сам.

Закрепи формулу escalation rate в Карьернике
Запомнить надолго — 5 коротких сессий с задачами на эту тему. Бесплатно
Тренировать escalation rate в Telegram

Причины эскалации

SELECT
    escalation_reason,
    COUNT(*) AS occurrences,
    AVG(EXTRACT(EPOCH FROM (escalated_at - opened_at)) / 3600) AS avg_hours_before_escalation
FROM escalation_events
WHERE escalated_at >= CURRENT_DATE - INTERVAL '30 days'
GROUP BY escalation_reason
ORDER BY occurrences DESC;

Частые причины:

  • «requires admin access» → выдать Tier-1 админ-доступ
  • «product bug» → подключить инженеров
  • «refund > limit» → согласование с финансами
  • «complex enterprise contract» → подключить аккаунт-менеджера

Частые ошибки

Ошибка 1. Считать эскалацию провалом. Иногда эскалация — это правильное действие: сложный тикет действительно нужен специалисту. Не каждая эскалация плоха.

Ошибка 2. Одна планка для всех категорий. У категории про оплату escalation rate закономерно выше, у сброса пароля — почти 0%. Не сравнивайте категории по абсолютному значению.

Ошибка 3. Сравнивать эскалацию с Tier-1 и с Tier-2. Эскалация с Tier-2 в инженерную команду — это уже другая метрика. Разделяйте их.

Ошибка 4. Считать реопены эскалациями. Reopen — это когда клиент вернулся с той же проблемой. Эскалация — внутренняя передача тикета на другой tier. Это разные события.

Ошибка 5. Игнорировать selection bias. Самые сложные тикеты отдают лучшим агентам, из-за чего их escalation rate выглядит ниже. Стратифицируйте по категории.

Связанные темы

FAQ

Какой escalation rate норма?

Для перехода с Tier-1 на Tier-2 нормой считается 10–20%, для перехода с Tier-2 в инженерную команду — 2–5%. Конкретные цифры зависят от продукта и сложности обращений.

Искажает ли self-service показатель escalation rate?

Да, искажает. Если самообслуживание работает хорошо, простые обращения вообще не доходят до Tier-1 — в поддержку попадают только сложные тикеты, и escalation rate из-за этого выглядит выше.

Можно ли снизить эскалацию через обучение?

Да. Помогают проработанные плейбуки, база знаний и деревья решений, по которым агент Tier-1 доводит типовой тикет до конца сам.

Влияет ли эскалация на CSAT?

Да, влияет в обе стороны. Передача тикета через несколько линий (multi-tier handoff) путает и раздражает клиента. Но иногда эскалация, наоборот, приводит к лучшему решению и поднимает CSAT.

Как связаны AHT и escalation rate?

Часто отрицательная: длинный AHT ведёт к большему разбирательству и большему escalation rate.