How to Prevent Client Support Tickets From Going Stale
A ticket going stale is rarely a decision. It is assigned during a busy morning, it is honestly less urgent than the production incident next to it, and then it is Monday and the client is writing "any update?" in capital letters. The fix is not a stricter attitude, it is a handful of mechanics that make silence visible before the client notices it.

Assignment is not progress
Most helpdesks treat "assigned" as a healthy state. For a development team it is the least informative status there is: it tells you a name is attached, not that anything is happening. Teams that measure only open versus closed cannot see the gap in between, which is exactly where clients lose confidence.
Two statuses deserve separate treatment: waiting on us and waiting on the client. A ticket blocked for six days because the client has not sent credentials is fine, provided the ticket says so and somebody is chasing it. A ticket blocked for six days because nobody looked at it is a problem wearing the same label.
Give every ticket one owner, by name
A ticket assigned to a team is assigned to nobody. Queues are useful for intake, but the moment a ticket is accepted it needs a single person whose job it is to move it or say why it cannot move. Rotate the role if you like — many agencies run a weekly triage duty — but the name on the ticket has to be a person.
This is also the cheapest fix available, because it costs nothing technically and removes most of the "I thought you had it" cases in the first week.
Set SLA levels that mean something
An SLA is not a marketing promise, it is a scheduling input. Two numbers matter per priority: how fast someone responds, and how fast it is resolved. Response is the one clients actually judge you on, and the one teams most often leave undefined.
| Priority | Typical meaning | Response | Resolution |
|---|---|---|---|
| P1 | Production down or data at risk | Within the hour, in working hours | Same day, with a workaround if needed |
| P2 | Significant feature broken, workaround exists | Same working day | Within the current sprint |
| P3 | Minor defect or change request | Two working days | Planned into a future sprint |
Those numbers are illustrative: yours should come from the contract you signed, per client. The important properties are that they exist, that they are attached to the ticket rather than a PDF, and that the system warns you before a deadline rather than reporting the breach afterwards. That is what SLA handling on the ticket is for.
Detect the quiet ones automatically
SLA deadlines catch the tickets with contractual clocks. Staleness is broader: a ticket can be inside its SLA and still be quietly rotting. Useful signals, in rough order of value:
- No activity for N days while assigned to someone. The single best indicator, and the easiest to compute.
- Client replied, nobody answered. The last message on the thread came from outside your organisation and is more than a day old.
- Reopened more than once. Repeated reopening usually means the underlying problem was never understood.
- In a sprint that has moved on. The sprint closed, the ticket rolled forward, and nothing has touched it since.
- Estimate far exceeded. Five points of work with twenty points of time logged means something went wrong that nobody escalated.
A daily sweep that surfaces these in one attention report is worth more than any individual notification, because it produces a short list a human can actually work through. Suporta runs that sweep and puts the result on the dashboard.
The fifteen-minute habit that fixes most of it
One person, once a day, at a fixed time, walking the list of tickets that have not moved. Not a meeting, not a status round, a single pass with three possible outcomes per ticket.
- Move it. Do the ten-minute version now, or hand it to someone who can.
- Schedule it. Put it in a sprint with an estimate so it stops being ambient guilt and becomes planned work.
- Say something. If it cannot move this week, tell the client that, with a reason and a date. Clients tolerate delay far better than silence.
The reason this works is that stale tickets are almost always decision debt rather than work debt. Nobody has decided what to do with them. Fifteen minutes of deciding clears more than an afternoon of doing.
Keep the client informed without a meeting
Half of the escalations about stale tickets are not about speed at all. The client does not know what is happening, so they ask, and asking feels to them like chasing. Two mechanisms remove most of that traffic:
- A portal the client can check. One thread per ticket, the status visible, internal notes staying internal. More on that in client portal vs traditional helpdesk.
- A weekly summary. An automatic Friday email per client organisation: completed, new, updated, still open, grouped by project. It takes nobody's time and it pre-empts the Monday question.
When staleness is really a capacity problem
If the same tickets keep going quiet after you have fixed ownership, alerts and triage, the process is not the problem. You are committing to more than the team can deliver, and the backlog is absorbing the difference silently.
That is a planning issue, and it is solved with honest capacity rather than better reminders. If your sprint capacity does not subtract approved leave, public holidays and a realistic support reserve, it is a wish list. See sprint capacity planning for software teams.
Anti-staleness checklist
- check_circleEvery accepted ticket has one named owner, never a team
- check_circlePriorities carry response and resolution deadlines that came from the contract
- check_circleWarnings fire before the deadline, not only on breach
- check_circleA daily report lists everything with no activity, no reply, or a blown estimate
- check_circleSomeone owns fifteen minutes of triage at a fixed time each day
- check_circle"Waiting on client" is a distinct state with a chase date
- check_circleClients can check status themselves and receive a weekly summary
- check_circleSprint capacity reserves time for support, instead of pretending it will not arrive
Related articles
All articles arrow_forward
Helpdesk for Software Agencies: From Client Ticket to Pull Request
A generic helpdesk closes when someone replies. An agency ticket closes when code is merged, tested and billed. That gap is where most agency admin time disappears.

Client Portal vs Traditional Helpdesk for Software Agencies
The question is not which is more modern. It is who can see what, where the history lives, and whether a client can answer "what is happening with my request" without emailing you.

Sprint Capacity Planning for Software Teams
Four developers times ten days is not forty days of capacity. Subtract leave, holidays, support duty and the meetings you already scheduled, and the honest number is often two thirds of that.
