Stop renewing seats nobody uses.
Enter the seats you bought, the seats people actually use, and the per-seat price. Get a private, defensible estimate of avoidable subscription spend before your next renewal conversation.
How many unused SaaS seats am I paying for? · vs. Zylo · vs. Vendr · vs. a spreadsheet
Your review
Common questions
What counts as a “used” seat?
Whatever your own review decides, and the definition is the whole game. A seat assigned to someone who left, a seat held for a contractor whose project ended, a seat that has not seen a login in ninety days — all of them are provisioned and billed, and none of them are used in any sense your finance team would recognise. Most vendor admin consoles will export last-login per user; that export, not the assigned-seat count, is the number to type here.
Why does it show both a remaining-term figure and an annual one?
Because they answer different questions. The remaining-term figure is what the current contract still commits you to — on the worked example, 6 unused seats at $18 with 4 months left is $432 you are going to pay regardless. The annual figure, $1,296, is what those same seats cost if you renew at the same count. The first is usually sunk; the second is the one you can actually act on, and it is why a seat review is worth doing before the renewal conversation rather than after it.
What if we are over the purchased count instead of under?
Then the tool prices the overage rather than the saving, and that is often the more urgent number. Overage is commonly billed at list plus a contracted premium, so there is a field for that premium — leave it at 0% if your agreement charges plain list. Being over is not necessarily bad; it can mean the product is working. It just should not be a surprise on the true-up invoice.
Does this tell me what to do at renewal?
No. It sizes the number so you can decide, and a contracted seat minimum — enter it in the field above — is already subtracted from what counts as droppable, so it will not tell you to cut below a floor your agreement enforces. It still cannot see step pricing: dropping from 20 to 14 may not save what the per-seat math implies if it crosses a volume pricing tier, and a seat released today may have to be re-bought at a worse rate in six months. Read your own agreement for true-up timing and whether reductions are permitted mid-term at all — many contracts allow additions any time and reductions only at renewal.
What does the contract seat minimum field do?
It caps how many of the unused seats the tool treats as actually droppable. Some agreements will not let the seat count fall below a floor at renewal no matter how low usage is — enter that floor and the avoidable figures shrink to match what you can really cut. On 20 purchased, 14 used, and a 17-seat minimum, the tool still reports 6 unused seats but only 3 as droppable, because the other 3 are locked in by the minimum regardless of usage. Leave it at 0 if your agreement has no floor.
Can I use this across several tools at once?
Run them one at a time and add up the annual figures. Each subscription has its own price, term, and overage treatment, so averaging them together hides the one that matters. In practice a handful of tools usually account for most of the waste, and doing them individually is what makes that visible.
Is my data uploaded anywhere?
No account and no network requests — the calculation runs entirely in your browser. A saved scenario stores only the totals you typed and stays in this browser; reset deletes it. The shareable link carries the same totals in the URL itself, so a scenario is only shared with whoever you send that link to — nothing is uploaded to a server to make the link work. There are no cookies and no analytics vendors, and the anonymous feature counter is local and can be turned off below. Seat counts and prices are commercially sensitive, which is exactly why none of this leaves the page.
Why does it ask for a renewal date and a notice period?
Because a seat reduction usually cannot happen just because usage is low — most contracts allow it only at renewal, and many require written notice a set number of days before that renewal or the agreement auto-renews at the full purchased count regardless of usage. Enter the renewal date and that notice window (leave both blank if you don’t know or your agreement has none) and the tool checks whether the deadline has already passed. If it has, the saving above is not avoidable this cycle — it tells you that plainly instead of showing a number you cannot actually act on, and estimates when the next window opens assuming an annual term.