Find software at discounts Savings, Analyze spending.

See your SaaS savings live

15-minute call. We'll walk through your actual stack and show you the leak.

← All articles
Cost Optimization23 Jul 2026·18 min read

SaaS License Rightsizing Audit: Cut Dormant Seats by 30%

Most 100-person companies are paying for 130+ SaaS seats they do not need. This guide walks through a concrete audit methodology to surface dormant licenses, calculate the real cost, and systematically reclaim that spend without breaking anything.

Kaustubh Rai

Kaustubh Rai

Co-founder & CTO, Easexpense

IT lead reviewing SaaS license utilization dashboard showing dormant seats across a multi-tool stack on a laptop screen in an Indian office

If you're the IT lead, CTO, or the person-who-handles-everything at a 100-to-300-person Indian company, you've almost certainly signed off on a SaaS invoice that felt slightly off. Not wrong enough to dispute, just... bigger than you'd expect given how many people actually use the tool. That feeling is usually correct.

reclaim unused SaaS licenses they deprovision them. Someone joins, gets 8 tool accesses on day one. Someone leaves, and maybe 2 of those get removed. Over 18 months of hiring and attrition, the gap between seats paid for and seats actively used grows to a number that would embarrass most finance teams if they saw it written down.

90-day SaaS audit plandow IT SaaS auditant licenses, quantify the exact rupee waste, and reclaim it systematically. We'll cover the technical steps, the data sources, the ROI math, and the organizational bits that usually make or break these efforts. If you get through this and want to shortcut the invoice discovery step, there's a fast path at the end.

Why the User-to-License Ratio Drifts Quietly

Three things cause the gap, and they compound each other.

First, onboarding velocity consistently outpaces offboarding. When a new hire joins, provisioning access is urgent, visible, and often part of a checklist. When someone leaves, deprovisioning is an afterthought — handled after the exit interview, after the laptop return, sometimes weeks later. Most SaaS vendor seats don't auto-expire when an employee leaves; they sit there billing indefinitely.

Second, team restructures orphan licenses that were provisioned for a project or role that no longer exists. The product team gets a Figma organization plan when you hire a designer. The designer moves to a different team or leaves. The Figma seats stay. Nobody has a trigger to review them.

Third, trial-to-paid auto-upgrades slip through unreviewed. A product-led growth (PLG) tool starts as a free trial, a team lead upgrades it with a card on file, and by the time finance notices the line item, it's been billing for 6 months on an annual plan that just auto-renewed.

Consider a concrete scenario: a 120-person company that hired 40 people over 12 months and saw 15 exits. If each hire was provisioned for an average of 6 paid tools, and each departure resulted in only 60% of licenses being recovered, you're sitting on roughly 36 orphaned seat-slots across your stack. At an average of ₹600 per seat per month, that's ₹21,600 monthly going nowhere. That number compounds every quarter you don't run an audit.

At SMB scale, HR and IT rarely sync in real time. The person who runs payroll offboarding and the person who manages SaaS admin are usually different people, with no shared workflow connecting a departure to a license removal.

AI SaaS license monitoringly see dormancy rates between 25% and 35% in companies that haven't run a formal utilization review. For PLG tools specifically, 30% dormant is not the worst-case scenario — it's close to the median.

Key takeaway: License drift isn't negligence — it's a structural gap between how companies onboard and offboard people. The gap compounds monthly until someone explicitly closes it.

Which SaaS Tools Carry the Most Dormant Seats

Not all tools accumulate dead weight at the same rate. The pattern splits fairly cleanly by how the tool was originally adopted.

Design tools (Figma, Canva Pro) top the dormancy list. They're typically adopted by one team, then seats get handed out to stakeholders who "might need to comment." Those stakeholders log in twice and never return. Dormancy rates of 40–50% are common in organizations where design wasn't centralized from the start.

Project management platforms (Asana, Monday.com) sit in a similar range. Tools adopted company-wide during a process initiative often see high initial login activity that drops off sharply after the first 60 days. The people who drove adoption are active; everyone else has reverted to Slack and email.

