Ask your IT department how many SaaS seats your company pays for across all tools. Not the number of tools, the number of individual seats. I've asked this question to a dozen mid-size companies. Nobody has an answer.
This isn't a criticism of IT teams. It's a side effect of how SaaS purchasing works now. Anyone with a credit card can sign up for a tool. Department heads buy seats for their teams without telling IT. People leave the company and their accounts stay active. The finance team sees line items on a credit card statement but can't tell you which seats are in use.
How the seat count drifts
It starts small. Someone onboards five new support agents to Zendesk. Two of them move to a different role after three months but keep their seats. A manager gets a full agent license even though they only need to review tickets. A contractor's seat stays active after their project ends.
None of these feel like a problem on their own. But after a year or two, a company that needs 50 active Zendesk seats is paying for 75. That's $34,500 per year in waste on Suite Professional, and nobody knows because nobody is counting.
The same thing happens with every per-seat tool: Salesforce, Jira, HubSpot, Slack's paid tier. Multiply the problem across a dozen tools and you're looking at six figures of annual waste for a mid-size company.
Why the Admin Center doesn't help
Zendesk's Admin Center shows you a list of agents. That's it. No utilization data, no "last active" column, no flag for agents who haven't logged in. You can click into each agent's profile one by one to see their last login, but with 80 agents nobody has time for that.
The data exists in the API (last_login_at field), but surfacing it requires someone technical to write a script, run it, parse the output, and do the analysis. Most teams do this once, find the waste, clean it up, and then never do it again.
By the time the next renewal comes around, the problem has grown back. New hires, role changes, departures. It's a tredmill that nobody wants to run on manually.
The offboarding gap
The biggest single source of seat waste is offboarding failures. When someone leaves the company, IT disables their email, revokes their laptop, and removes their SSO access. But individual SaaS tools often get missed, especially ones that aren't behind SSO.
Zendesk is particularly sneaky here because suspending an agent doesn't free their seat. You have to downgrade them to End User. A lot of companies suspend departed employees and assume the problem is solved. The billing doesn't change.
A good user access review process catches this, but most companies only do formal access reviews for compliance reasons (SOC 2, ISO 27001) and don't connect them to cost optimization.
What actually works
The fix is unglamorous. Somebody needs to look at agent utilization data on a regular basis (monthly or quarterly) and flag inactive seats. Then someone with admin access needs to downgrade those agents to End User.
You can do this manually with API scripts and spreadsheets. It works, it's just tedious enough that people stop doing it after the first round. That's why we built LicenseTrim: connect your Zendesk, get an instant breakdown of who's active and who's costing you money, and set up monthly reports so the waste doesn't creep back.
The companies that stay on top of this save 20-40% on their Zendesk bill. The ones that don't keep paying for seats that haven't been touched in months.