Support
 
PhoneGet Quote
 
Support
 
US Sales: +1 888 720 9500
US Support: +1 844 245 1108
Intl: +1 925 924 9500
Aus: +1 800 631 268
UK: 0800 028 6590
CN: +86 400 660 8680

Direct Inward Dialing: +1 408 916 9890

 
 

How to find expiry date of Microsoft 365 licenses

Last updated on:

When a Microsoft 365 license expires, users may lose access to critical applications such as Outlook, Teams, and SharePoint, halting productivity until renewals are processed. Proactively monitoring Microsoft 365 license expiry dates helps organizations plan renewals in advance, avoid unnecessary downtime, and maintain uninterrupted access for end users.

This article outlines three methods to identify expiring or expired Microsoft 365 licenses: using the Microsoft 365 admin center, querying license details throughthe Get-MgDirectorySubscription cmdlet in Microsoft Graph PowerShell, and generating Microsoft 365 license expiry reports through ManageEngine M365 Manager Plus, a dedicated Microsoft 365 administration tool.

  • M365 admin center
  • Graph PowerShell
  • M365 Manager Plus
 

Method 1: How to find Microsoft 365 license expiry date with Microsoft 365 admin center

Prerequisites

You must have at least the Billing Administrator or Global Administrator role to view the expiry date of Microsoft 365 licenses in the Entra admin center.

Steps

  1. Log in to the Microsoft 365 admin center and navigate to Billing > Your products.
  2. Locate the Subscription status filter pill and enable the Active, Pending, Scheduled, Expired, and Disabled filters.
  3. For subscriptions with recurring billing off, you will see a specific Renewal or expiration date listed. The Microsoft 365 admin center displaying subscription statuses with the Renewal or expiration date column highlighted.
  4. For subscriptions with recurring billing on, you will see the Next invoice date, which indicates the end of the current billing cycle. The Microsoft 365 admin center showing the Next invoice date column for licenses with recurring billing enabled in the view.

Limitation to consider

The Microsoft 365 admin center view requires you to check each subscription manually. If your organization manages many diverse license packs, tracking these individually can be time consuming. For a consolidated view across all SKUs, you will have to use Microsoft Graph PowerShell scripting or a reporting tool dedicated to present this data with just a few clicks, such as ManageEngine M365 Manager Plus.

Method 2: How to find soon to expire Microsoft 365 licenses with Microsoft Graph PowerShell (Get-MgDirectorySubscription)

Prerequisites

Before using Microsoft Graph PowerShell, please verify that:

  1. The Groups Administrator or Global Administrator role is applied to the account you use to sign in to Microsoft Graph PowerShell.
  2. You are connected to the Microsoft Graph PowerShell module.
    1. To check if the Microsoft Graph PowerShell module is installed, use this script:
      Get-Module Microsoft.Graph -ListAvailable

      If it does not return a value, you will have to install the module.

    2. To install the Microsoft Graph PowerShell module, execute this script:
      Install-Module Microsoft.Graph -Scope CurrentUser
    3. To connect to Microsoft Graph, run this script:
      Connect-MgGraph -Scopes "Organization.Read.All"

Using Get-MgDirectorySubscription to find expiry date of Microsoft 365 licenses

The Get-MgDirectorySubscription cmdlet retrieves Microsoft 365 license details such as subscription name, status, and expiration date.

Run the following cmdlet after signing in to Microsoft Graph PowerShell to find out the current status and expiry date of your Microsoft 365 licenses.

Get-MgDirectorySubscription | Select-Object SkuPartNumber, NextLifecycleDateTime

Find expiring Microsoft 365 licenses before March 2026

Scenario: You are an IT admin tasked with identifying all licenses that have already expired or are set to expire before April 1, 2026, to ensure renewal budgets are approved in time.

Checking each subscription manually is inefficient for multiple license types. Instead, you can use the following script to filter your Microsoft 365 licenses based on their lifecycle date and status.

# ==============================
# Microsoft 365 Subscription Lifecycle Monitoring
# ==============================

# Define the threshold date for lifecycle evaluation
$TargetDate = Get-Date "2026-03-01"

# Define export path
$ReportPath = "C:\Reports\M365_Subscription_Lifecycle_Report.csv"