Communication add-ons (Slack paid tiers, Webex, Zoom add-ons) are a subtler problem. Base communication tools have near-100% utilization because they're essential. But the paid tier features — advanced workflows, longer message history, breakout rooms, webinar licenses — go unused by the majority of seats provisioned at that tier.

Contrast this with tools like email clients, payroll software, and HR platforms. These have near-zero dormancy because they're tied to core business functions every person interacts with regularly. There's almost no reclamation opportunity there, so don't burn audit time on them.

A rough INR impact example: 50 dormant Figma seats at ₹800 per seat per month equals ₹40,000 per month in waste, or ₹4.8 lakh annually. That's before you touch any other tool in the stack.

₹4.8L Annual waste from 50 dormant Figma seats at ₹800/seat/month Illustrative example based on Figma India pricing

Microsoft 365 and Google Workspace deserve a separate note. These are almost always over-licensed not just at the seat level but at the plan level. Teams paying for E3 or Business Premium when Business Basic covers 90% of their actual workflow are paying a 35–50% premium per seat for features they've never touched. This is the plan rightsizing lever, and it's often larger than the seat count lever.

Run a free SaaS spend audit — find every hidden subscription

The Audit Methodology: A Five-Step Technical Walkthrough

Here's the process we'd run if we were doing this inside your company tomorrow.

Step 1: Inventory ingestion. Pull invoices via Gmail or Outlook parsing to get a complete list of what you're actually paying for. Don't start with what you think you're paying for — start with the invoice trail. Pair this with admin API exports from each vendor to get current seat counts per tool. The invoice list tells you what exists; the API export tells you what's provisioned.

Step 2: Normalize against active headcount. Get your current active employee list from your HRMS or Google Directory. This is your denominator. If your directory shows 118 active users and your Asana export shows 147 seats, you have a 29-seat gap before you've even looked at activity data.

Step 3: Layer in activity data from vendor admin consoles. This is where the real signal comes in. Slack, Google Workspace, Microsoft 365, and Zoom all expose per-user activity via API or built-in admin reports. Last-login timestamp is a weak signal — pull stronger signals where available: files edited (Google), messages sent (Slack), meetings attended (Zoom), or documents created (Microsoft 365).

Action: Don't rely on last-login alone. A user who logged in 25 days ago to reset their password counts as "recently active" in basic reports but may not have done any real work in 90 days. Use task-level activity where the API exposes it.

Step 4: Flag two categories of dormant seats. First, seats with zero qualifying activity in the last 30 days. Second, and critically, seats provisioned to email addresses that no longer exist in your active directory — these are almost always departed employees whose licenses were never recovered.

Step 5: Build a prioritized reclamation list. Sort by monthly cost per dormant seat, not by total tool cost. A tool with 5 dormant seats at ₹2,000 per seat is a higher priority than a tool with 20 dormant seats at ₹200 per seat, even though the latter looks bigger in headcount terms.

Getting Activity Data Out of the Tools You Already Pay For

The data exists. The question is how much friction it takes to get it out.

Google Workspace exposes per-user activity through the Reports API. You can query last active timestamps, Drive activity, and Gmail send counts per user. Google retains this data for 180 days, which gives you a reasonable activity window. The admin console also has a visual "Inactive users" report, though the API gives you finer control over what counts as active.

Microsoft 365 provides Usage Reports in the Admin Center, with per-user breakdowns for Teams, SharePoint, Exchange, and OneDrive. The catch: Microsoft only retains 30 days of usage data by default unless you've explicitly extended the retention period. If you haven't done this, run the audit soon after enabling extended retention, not before.

Slack has Member Analytics available to workspace admins (on paid plans). You can see messages sent and days active per member. A user who hasn't sent a message in 45 days on a paid Slack workspace is a strong reclamation candidate.

Zoom exposes per-host meeting statistics via the Dashboard API. If a licensed host hasn't started or participated in a meeting in 60 days, the license is likely dormant.

