0Conventions
- Grain. Every metric is computed at minute grain from agent state timelines, then aggregated minute to 15-minute interval to day to week. Aggregations are weighted by scheduled or staffed minutes. Never average percentages.
- Sources. Amazon Connect first: agent event streams (timestamped state transitions), contact trace records (contacts, timestamps, channel, queue, handle components), and queue metrics. Schedules arrive by import (agent, date, shift segments, segment type). Other platforms map to the same inputs.
- Time zone. All computation runs in the site's operating time zone. Overnight shifts belong to the day the shift starts.
- Channel classes. RT-1 voice (real time, single occupancy). RT-C chat and messaging (real time, concurrent). DEF deferred (email, tasks, cases).
1State taxonomy
Every platform agent state maps to exactly one category per site. The mapping is configuration (the Site Profile), not code. An unmapped state is an error, never a silent bucket.
| Category | Typical states | Staffed | Productive |
|---|---|---|---|
| On-contact | on call, on chat, on task, hold, after-contact work | yes | yes |
| Ready | available, idle, waiting | yes | yes |
| Aux-planned | break, lunch, training, meeting, coaching (when scheduled) | yes | no |
| Aux-unplanned | personal, unscheduled aux codes | yes | no |
| Off | offline, logged out | no | no |
2Adherence (channel-agnostic)
A minute is in adherence when the agent's actual state category is in the allowed set for the scheduled segment type:
| Scheduled segment | Allowed actual categories |
|---|---|
| Work / phones | On-contact, Ready |
| Break / lunch | Aux-planned (matching), Off |
| Training / meeting | Aux-planned (matching) |
| Not scheduled | excluded from the denominator |
Rules. Grace period defaults to 0 minutes (configurable). Supervisor-approved exceptions flip the affected minutes to in-adherence and are reported separately as excepted minutes. Minutes are binary, no partial credit. Daily and team rollups are sum of numerators over sum of denominators.
3Occupancy (channel-aware)
RT-1 voice
Aux time is excluded from the denominator; that is shrinkage's job. Typical target band 75 to 85 percent; sustained above 90 percent is a burnout signal.
RT-C chat: slot model
An agent on 2 of 3 chats for an hour is 66.7 percent occupied, never 200 percent.
DEF deferred: utilization
The honest term for deferred work is utilization, and the page says so.
Blended agents
One timeline; each minute is attributed to the channel of its active work (concurrent chat minutes split per active-session share). Report per-channel occupancy. Any overall figure is a weighted combination shown beside the split, never alone.
4Shrinkage
Shrinkage hours are scheduled time in non-productive categories, split:
- Planned: breaks and lunch, training, meetings, coaching (scheduled aux).
- Unplanned: absence (scheduled, never staffed), tardiness and early departure (scheduled, partially not staffed), unscheduled aux, extended breaks (planned-aux minutes beyond what was scheduled).
5Forecast variance
Real-time channels, per interval
Scored two ways, always together:
- Bias: mean of signed variance over the period (systematic over- or under-forecasting).
- MAPE: mean of absolute variance. Exclude intervals with forecast under 5 contacts and report the excluded count.
Daily variance catches spikes; weekly bias catches drift. A week of small same-signed misses is a forecasting problem even when no single day alarms.
Deferred channels, per day
6AHT
- Voice: (talk + hold + after-contact work) / handled contacts.
- Chat: report both session AHT (session duration / sessions, wall clock) and effort AHT (attributed agent-minutes / sessions). Concurrency makes session AHT alone misleading; effort AHT is what staffing math consumes.
- Deferred: on-task minutes / items completed.
7Decomp: attributing a service-level miss into shares
The question: "We missed service level. Why, in shares?"
Method
Let the staffing requirement R(V, H, S, A) be a function of offered volume V, handle time H (effort AHT for chat), shrinkage S, and adherence A. For voice, R is Erlang-style; for chat, slot math using concurrency capacity. Plan values carry subscript p, actual values subscript a.
- Total gap: G = R(Va, Ha, Sa, Aa) - R(Vp, Hp, Sp, Ap), in FTE or requirement-minutes. Equivalently, the service-level shortfall converted to requirement terms.
- One-at-a-time substitution: for each factor f, Delta_f = R(plan with only f at actual) - R(all plan).
- Interaction residual: epsilon = G - sum of Delta_f. Allocate epsilon to the factors in proportion to |Delta_f| and disclose it ("includes a proportional share of interaction effects").
- Present shares of G as percentages, named in plain language. Factors that moved the other way appear as negative shares ("gave back").
Shares are directional attribution, not blame-grade causality. The method is deterministic and reproducible, and it ends arguments because it is stated up front.
Worked example (synthetic)
Thursday, voice queue, 80/30 target, service level landed at 71.4 percent.
| Factor | Plan | Actual | Delta_f (FTE) |
|---|---|---|---|
| Volume | 4,640 offered | 4,928 (+6.2%) | +3.8 |
| Absence (unplanned shrinkage) | 6.5% | 9.1% | +1.7 |
| Handle time | 6:42 | 6:56 (+14 s) | +0.8 |
| Adherence | 90% | 87.9% | +0.6 |
| Sum of Delta_f | 6.9 | ||
| Total gap G | 7.0 | ||
| Residual epsilon | allocated proportionally | 0.1 | |
Plain-language statement: "Thursday's miss was 55 percent volume over forecast (about 288 extra contacts), 25 percent absence (3 agents out unplanned, 24 scheduled hours lost), 12 percent handle-time drift (+14 s, concentrated in one queue), and 8 percent adherence (extended lunches 12:30 to 1:30)."
Each share pairs with an action that matches its cause: score the forecast weekly; review the attendance pattern; coach the handle-time outliers on the specific driver; stagger the lunch block.
What the method refuses
- A single-cause explanation when more than one factor moved.
- Shares that do not sum to the gap.
- Attribution without the plan values. If the plan is unknown, the decomposition cannot be computed; ask for the forecast, scheduled headcount, planned shrinkage, and target adherence.
8Signals (summary)
"Is today unusual" is answered with a z-score against the trailing 8 to 12 same weekdays, with known event days excluded from the baseline. Thresholds: |z| of 1.5 is watch, 2.0 is alert. Minimum baseline is 6 qualifying weekdays; below that, mark low confidence.
The full triage and coaching method (persistence rules, tenure bands, routing) is part of the Interval product and is not reproduced here. The demo shows it running.
9Edge cases, decided
- Overnight shifts belong to the start date; adherence minutes across midnight attach to the same shift.
- Partial intervals (a shift starting 8:07) use the actual scheduled minutes in the interval as the denominator, not 15.
- Transfers: each leg's handle time belongs to the handling agent; a contact counts once per queue for volume and once per agent for workload.
- Queued callbacks are offered at callback-attempt time, not original request time, and are flagged in the mix.
- Multi-skill agents: volume and occupancy are attributed by the actual contact queue, with no pro-rating by skill assignment.
- Small denominators: any percentage with fewer than 15 minutes or 5 contacts in the denominator carries a low-confidence marker.
10Versioning
| Version | Date | Change |
|---|---|---|
| 1.0 | 2026-07 | Initial: states, adherence, channel-aware occupancy, shrinkage, forecast scoring, AHT, Decomp, edge cases. |
| 1.1 | 2026-07 | Added day-of-week conditioned signals (summary here; full method in product). |
A definition change bumps the version, logs the reason, and states the expected numeric impact (for example, "adherence will read about 1.5 points lower"). Reports cite the version they compute under.
Next: version 2.0 extends the taxonomy to hybrid queues where AI agents and people share the work (containment, escalation against its own forecast, intent-mix-adjusted AHT, and Decomp with a containment factor). Planned for the first quarter of 2027.
License and attribution
These definitions are published under the Creative Commons Attribution 4.0 International license. Copy them into your reporting standards, your data dictionary, or your vendor requirements. Attribute as "Interval definitions v1.1, intervalops.com".