GUIDE · SERVICE DELIVERY

MSP service-delivery review: escalations, exceptions and recurring work

Reactive operations rarely come from one big failure. They come from three quieter things: work that escalates for the wrong reasons, client-specific exceptions that slow every ticket, and the same problems recurring because nobody owns fixing them. All three are visible in a ticket export if you know where to look.

By The founder of MSP Reboot, who co-founded an MSP in 1999 and ran it until it was sold in 2023.
Published

Pull ninety days of tickets

Ninety days covers a full month-end, a patch cycle or two and enough volume to see patterns, without old processes muddying it. Export from the PSA with these fields, or as many as you have:

  • Client, contact and site
  • Created, first response and closed timestamps
  • Category or type, priority, and source (email, phone, portal, alert)
  • Assigned technician, every reassignment, and the final resolver
  • Time logged, and whether the ticket was reopened
  • Whether it was inside or outside the agreement

If categories are unreliable

Technicians often pick the first category in the list. Before analysing, read a random sample of fifty tickets and re-categorise them by hand. It takes an hour and tells you how far to trust the rest.

Part 1: escalations

An escalation is any ticket that moved to a more senior person than the one who first picked it up. Count them, then find out why each one moved.

Map the path you actually have

  1. List every reassignment chain in the export: first technician, each person it moved to, final resolver.
  2. Count how many tickets ended with the owner or the most senior technician.
  3. Compare that with the written escalation path, if there is one. The difference is the real path.

Classify the reason for each escalation

ReasonWhat it looks likeUsual fix
KnowledgeThe first technician did not know howRunbook, training, pairing on the next one
AccessThey knew how but lacked a password or permissionDocumented, role-based access
AuthorityThey needed approval to spend, schedule or say noWritten decision limits
Client pressureThe client asked for someone seniorExpectations set in the agreement and at onboarding
HabitIt always goes to that personEscalation path enforced by the senior person, not around them

Knowledge escalations are healthy in small numbers. Access, authority and habit escalations are process problems, and they are usually the ones that pull the owner into the queue.

Part 2: client exceptions

An exception is anything done differently for one client: a different backup product, after-hours cover nobody else gets, a custom approval step, a technician who is the only one allowed on the account. Each one makes every ticket for that client slightly slower and slightly riskier, and the costs add up across the queue.

  1. Inventory them. Ask every technician for the client-specific things they have to remember. You will get a longer list than any document holds.
  2. Note where each one came from. A client request, a sales promise, an old tool never migrated, a past incident.
  3. Estimate the effort, not the money. Which exceptions show up in reassignments, longer resolution times or reopens in the export?
  4. Decide one of three things for each: standardise it away, price it as a defined add-on, or keep it deliberately and document it properly.

Exceptions that turn out to be unpriced scope belong in the pricing review.

Part 3: recurring work

Recurring work is the same problem arriving again: the printer at one site, the same backup job failing, password resets for the same users, the monthly report rebuilt by hand. Some is legitimately recurring and should be scheduled; most should not exist.

Find it

  • Group tickets by client and category, then by keywords in the subject line. Sort by count.
  • Look at reopened tickets separately: a reopen is recurring work within a single ticket.
  • Separate alert-generated tickets from human ones. Noisy alerts are recurring work too.

Decide what each pattern needs

PatternQuestion to askTypical decision
Same fault, same clientWhat is the root cause, and who owns fixing it?A small project with a named owner and a date
Same task, every clientIs this maintenance pretending to be support?Schedule it, or automate it
Same request, same usersIs there a training or self-service gap?Documentation or a client-side change
Same alert, no action takenDoes anyone act on this alert?Tune it, or turn it off

A hypothetical example

Hypothetical — not a client and not a result

This is an invented scenario to show how the three parts connect. It is not a real MSP and claims no outcome.

Imagine the export shows that a large share of escalations end with the owner, and most are classified as authority, not knowledge: technicians needed approval to schedule after-hours work for two particular clients. The exceptions inventory explains why. Both clients were promised after-hours changes on request during their original sale, and nobody wrote down the terms. The recurring-work view adds that one of those clients accounts for a cluster of repeat backup failures that get fixed every week and never root-caused.

Three findings, one underlying problem: an undocumented promise. The changes are equally unglamorous: write the after-hours terms into the agreement (and price them, if they were never priced), give the service manager authority to schedule within those terms, and open a small project with an owner to fix the backup fault once.

What the review should produce

One page, not a deck:

  1. The five changes that would remove the most escalations, exceptions or repeat tickets.
  2. For each: who owns it, the date it will be done, and what you will look at to see whether it worked.
  3. A date to re-run the same export and compare, ninety days later.

Repeat the review every quarter. The first one is the hardest; after that it is mostly checking whether last quarter’s five changes held.

Bring the export and your top five to the free hour.

An hour on your own ticket data usually shows where the operational complexity is coming from. You will leave with initial direction, and an honest view of whether a paid diagnostic would add anything.