The practical blocker at SMB scale is that most IT admins don't have a script or pipeline to pull and join this data across tools. You'd need to query 4 different APIs, normalize the user identifiers (email addresses often vary by tool), and cross-reference against your HRMS export. It's 2–3 days of engineering work to build once, and then ongoing maintenance as APIs change. This is exactly the kind of task that gets deprioritized in favor of something more urgent — and the audit never happens.

Key takeaway: The activity data you need already exists in vendor admin consoles. The hard part isn't access — it's joining data across systems without a purpose-built pipeline.

ROI Math: What Rightsizing Actually Returns

Let's work through a realistic example for a 200-person company with a 12-tool stack.

Say the audit surfaces the following dormant seat counts across the top tools by spend:

  • Microsoft 365 Business Premium: 18 dormant seats at ₹1,150/seat/month = ₹20,700/month
  • Figma Organization: 22 dormant seats at ₹900/seat/month = ₹19,800/month
  • Asana Business: 15 dormant seats at ₹800/seat/month = ₹12,000/month
  • Slack Pro: 11 dormant seats at ₹600/seat/month = ₹6,600/month
  • Zoom Business: 8 dormant seats at ₹1,000/seat/month = ₹8,000/month

That's ₹67,100 per month in dormant seat cost, or roughly ₹8 lakh annually from seat reclamation alone. Before touching plan downgrades or duplicate tool elimination.

Now factor in the audit cost. If you do this manually, you're looking at 2–3 days of a mid-level IT engineer's time: 20–25 hours at ₹1,500–2,500 per hour comes to ₹30,000–62,500. That's a one-time cost that pays back in under a month. The argument for automating it is that the manual audit degrades immediately as people join and leave, so the payback on automation compounds over quarters, not months.

The second lever is plan rightsizing. A team where 60% of users have never touched Teams channels or SharePoint but are on Microsoft 365 E3 could downgrade to Business Premium and save approximately 35% per seat on those licenses. For 80 seats at that tier, that's a meaningful additional saving on top of seat reclamation.

One important constraint: if you're on annual billing — which most SMBs are because of the 15–20% discount — seat reductions don't take effect until the renewal date. Microsoft, Google, and most major vendors won't prorate mid-contract seat reductions on annual plans. You flag the dormant seats now and schedule the reduction 30–45 days before renewal. Which brings us to the renewal-window problem.

There's also a GST angle worth noting. Indian businesses can claim input tax credit under GST only on SaaS expenditure that maps to active business use. Licenses assigned to inactive or departed employees technically don't qualify for ITC. Cleaning up your license roster before your GST reconciliation period strengthens your ITC position and reduces the risk of a mismatch. If you want to understand how GST-clean invoicing works across a multi-vendor SaaS stack, our pricing page covers how we handle consolidated invoicing for Indian companies.

Book a 15-minute call to see your own savings estimate before your next renewal cycle.

The Renewal-Window Problem and How to Solve It

This is where most audit efforts fail. The team does the work, finds 30 dormant seats in Asana, and then discovers the annual contract renews in 3 weeks. There's no time to implement the reduction before the billing cycle locks, so the finding goes into a document that gets reviewed "next quarter." By next quarter, the urgency has faded.

The correct process is to maintain a rolling 90-day renewal calendar so reclamation decisions are made before the billing cycle locks, not after. If you know Asana renews on 1 September, the utilization review for Asana needs to happen by 1 July at the latest — giving you 30 days to investigate, 30 days to get approval, and 30 days buffer before the vendor needs the seat change confirmed.

Action: Build a renewal calendar with every SaaS contract date and set a 90-day pre-renewal alert. If you don't have these dates in one place, connect your work inbox to our free spend audit — it surfaces renewal dates from invoice history automatically.

For tools billed monthly, the calculus is different. Monthly billing costs more per seat but gives you the flexibility to reduce seats in real time. For high-churn environments or tools where usage is still being evaluated, monthly billing is often worth the premium. For stable, established tools with predictable headcount, annual billing at a discount makes sense — but only if you have the renewal calendar infrastructure to actually act on it.