# Retrieve and filter Microsoft 365 directory subscriptions
$Subscriptions = Get-MgDirectorySubscription |
Where-Object {
    $_.CapabilityStatus -in @("Warning", "Suspended") -or
    (
        $_.NextLifecycleDateTime -ne $null -and
        $_.NextLifecycleDateTime -lt $TargetDate
    )
} |
Select-Object `
    SkuPartNumber,
    CapabilityStatus,
    NextLifecycleDateTime

# Export results if matching subscriptions are found
if ($Subscriptions) {
    $Subscriptions | Export-Csv -Path $ReportPath -NoTypeInformation -Encoding UTF8
    Write-Host "Report generated successfully at: $ReportPath" -ForegroundColor Green
}
else {
    Write-Host "No subscriptions matched the specified criteria." -ForegroundColor Yellow
}

Supported parameters for the Get-MgDirectorySubscription cmdlet

The following table describes the key properties and parameters used in the Get-MgDirectorySubscription script to monitor the expiry date of Microsoft 365 licenses.

Property/Parameter Description
SkuPartNumber Uniquely identifies the license type or service plan (e.g., ENTERPRISEPREMIUM for Microsoft 365 E5).
CapabilityStatus Indicates the current state of the subscription. Warning typically implies the Microsoft 365 subscription expiration date has passed and it is in a grace period.
NextLifecycleDateTime The timestamp indicating when the subscription will transition to the next state in its lifecycle (e.g., from Warning to Disabled).

Method 3: How to find soon to expire Microsoft 365 licenses with M365 Manager Plus

Steps

  1. Log in to M365 Manager Plus and navigate to the Reports tab > Azure Active Directory > License Reports and select the Soon to Expire Licenses report. This report displays a list of licensed users and the number of days until their Microsoft 365 licenses expire.
  2. Set the maximum expiration date after which the Microsoft 365 licenses shown in the Soon to Expire Licenses report will expire, using the Account expiry within dropdown.
  3. Export the list of expiring Microsoft 365 licenses using the Export As option. The M365 Manager Plus Soon to Expire Licenses report displaying Microsoft 365 licenses that are close to expiring.

Streamline Entra ID user governance and group management

M365 Manager Plus provides a unified command center for managing the entire lifecycle of your Entra ID users and groups. Gain instant visibility into group memberships, ownership gaps, and orphaned objects across your tenant. View, manage, and track identity objects across your Microsoft 365 tenant from a single console—without switching between multiple admin portals.

Review and manage Entra ID users and group ownership

Easily identify users without managers, groups without owners, inactive accounts, and stale memberships. Assign or update group owners, modify user properties, and clean up unused or risky identities directly from the same interface to maintain accountability and ownership across your directory.

Built-in reports for Entra ID users and groups

Access ready-made reports covering user status, sign-in activity, license assignments, group memberships, orphaned groups, and privileged accounts. These reports help you quickly spot inactive users, over-licensed accounts, and groups that lack proper ownership—without manual data collection.

Audit Entra user and group changes

Track changes made to users and groups, including membership updates, role assignments, license changes, and account status modifications. Audit trails provide clear visibility into who changed what and when, helping you meet security and compliance requirements.

Real-time alerts for critical Entra ID events

Configure instant alerts for events such as new role assignments, group owner changes, user creation or deletion, and license updates. Stay informed the moment high-impact identity changes occur, instead of discovering them during manual audits.

Automate routine user and group management tasks

Automate common identity operations such as assigning licenses, updating group memberships, disabling inactive users, or enforcing ownership rules using policy-based automation. Reduce manual effort while keeping your Entra ID environment clean and controlled.

Act without PowerShell dependency

Perform reporting, audits, bulk updates, and corrective actions through a GUI-driven interface—without relying on Microsoft Graph PowerShell scripts. This reduces operational complexity, minimizes errors, and speeds up Entra ID administration with just a few clicks.

Important tips

Monitor the Warning state: When a subscription expires, it enters a Warning status or grace period (typically 30 days). Users still have access before the status changes to Disabled, which can be tracked using the CapabilityStatus attribute.

Schedule license expiry reports: Use M365 Manager Plus' Schedule Reports to automatically send a list of expiring Microsoft 365 licenses right to your admin's inboxes every week without any manual generation.

Frequently asked questions

Admins can check the expiry date of their Microsoft 365 licenses by navigating to Billing > Your products in the Microsoft 365 admin center or by running the Get-MgDirectorySubscription PowerShell cmdlet.

The subscription moves through three stages: Expired (30-day grace period with full access), Disabled (admin-only access to data), and Retained (Data is handled as per configured Microsoft 365 retention policies).

Enable Recurring billing in the Microsoft 365 admin center to ensure your Microsoft 365 licenses stay renewed. If you do not want to set up an automatic payment method, you can use M365 Manager Plus' Schedule Reports to notify your admins of expiring Microsoft 365 licenses every day.

Improve your Microsoft 365 processes with bulk updates, instant reports, and real-time alerts.

A holistic Microsoft 365 administration and security solution