SaaS sprawl hides in corporate cards, departmental budgets, and “free” tiers that quietly became enterprise invoices. A one-time purge fails because the same teams repurchase the same category six months later. Rationalization is an operating system: inventory, owners, usage, overlap, and a renewal calendar with teeth.
Step 1 — Build a living inventory
Pull SSO logs, expense categories, AP vendors, and browser extension lists. You will find ghosts: tools nobody admits to owning and tools everybody thought IT owned. Assign a business owner and a technical owner to every row—or schedule cancellation.
Step 2 — Measure usage without theater
- Last 30-day active users vs paid seats
- Admin logins (a tool only admins touch is already dead)
- Core workflow: is it in the critical path of revenue or close?
- Integration degree: how many jobs fail if it disappears tomorrow?
Decision grid
| Usage | Strategic overlap | Action |
|---|---|---|
| High | None | Renew, maybe expand, negotiate |
| High | Duplicate category | Pick a winner in 60 days |
| Low | None | Downgrade, annual → monthly, or cut |
| Low | Duplicate | Immediate consolidation |
| Unknown | Any | Find owner or cancel at renewal |
Step 3 — Exit like adults
Export data, remap integrations, communicate the date, and remove SSO before the invoice auto-renews. Leave a read-only archive if legal needs it. The goal is not a smaller spreadsheet of apps—it is fewer places where customer and employee data lives.
Conclusion
Cut SaaS spend by installing ownership and a renewal drumbeat, not by a single spring cleaning. Inventory everything, kill true duplicates, right-size seats, and exit with data hygiene. The stack that remains should be boring, integrated, and obviously worth its invoice.