01 · EXECUTIVE SUMMARY
Priority labels weren't changing outcomes

This case study analyzes a simulated IT helpdesk dataset of 1,000,000 tickets logged over November 2023, spanning five categories, four support teams, and four priority levels. The starting business question was simple: is the service desk actually triaging work by priority, and can leadership trust the resolution-time metrics being reported?

The analysis found that average resolution time was statistically flat across every priority level (5.24–5.25 hours), escalation rate was flat at ~50% regardless of team or category, and 30% of tickets — including 30% of tickets marked "Resolved" — had no resolution timestamp at all. None of the fields meant to differentiate how work is handled were actually doing so.

The recommendation isn't a new dashboard — it's three structural fixes: enforce priority-based SLA routing, formalize escalation criteria, and make resolution-timestamp capture mandatory before a ticket can close. Section 11 estimates the impact of the first fix alone.

02 · BUSINESS CONTEXT
A helpdesk that logs everything but enforces little

IT service desks are typically built around a priority system: Critical and High priority tickets are supposed to be triaged and resolved faster than Low priority ones, because they represent bigger business impact — a down production system versus a cosmetic UI bug, for instance. Escalation exists as a safety valve for tickets that a frontline team can't resolve alone.

In this dataset, tickets are logged with a priority, a category, an assigned team, and an escalation flag — the raw ingredients for exactly that kind of differentiated service. Whether those fields are actually influencing how tickets get handled, rather than just being recorded, is the question this case study sets out to answer.

Dataset: 1,000,000 tickets · 11 fields · single month (Nov 2023) · used here as a personal project, not client data.
03 · STAKEHOLDERS
Who this analysis would actually be for
  • IT Service Desk Manager — owns day-to-day triage and staffing, needs to know if priority is being honored operationally.
  • Team Leads (Desktop Support, Application Support, Security Team, Network Team) — accountable for their team's resolution times and escalation patterns.
  • IT Operations Director — reports SLA performance upward and needs to trust the underlying numbers.
  • End users / employees — submit tickets and set an implicit priority expectation when they mark something Critical.
  • Reporting / BI team — builds dashboards on top of this data and inherits any data-quality gaps silently.
04 · BUSINESS PROCESS
How a ticket is supposed to flow

A ticket is created by a user or monitoring system, assigned a category and subcategory (e.g. Security → "Suspicious DLL injection"), given a priority level, and routed to one of four teams. From there it moves through Open → In Progress / Pending / On Hold, may be escalated if the assigned team can't resolve it, and is eventually marked Resolved with a resolution timestamp recorded.

In principle, priority should compress this timeline for urgent tickets, and escalation should correlate with ticket severity and category (e.g. Security incidents escalating more often than routine hardware requests).

05 · BUSINESS QUESTIONS
What leadership actually wants to know
  • Are Critical and High priority tickets being resolved meaningfully faster than Low priority ones?
  • Is escalation applied consistently based on severity, or does it vary by team/category?
  • Can the "average resolution time" metric currently reported upward be trusted?
  • Where should the service desk focus its first improvement effort?
06 · DATA UNDERSTANDING
1M rows, 11 fields, one clear gap

The dataset contains 1,000,000 tickets created during November 2023 (~33,300 tickets/day on average, with low day-to-day variance). Fields: Ticket_ID, Date_Created, Date_Resolved, Category, Subcategory, Priority, Status, Assigned_Team, Resolution_Time_Hrs, Description, Escalated.

DimensionDistribution
CategorySoftware 20.1% · Security 20.0% · Network 20.0% · Hardware 20.0% · Access 20.0%
PriorityLow 25.0% · Medium 25.0% · High 25.0% · Critical 25.0%
StatusResolved 20.1% · On Hold 20.1% · Open 20.0% · In Progress 19.9% · Pending 19.9%
Assigned TeamDesktop Support 39.9% · Application Support 20.1% · Security Team 20.0% · Network Team 20.0%
EscalatedFalse 50.0% · True 50.0%
Date_Resolved30.0% missing (across every status, including "Resolved")

Two things stood out before any deeper analysis: every categorical field is close to perfectly evenly distributed, and Date_Resolved is missing for 30% of tickets regardless of current status — a data-quality issue worth flagging before trusting any resolution-time KPI built on top of it.

07 · ANALYSIS
Slicing resolution time and escalation across every dimension

Average resolution time and escalation rate were compared across Priority, Category, Assigned Team, and the top Subcategories (filtered to those with 500+ tickets, to avoid reading noise as signal).

PriorityAvg. Resolution (hrs)Escalation Rate
Low5.2450.1%
Medium5.2549.9%
High5.2550.0%
Critical5.2550.0%

The same flatness held across Category and Assigned Team, and the subcategory with the single highest escalation rate ("Access denied by SIEM policy") sat at 52.9% — only marginally above the 50% baseline, and within the range expected from sampling noise at ~2,000 tickets per subcategory. No dimension showed a meaningful, consistent effect on either resolution time or escalation.

