SaaS License Renewal Tracking: How to Stop Overpaying in 2026
Gartner estimates that the average enterprise wastes roughly 30% of its SaaS spend on unused licenses, duplicate tools, and shadow IT. BetterCloud puts the application count at 473 SaaS apps for the median large enterprise. Both numbers point in the same direction: most of the money is being spent on things nobody is actively using — and most of it is auto-renewing.
The fix is not a tool. It is a discipline: visibility, utilisation, renewal calendar, negotiation. Here is how the operators we work with run it.
~30%
of SaaS spend wasted on unused or duplicate licenses
473
is the median SaaS app count for large enterprises
69%
of B2B software contracts include an auto-renewal clause
Step 1: Find every SaaS subscription (yes, every one)
Most companies underestimate their SaaS portfolio by 30–50%. The visible ones are in finance's vendor list; the invisible ones are on department credit cards, freemium accounts that quietly went paid, and tools an old employee signed up for that nobody has touched in six months.
How to find every SaaS subscription
- ✓
Pull every line item from AP / corporate-card statements for the last 18 months
- ✓
Pull every app authorised through your SSO (Okta, Google, Microsoft)
- ✓
Pull every domain that has ever received a "your renewal is coming up" email
- ✓
Survey every department head — "what tools does your team use?"
- ✓
Install a SaaS-management discovery tool if you have over ~50 apps (Zylo, BetterCloud, Stitchflow, Spendflo)
- ✓
Reconcile all four lists; resolve duplicates
💡 Pro Tip
Search your corporate inbox for the phrase "renewal" over the last 12 months. You will find tools you forgot you owned.
Step 2: Measure utilisation — not headcount
"We bought 200 seats" tells you nothing. "We bought 200 seats and 60 have logged in this quarter" tells you everything. For every tool, capture: seats licensed, seats provisioned, seats with activity in the last 30 / 60 / 90 days.
Utilisation metrics that matter
- ✓
Seats licensed vs seats provisioned (gap = duplicates / shelfware)
- ✓
Active users in last 30 days
- ✓
Active users in last 90 days
- ✓
New-user signups in last 90 days (signals growing usage)
- ✓
Feature utilisation if available (Salesforce, HubSpot, etc.)
- ✓
Total cost per active user
⚠️A "low utilisation" threshold to flag for downsizing is typically 50–70% active in the last 90 days. Below 50% and downsizing is almost always defensible.
Step 3: Build the renewal calendar with 90/60/30 gates
Every contract goes on a single renewal calendar — sorted by exit-window date, not by expiry date. For each, set:
Per-contract renewal record
- ✓
Vendor + tool name
- ✓
Annual cost
- ✓
Contract end date
- ✓
Notice / cancellation window (most B2B SaaS is 30–90 days)
- ✓
Auto-renewal terms (term length, price escalator)
- ✓
Named owner — finance or department head
- ✓
Utilisation rating (high / medium / low)
- ✓
Decision intent: renew, renegotiate, consolidate, cancel
Stack alerts at 90, 60, and 30 days before the exit window closes (not before expiry — exit window). At 90 days you have leverage; at 30 days you have urgency; below 30 you have neither.
Step 4: Negotiate from data, not desperation
Vendors know which buyers have a renewal calendar and which do not. The presence of a calendar — and a 60+ day pre-renewal conversation — is itself the leverage. The questions to bring to every renewal call:
Questions to bring to a renewal negotiation
- ✓
What is our actual utilisation vs licensed seats?
- ✓
What is the year-over-year price change, and what justifies it?
- ✓
What is the multi-year commitment discount if we lock in?
- ✓
Do you have a "true-down" clause for unused seats?
- ✓
What features in higher tiers would we use, vs paying for in our current tier?
- ✓
What is the cost of switching to your competitor, and how fast?
💡 Pro Tip
Asking vendors for their utilisation report on you is a power move. Most will produce it. Most will also be surprised you asked.
The three over-renewal patterns we see most often
1. Dev / staging licenses still on annual
Tool was bought for a project. The project ended. The license auto-renewed because nobody decommissioned it. Annual review catches these.
2. Paying for ex-employees
Seat is still licensed even though the user left. SSO did not de-provision in time, or the licensing model is per-user not per-active-user. Reconcile against HR's leaver report every quarter.
3. Duplicate tools across departments
Marketing bought Asana, product bought Jira, ops bought Monday. The cost of the duplication is roughly 2x what consolidating onto one would cost. Surfaceable only with a real inventory.
The 30 days before any renewal
The single highest-leverage habit: a structured 30-day pre-renewal review for every contract over $5k / year.
Pre-renewal review (start 30 days before exit window)
- ✓
Pull utilisation report from the vendor or your SaaS-management tool
- ✓
Survey the team: are we using this? what would we replace it with?
- ✓
Identify duplicate or overlapping tools in the same workflow
- ✓
Get a quote from one alternative (even if not switching) — establish floor
- ✓
Schedule the renewal call before the auto-renewal trigger
- ✓
Document the decision: renew at X, downsize to Y, cancel, switch to Z
Where ExpiryEdge fits in your SaaS calendar
You do not need full SaaS-management automation to start recovering wasted spend. You need the renewal calendar, the owner per contract, the alerts at 90 / 60 / 30 days before the exit window, and the decision audit trail. That is exactly what ExpiryEdge tracks — and most teams find their first quarter of savings pays for several years of subscription.