An automated alert 60 days before renewal fundamentally changes the economics compared to a manual quarterly review. The manual review happens when someone has time; the alert happens because the calendar demands it.

Where AI CIO Fits Into a Continuous Rightsizing Workflow

A point-in-time audit is better than nothing. It's not better than a continuous monitoring loop.

Within 60–90 days of a manual audit, the findings start to degrade. New hires get provisioned. Someone leaves without their licenses being recovered. A team lead signs up for a new tool on the company card. The snapshot you took is already stale.

A continuous loop looks like this: a new hire is detected in your active directory, which triggers a license provisioning check against your approved tool list. A departure is detected, which triggers a seat reclamation workflow automatically, not as an afterthought. Utilization signals from vendor APIs are checked monthly rather than quarterly, and a renewal alert fires 90 days out with a utilization report attached so the decision-maker has the data they need to act.

This is what Easexpense AI CIO does as a continuous layer rather than a one-time exercise. It monitors utilization signals, renewal windows, and headcount changes without requiring the IT lead to manually join three data sources each month. The alternative — a spreadsheet of renewal dates, calendar reminders, and quarterly manual pulls from vendor admin consoles — consumes roughly 8–12 engineer-hours per month for a 20-tool stack. That's before accounting for the times the reminder gets ignored because something more urgent came up.

AI CIO also surfaces something that a manual audit rarely catches: when reclaimed seat counts cross a pricing tier threshold. If you reduce from 85 Microsoft 365 seats to 72, you may drop into a lower pricing band that changes the per-seat rate for the remaining licenses. That's a contract-level negotiation opportunity that requires knowing both your current seat count and the vendor's tier structure simultaneously.

Building a Reclamation Policy Your Finance and HR Teams Will Actually Follow

Technical execution is only half the problem. The other half is organizational.

License reclamation touches three teams who don't naturally work together: IT owns the license provisioning, HR owns the headcount data, and Finance owns the payment. Without a defined handshake between all three, the audit finding sits in a Notion doc while the license keeps billing.

The policy needs to be simple enough to actually get used. Our recommendation:

  • Add a SaaS deprovisioning checklist item to the standard offboarding workflow in your HRMS. When HR marks someone as departed, that triggers an IT ticket to remove licenses within 5 business days.
  • Institute a 30-day grace period before final seat removal for tools where data needs to be transferred or handover is required.
  • Assign a named tool owner for every paid SaaS application, responsible for quarterly utilization review. This doesn't have to be IT — the department head who uses the tool most is often the right owner.

The political blocker you'll encounter is department heads who hoard seats "just in case." The reframe that works: reclaimed budget returns to their team's discretionary spend, not to a central pool they lose access to. When the marketing head understands that their 8 unused Semrush seats, if reclaimed, convert to ₹24,000 per quarter they can reallocate to something their team actually wants, the resistance drops significantly.

For GST compliance, every license change should produce an audit trail tied to the original invoice. If you reduce seats mid-year and the vendor issues a revised invoice, that revised invoice needs to map cleanly to your ITC claim for that period. Sloppy documentation here creates reconciliation problems during GST filing that are entirely avoidable.

Key takeaway: A reclamation policy only works if it's embedded in existing workflows — offboarding checklists, renewal calendars, named tool owners. Standalone audit projects don't stick; process changes do.

Starting the Audit: The First 30 Minutes

Here's the concrete starting sequence, in order.

  1. Connect your work inbox (Gmail or Outlook) to an invoice parsing tool. This gives you the complete list of what you're paying for without relying on anyone's memory or a spreadsheet someone built 18 months ago.
  2. Export user lists from your top 3 tools by monthly spend. Most admin consoles have a CSV export of all provisioned users. Download it and note the total seat count for each.
  3. Pull your active directory list from Google Workspace or Microsoft 365 — whoever manages your email domain. This is your current headcount denominator.
  4. Cross-reference the two lists in a spreadsheet. Email addresses in the tool export that don't appear in the active directory are your immediate reclamation targets — these are almost certainly departed employees.