08 · KEY FINDINGS
Three findings, all pointing the same direction
FINDING 1

Resolution time does not vary by priority. Critical tickets took 5.25 hours on average to resolve — statistically the same as Low priority tickets at 5.24 hours. A four-level priority system is producing a single, undifferentiated outcome.

FINDING 2

Escalation is a coin flip, not a decision. Every team and category escalates almost exactly 50% of tickets. If escalation were tied to genuine severity or team capability, at least some teams or categories should escalate noticeably more or less than others.

FINDING 3

Resolution-time reporting has a 30% data gap. Even among tickets marked "Resolved," 30% have no resolution timestamp. Any average resolution-time figure currently being reported is built on 70% of the relevant tickets, silently.

09 · ROOT CAUSE ANALYSIS
Why the numbers look this way

Root cause of Finding 1 — no SLA-driven routing. Priority appears to be a field that's captured but not operationalized: there's no evidence of a queueing or routing rule that pulls Critical tickets to the front. Tickets are most likely worked in the order they arrive (or another priority-blind order), regardless of the label attached to them.

Root cause of Finding 2 — undefined escalation criteria. A flat ~50% escalation rate across every team and category is the signature of a decision with no consistent rule behind it — most consistent with escalation being left to individual agent judgment rather than tied to defined severity thresholds or ticket type.

Root cause of Finding 3 — no closure validation. The ticketing system allows a ticket to move to "Resolved" without requiring a resolution timestamp to be entered. This is a process/system gap, not a random data error — it happens at a constant ~30% rate across every status, suggesting a systemic missing step rather than occasional human error.

10 · RECOMMENDATIONS
Three structural fixes, in priority order
  • 1. Introduce tiered SLA targets, enforced by routing. Define explicit targets per priority (e.g. Critical: 2h, High: 4h, Medium: 8h, Low: 24h) and route/queue tickets so Critical work is actually surfaced first — not just labeled first. Owner: Service Desk Manager.
  • 2. Formalize escalation criteria. Replace ad-hoc escalation with documented thresholds tied to category and severity, and require an escalation reason code. This also makes Finding 2 auditable going forward. Owner: Team Leads.
  • 3. Make resolution-timestamp entry mandatory to close a ticket. A one-line system validation rule closes the 30% data gap at the source, and every resolution-time KPI downstream becomes trustworthy without extra reporting work. Owner: ITSM platform admin.
  • 4. Monitor with three new KPIs (below), reviewed weekly by the Service Desk Manager for the first quarter after rollout.
SLA %
SLA COMPLIANCE RATE, BY PRIORITY TIER
ECI
ESCALATION CONSISTENCY INDEX (VARIANCE ACROSS TEAMS)
100%
RESOLUTION-TIMESTAMP CAPTURE RATE (TARGET)
11 · BUSINESS CASE
Estimating the impact of SLA-based routing

This estimate covers Recommendation 1 only (tiered SLA routing for Critical tickets), since it's the fix most directly tied to a measurable time saving. Figures are illustrative and assumption-labeled, shown per 1,000 Critical tickets so they can be rescaled to a real organization's actual ticket volume.

MetricCurrentTarget (assumption)
Avg. resolution time — Critical5.25 hrs2.5 hrs
Time saved per Critical ticket2.75 hrs
Hours saved per 1,000 Critical tickets2,750 hrs
At an assumed €45/hr loaded support cost≈ €123,750 saved per 1,000 tickets
Assumptions: (1) target resolution time of 2.5 hrs for Critical tickets is a planning estimate, not derived from this dataset; (2) €45/hr is an illustrative loaded cost figure, not a real organization's actual rate; (3) this dataset's Critical ticket volume (~250,000/month) reflects its synthetic scale and is not presented as a realistic single-organization volume — the per-1,000-ticket figures above are the transferable part of this estimate.
12 · DASHBOARD
The five views this analysis was built on
Average resolution time by priority, showing a flat ~5.25 hours across all four levels
Escalation rate by team, showing all four teams clustered around 50%
Resolution-date capture rate by status, showing roughly 70% across every status
Ticket volume by category, showing roughly even distribution across five categories
Daily ticket volume across November 2023, showing consistent daily volume with no strong trend

More views — including a live-filterable version of this dashboard — are in the Dashboard Gallery.

13 · LESSONS LEARNED
What this case study reinforced
  • "No variation" is a finding, not a dead end. It would have been easy to conclude "priority has no effect, nothing to report" — the more useful read was asking why a field that should create variation isn't.
  • Data completeness has to be checked before anything is built on top of it. A resolution-time KPI is meaningless if a third of the underlying tickets are silently excluded from it.
  • Structural findings transfer even from a simulated dataset. The specific numbers here are illustrative, but the pattern — fields recorded without being operationalized — is one I look for in real operational data too.