← All articles
Enterprise Spend 7 min read

The Hidden Cost of Inactive Microsoft 365 Licenses

Most organizations are paying full price for Microsoft 365 licenses assigned to employees who never log in. At $57 per user per month for E5, the math compounds fast. Here is how to find the waste and what to do about it.

CostDefender Team ·

Listen to article

Narrated by CostDefender

Download

Microsoft 365 is likely your organization’s single largest software line item. It is also, in most organizations, quietly overspent by 15 to 25 percent — not because anyone made a bad decision, but because the people who originally needed those licenses moved on, changed roles, went on leave, or simply stopped using the platform, and nobody turned off the billing.

At $57 per user per month for E5, a 200-person organization with 15 percent inactive users is paying $20,520 per year for access that nobody is using. Scale that to 2,000 users and the number is $205,200. These are not edge cases. They are the norm in organizations that don’t run regular license audits.

Annual Waste by License Tier at 15% Inactive RateAnnual waste (500-seat org)$7,200E1$8/user/mo$19,800E3$22/user/mo$23,400Bus. Premium$26/user/mo$51,300E5$57/user/mo500-seat organization · 15% inactive users · annual cost
Annual waste from inactive licenses at a 500-seat organization. E5 environments generate the most exposure — over $51K/year from inactivity alone at the 15% threshold.

Why inactive licenses accumulate

The mechanism is straightforward. Someone joins the company. IT provisions them a Microsoft 365 license because the onboarding checklist says to. The person leaves, or transitions to a contractor arrangement, or moves to a subsidiary with a separate tenant. The offboarding checklist, if it exists at all, may not reach IT in time. The license stays active, the billing continues, and the incident is never visible to anyone with budget authority.

There are four specific events that reliably generate inactive licenses:

Employee offboarding. The average time between an employee’s last day and license deprovisioning is longer than most IT teams want to admit. In organizations without automated offboarding workflows, it can be weeks or months. During that window, the license is live and billable.

Role changes. An employee who moves from a knowledge worker role to a frontline role may no longer need the full suite of E3 or E5 capabilities. The license rarely gets downgraded unless someone specifically asks for it.

Acquisitions and reorganizations. Post-merger integrations often result in duplicate licenses as employees are added to the acquiring company’s tenant without removing them from the acquired company’s. Both tenants bill until someone rationalizes the user base.

Long-term leave. Parental leave, extended medical leave, and sabbatical programs can keep employees inactive for months. Most organizations keep the license active as a matter of convenience, even when a temporary suspension would preserve all data and access rights.

What “inactive” actually means in Microsoft data

Microsoft’s admin reporting surfaces last sign-in date at the user level through Microsoft Graph (/reports/getOffice365ActiveUserDetail). The report includes activity across Exchange, Teams, SharePoint, OneDrive, and Yammer — which means you can identify not just users who haven’t signed in, but users who are signed in but not actually using the products they’re licensed for.

This distinction matters. A user might authenticate to Microsoft 365 daily through Outlook but have never opened Teams, SharePoint, or any of the Office desktop applications. They may be licensed for E5 but operating as an Exchange Online user. The Graph API surfaces this granularity, and it is the basis for right-sizing conversations beyond simple inactive detection.

The common thresholds used in license audits:

Most finance teams find that the 60-day cohort is where the cleanest savings live — large enough to represent real waste, recent enough that the user is clearly no longer active rather than on leave.

The license suspension option Microsoft doesn’t advertise well

Deleting a Microsoft 365 user is irreversible from a license perspective but it also deletes the mailbox and files after a retention window. Most organizations are rightfully cautious about this.

What is less well known is that license assignment can be removed without deleting the user. A user account can remain in Azure Active Directory with no license assigned. Their mailbox enters a “soft-deleted” state and is preserved for 30 days by default, or longer if litigation hold or retention policies apply. Their OneDrive files are preserved for the configured retention period (default 30 days, configurable up to 10 years).

This means the practical workflow for an inactive user is:

  1. Identify via reporting: inactive for 60+ days
  2. Remove license assignment (not the account)
  3. Set a 90-day review reminder
  4. If the user returns, reassign the license in minutes
  5. If confirmed departed, follow the normal offboarding process

This approach recovers the license cost immediately with no data risk and with full reversibility.

Building the audit into a recurring practice

A one-time audit captures the current waste but does not prevent future accumulation. The organizations that maintain clean license posture do three things:

Automate offboarding triggers. When an employee’s status changes in your HR system, a workflow should fire to IT. Microsoft’s Lifecycle Workflows (part of Microsoft Entra) can automate this directly. Even a simple Power Automate flow on HR system events is better than a manual checklist.

Run monthly inactive license reports. The Microsoft 365 admin center’s Usage Reports section provides a 90-day inactive user view. Export this monthly and route it to whoever owns the Microsoft agreement.

Set up a license review gate in procurement. Any renewal or true-up of the Microsoft agreement should be preceded by an inactive license audit. The numbers from that audit should be the opening position in any license quantity negotiation.

The organizations that treat Microsoft 365 licenses the way they treat cloud infrastructure — with cost allocation, utilization tracking, and regular right-sizing — consistently find 10 to 20 percent savings without touching anyone who is actively using the platform.

For finance teams, the Microsoft admin reports are the evidence base. They are readable with standard admin credentials, require no specialized tooling, and surface dollar figures directly when cross-referenced against the license price schedule in your Microsoft agreement. The gap between those reports existing and someone actually looking at them is where the waste lives.

CostDefender

Defend your cloud budget.

CostDefender gives finance teams read-only cloud cost visibility, verified savings tracking, and closed-loop accountability across AWS, Azure, and GCP.

Request Early Access →