The first audit will feel manual. That's expected. You're building a baseline that makes every subsequent review faster.

Focus on 2 numbers first: total licensed seats versus total active headcount across your top tools, and the count of tools with auto-renewal within the next 90 days. Those two numbers tell you where the waste is and how much time you have to act on it.

If you'd rather not spend the first 30 minutes pulling invoices manually, the shortcut is to connect your work inbox to our audit tool and let it surface the subscription list for you.

Run a free SaaS spend audit — find every hidden subscription

Frequently asked questions

What is a good user-to-license ratio for SaaS tools?

There's no universal target, but a healthy ratio is typically 85–95% active seats for communication and core productivity tools. For design, analytics, or project management tools sourced bottom-up by individual teams, ratios below 70% are common and represent the highest reclamation opportunity. Anything below 60% active for a paid annual plan is a clear signal to downsize at renewal. The ratio also depends on how you define "active" — last login is a weak signal, so use task-level activity (messages sent, files edited, meetings hosted) where the vendor API exposes it. A tool with 90% login rate but 40% meaningful-activity rate is still a rightsizing candidate.

How do I find dormant SaaS licenses without asking every vendor manually?

Most enterprise-tier SaaS tools expose usage data via admin APIs or built-in usage reports — Google Workspace Reports API, Microsoft 365 Admin Center, and Slack Member Analytics all provide last-activity timestamps per user. The practical blocker is joining that data with your current active headcount, which requires either a custom script or a spend management layer that does the join automatically. The Google Reports API retains 180 days of data; Microsoft 365 retains only 30 days by default, so you need to extend retention before running the audit. Invoice parsing from your work inbox handles the discovery side — identifying what tools you're paying for — while the API pull handles the utilization side.

Can I reclaim SaaS licenses mid-contract on an annual plan?

Most vendors don't offer prorated refunds on annual seat reductions mid-contract. Microsoft 365 and Google Workspace allow seat reductions at the anniversary date only in most SMB plans — reducing seats mid-year reduces the count going forward but doesn't credit back the months already billed. The effective strategy is to flag dormant seats now and schedule the reclamation action 30–45 days before the renewal date, using a renewal calendar to avoid missing the window. Some enterprise agreements allow mid-term true-ups with vendor approval, but these require negotiation and are rarely available on standard SMB plans. Monthly billing eliminates this constraint at the cost of a higher per-seat rate.

What is SaaS license rightsizing and how is it different from cancellation?

Rightsizing means aligning the number and tier of licenses to actual usage — not eliminating tools. That includes removing seats assigned to departed employees, downgrading users from enterprise to business tiers if their usage doesn't justify the higher tier, and consolidating duplicate tools across teams that independently adopted similar platforms. Cancellation is the last resort, not the first step, and it's appropriate only when a tool has near-zero active usage across the entire organization. Rightsizing typically recovers 20–35% of SaaS spend without disrupting anyone who's actually using the tools — which is why it's a much easier internal sell than wholesale cancellation.

How much can an Indian SMB realistically save from a SaaS license audit?

Based on patterns we see at Easexpense, companies with 100–300 employees and 20 or more SaaS tools typically recover between ₹2 lakh and ₹8 lakh annually from seat reclamation alone, before accounting for plan downgrades or duplicate tool consolidation. The range is wide because it depends heavily on how long the company has been growing without a formal offboarding-to-deprovisioning workflow — a company that's been hiring fast for 2 years without cleanup will be at the higher end. Plan rightsizing (moving teams from enterprise tiers to business tiers where features aren't being used) often adds another ₹1–3 lakh on top of that, particularly for Microsoft 365 and Google Workspace. The audit cost in engineer-hours typically pays back within the first month of savings.

Does rightsizing SaaS licenses affect GST input tax credit claims?

Yes, in a positive direction. Indian businesses can claim GST input tax credit only on SaaS expenditure tied to active business use — licenses assigned to inactive or departed users technically don't qualify for ITC under GST rules. Cleaning up your license roster and ensuring invoices reflect actual active users strengthens your ITC position and reduces the risk of a mismatch during GST reconciliation. Every license change should produce a documented audit trail tied to the original invoice so that revised vendor invoices map cleanly to your ITC claim for that period. This is particularly relevant for tools billed in USD that generate GST invoices through an Indian reseller — the seat count on the invoice needs to match your claimed business-use seats.

How often should a company run a SaaS license utilization audit?

A formal audit at least once per quarter is the minimum for companies with 50 or more employees and 15 or more tools. In practice, the most effective approach is a continuous monitoring setup where license counts are automatically compared against active directory on a monthly basis, with manual review triggered only when a threshold breach or upcoming renewal is detected. Point-in-time audits degrade within 60–90 days as hiring and churn continue, so the quarterly cadence is really a fallback for teams that can't yet automate. High-churn environments — companies hiring or restructuring frequently — should run monthly utilization checks at minimum, since the dormancy gap can accumulate significantly in a single quarter.

Frequently asked questions

What is a good user-to-license ratio for SaaS tools?
There is no universal target, but a healthy ratio is typically 85–95% active seats for communication and core productivity tools. For design, analytics, or project management tools sourced bottom-up, ratios below 70% are common and represent the highest reclamation opportunity. Anything below 60% active for a paid annual plan is a clear signal to downsize at renewal.
How do I find dormant SaaS licenses without asking every vendor manually?
Most enterprise-tier SaaS tools expose usage data via admin APIs or built-in usage reports. Google Workspace Reports API, Microsoft 365 Admin Center, and Slack Member Analytics all provide last-activity timestamps per user. The practical blocker is joining that data with your current active headcount, which requires either a custom script or a spend management layer that does the join automatically.
Can I reclaim SaaS licenses mid-contract on an annual plan?
Most vendors do not offer prorated refunds on annual seat reductions mid-contract. Microsoft 365 and Google Workspace allow seat reductions at the anniversary date only in most SMB plans. The effective strategy is to flag dormant seats now and schedule the reclamation action 30–45 days before the renewal date, using a renewal calendar to avoid missing the window.
What is SaaS license rightsizing and how is it different from cancellation?
Rightsizing means aligning the number and tier of licenses to actual usage, not eliminating tools. That includes removing seats assigned to departed employees, downgrading users from enterprise to business tiers if their usage does not justify the higher tier, and consolidating duplicate tools across teams. Cancellation is the last step, not the first.
How much can an Indian SMB realistically save from a SaaS license audit?
Based on patterns we see at Easexpense, companies with 100–300 employees and 20+ SaaS tools typically recover between ₹2 lakh and ₹8 lakh annually from seat reclamation alone, before accounting for plan downgrades or duplicate tool consolidation. The range is wide because it depends heavily on how long the company has been growing without a formal offboarding-to-deprovisioning workflow.
Does rightsizing SaaS licenses affect GST input tax credit claims?
Yes, in a positive direction. Indian businesses can claim GST input tax credit only on SaaS expenditure tied to business use. Licenses assigned to inactive or departed users technically do not qualify for ITC. Cleaning up your license roster and ensuring invoices reflect actual active users strengthens your ITC position and reduces the risk of a mismatch during GST reconciliation.
How often should a company run a SaaS license utilization audit?
A formal audit at least once per quarter is the minimum for companies with 50 or more employees and 15 or more tools. In practice, the most effective approach is a continuous monitoring setup where license counts are automatically compared against active directory on a monthly basis, with manual review triggered only when a threshold breach or upcoming renewal is detected.

Next step

See exactly how much your team can save on SaaS.

One quick 15-minute call. We'll walk through your actual stack live and show you where the leaks are.

Or send us a note →
Find software at discounts Savings, Analyze spending.
Easexpense LLC:
1007 Orange St 4th floor, Wilmington, DE 19801, United States

Easenode Tech Private Limited:
B, 23, Sector 63 Rd, B Block, Sector 63, Noida, Uttar Pradesh 201301