{"id":12582,"date":"2025-08-04T17:12:47","date_gmt":"2025-08-04T17:12:47","guid":{"rendered":"https:\/\/www.itarian.com\/blog\/?p=12582"},"modified":"2025-08-04T17:12:47","modified_gmt":"2025-08-04T17:12:47","slug":"stop-showing-license-that-are-no-longer-used-m365","status":"publish","type":"post","link":"https:\/\/www.itarian.com\/blog\/stop-showing-license-that-are-no-longer-used-m365\/","title":{"rendered":"Stop Showing Licenses That Are No Longer Used in M365"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Managing Microsoft 365 (M365) licenses can become a tangled web\u2014especially when you\u2019re dealing with expired subscriptions, unused licenses, and accounts that are no longer active. If you&#8217;ve ever wondered how to <\/span><b>stop showing licenses that are no longer used in M365<\/b><span style=\"font-weight: 400;\">, you&#8217;re not alone.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Whether you&#8217;re an IT manager overseeing hundreds of user accounts or a cybersecurity professional performing license audits, <\/span><b>cleaning up unused Microsoft 365 licenses<\/b><span style=\"font-weight: 400;\"> is crucial for accuracy, cost-efficiency, and compliance.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In this comprehensive guide, you\u2019ll learn how to <\/span><b>remove, hide, or reassign unused M365 licenses<\/b><span style=\"font-weight: 400;\">, ensure your admin center reflects actual usage, and maintain best practices for licensing hygiene.<\/span><\/p>\n<h2><b>Why You Need to Hide or Remove Unused Licenses in Microsoft 365<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Before jumping into the how-to, let\u2019s understand the <\/span><b>why<\/b><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h3><b>Key reasons to clean up unused M365 licenses:<\/b><\/h3>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\ud83d\udcb8 <\/span><b>Reduce unnecessary spending<\/b><span style=\"font-weight: 400;\"> on unused subscriptions<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\ud83d\udd10 <\/span><b>Enhance security<\/b><span style=\"font-weight: 400;\"> by disabling accounts no longer in use<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\ud83d\udcca <\/span><b>Improve reporting accuracy<\/b><span style=\"font-weight: 400;\"> in Microsoft 365 Admin Center<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u2705 <\/span><b>Ensure license compliance<\/b><span style=\"font-weight: 400;\"> during audits<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\u2699\ufe0f <\/span><b>Streamline license management<\/b><span style=\"font-weight: 400;\"> and delegation<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">When you&#8217;re tasked with license optimization, it&#8217;s essential to <\/span><b>stop showing licenses that are no longer used in M365<\/b><span style=\"font-weight: 400;\"> to avoid clutter and confusion.<\/span><\/p>\n<h2><b>Understanding Microsoft 365 Licensing Behavior<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Microsoft 365 licenses are assigned to users and groups. However, when:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">A user is deleted<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">A user\u2019s license is revoked<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">A product subscription expires<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">\u2026the license may still <\/span><b>appear<\/b><span style=\"font-weight: 400;\"> in reports or admin interfaces.<\/span><\/p>\n<h3><b>Common scenarios where licenses linger:<\/b><\/h3>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Former employees still listed in Azure AD<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Expired trial subscriptions not hidden in billing reports<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Shared mailboxes or service accounts consuming licenses<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Knowing <\/span><b>where<\/b><span style=\"font-weight: 400;\"> and <\/span><b>how<\/b><span style=\"font-weight: 400;\"> licenses are displayed helps you manage visibility effectively.<\/span><\/p>\n<h2><b>How to Identify Unused or Stale M365 Licenses<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">First, let\u2019s pinpoint which licenses are unused so you can decide which to hide or remove.<\/span><\/p>\n<h3><b>Method 1: Use Microsoft 365 Admin Center<\/b><\/h3>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Go to <\/span><b>admin.microsoft.com<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Navigate to <\/span><b>Billing &gt; Licenses<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Review the <\/span><b>Available<\/b><span style=\"font-weight: 400;\"> vs <\/span><b>Assigned<\/b><span style=\"font-weight: 400;\"> numbers<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Click on a specific product (e.g., Microsoft 365 E5) to view assigned users<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ol>\n<h3><b>Method 2: Use Microsoft Entra Admin Center (Azure AD)<\/b><\/h3>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Log in to <\/span><b>entra.microsoft.com<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Go to <\/span><b>Users &gt; All users<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Filter by <\/span><b>Licenses Assigned<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Identify inactive or disabled accounts<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ol>\n<h3><b>Method 3: Use PowerShell for a Detailed Report<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">powershell<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CopyEdit<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Connect-MsolService<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Get-MsolUser -All | Where-Object {$_.isLicensed -eq $false}<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">Or for recently deleted users:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">powershell<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CopyEdit<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Get-MsolUser -All | Where-Object {$_.BlockCredential -eq $true}<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">\u2705 Pro Tip: PowerShell gives you flexibility for <\/span><b>exporting, filtering, and automating<\/b><span style=\"font-weight: 400;\"> license audits.<\/span><\/p>\n<h2><b>How to Stop Showing Licenses That Are No Longer Used in M365<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Now that you\u2019ve identified unused licenses, here\u2019s how to clean up the clutter.<\/span><\/p>\n<h3><b>Step 1: Remove Licenses from Inactive Users<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Use the Admin Center:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Go to <\/span><b>Users &gt; Active users<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Click on a user<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Select <\/span><b>Licenses and apps<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Uncheck the assigned license<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Save<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">Or with PowerShell:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">powershell<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CopyEdit<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Set-MsolUserLicense -UserPrincipalName user@domain.com -RemoveLicenses &#8220;tenant:ENTERPRISEPACK&#8221;<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">\ud83d\udd10 This ensures the license returns to your pool without deleting user data immediately.<\/span><\/p>\n<h3><b>Step 2: Delete or Archive Inactive Users<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">If the user has left the company or is no longer needed:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Backup mailbox or OneDrive data<\/b><span style=\"font-weight: 400;\"> if necessary<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Go to <\/span><b>Users &gt; Active users<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Select the user &gt; Click <\/span><b>Delete user<\/b><b>\n<p><\/b><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">Deleted users go to the <\/span><b>&#8220;Deleted Users&#8221;<\/b><span style=\"font-weight: 400;\"> list and can be restored for 30 days.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">To <\/span><b>permanently remove<\/b><span style=\"font-weight: 400;\">:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">powershell<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CopyEdit<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Remove-MsolUser -UserPrincipalName user@domain.com -Force<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">\ud83d\udca1 Deleted users no longer show up in license usage metrics.<\/span><\/p>\n<h3><b>Step 3: Hide Expired or Unused Subscriptions<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">M365 doesn\u2019t let you delete subscriptions directly, but you can:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Let <\/span><b>trial licenses expire<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Contact support to <\/span><b>cancel old subscriptions<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Filter unused SKUs in PowerShell reports:<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">powershell<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CopyEdit<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Get-MsolAccountSku<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">Then avoid displaying unused SKUs in your dashboard or provisioning scripts.<\/span><\/p>\n<h3><b>Step 4: Use Dynamic Groups and Automation<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Create Azure AD dynamic groups to auto-assign or remove licenses:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Go to <\/span><b>Entra &gt; Groups &gt; New Group<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Choose <\/span><b>Membership Type: Dynamic User<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Add rules like:<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">text<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CopyEdit<\/span><\/p>\n<p><span style=\"font-weight: 400;\">(user.department -eq &#8220;IT&#8221;) -and (user.accountEnabled -eq true)<\/span><\/p>\n<p>&nbsp;<\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Assign licenses to the group<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Inactive users are auto-removed from the group\u2014and licenses with them<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ol>\n<p><span style=\"font-weight: 400;\">\u2699\ufe0f This method helps <\/span><b>stop showing licenses that are no longer used in M365<\/b><span style=\"font-weight: 400;\"> without manual intervention.<\/span><\/p>\n<h2><b>Bonus: Audit Licenses With Microsoft Graph API<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Advanced admins can query license assignments and status with Graph API.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Example query:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">http<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CopyEdit<\/span><\/p>\n<p><span style=\"font-weight: 400;\">GET https:\/\/graph.microsoft.com\/v1.0\/users?$select=displayName,assignedLicenses<\/span><\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">This lets you:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Fetch license data at scale<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Integrate with SIEM tools<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Detect anomalies in license assignments<\/span><span style=\"font-weight: 400;\">\n<p><\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">\ud83d\udcca Ideal for enterprise-scale visibility and dashboarding.<\/span><\/p>\n<h2><b>Best Practices for M365 License Hygiene<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">To prevent future clutter in license reporting:<\/span><\/p>\n<h3><b>\u2705 Use These Best Practices:<\/b><\/h3>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Regularly audit inactive users<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Remove licenses immediately after termination<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Set up automated provisioning\/deprovisioning workflows<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Use dynamic groups instead of static assignments<\/b><b>\n<p><\/b><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Track license usage via Power BI or Admin Center<\/b><b>\n<p><\/b><\/li>\n<\/ul>\n<h2><b>FAQs: Microsoft 365 License Visibility<\/b><\/h2>\n<h3><b>1. Why do deleted users still show up in license reports?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">They remain in the &#8220;Deleted Users&#8221; list for up to 30 days. You must purge them manually or via PowerShell to stop visibility.<\/span><\/p>\n<h3><b>2. Can I delete an unused license from M365 permanently?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">You can&#8217;t delete a license, but you can cancel the subscription or let it expire. Expired licenses no longer appear in usage reports.<\/span><\/p>\n<h3><b>3. How can I hide unused licenses from reports?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Filter them out using PowerShell or dashboard filters in Microsoft Admin Center. Only active, assigned SKUs will reflect accurate usage.<\/span><\/p>\n<h3><b>4. Do shared mailboxes use licenses?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Not by default. However, if you convert a mailbox to a shared one, you should remove its license manually to reclaim it.<\/span><\/p>\n<h3><b>5. Can I automate license cleanup in M365?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Yes. Use PowerShell scripts, Graph API, or Entra dynamic groups to automate license assignment and cleanup.<\/span><\/p>\n<h2><b>Final Thoughts<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">As organizations scale, managing Microsoft 365 licensing becomes a balancing act between security, budget, and compliance. Knowing how to <\/span><b>stop showing licenses that are no longer used in M365<\/b><span style=\"font-weight: 400;\"> helps ensure your admin console reflects reality\u2014not cluttered leftovers from past employees or unused services.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">By combining native tools, PowerShell scripts, and smart automation, you can regain control over your licensing environment and cut unnecessary costs\u2014while staying audit-ready and secure.<\/span><\/p>\n<h3><b>\ud83d\udc49 Want to streamline your M365 license management across all endpoints?<\/b><\/h3>\n<p><a href=\"https:\/\/www.itarian.com\/signup\/\"><b>Start your FREE Itarian trial today<\/b><\/a><span style=\"font-weight: 400;\"> and gain access to unified tools for license tracking, user provisioning, patching, and endpoint security\u2014all in one cloud-native platform.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Managing Microsoft 365 (M365) licenses can become a tangled web\u2014especially when you\u2019re dealing with expired subscriptions, unused licenses, and accounts that are no longer active. If you&#8217;ve ever wondered how to stop showing licenses that are no longer used in M365, you&#8217;re not alone. Whether you&#8217;re an IT manager overseeing hundreds of user accounts or&hellip; <span class=\"readmore\"><\/span><\/p>\n","protected":false},"author":11,"featured_media":12592,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-12582","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ticketing-system","entry"],"_links":{"self":[{"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/posts\/12582","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/comments?post=12582"}],"version-history":[{"count":1,"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/posts\/12582\/revisions"}],"predecessor-version":[{"id":12602,"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/posts\/12582\/revisions\/12602"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/media\/12592"}],"wp:attachment":[{"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/media?parent=12582"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/categories?post=12582"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.itarian.com\/blog\/wp-json\/wp\/v2\/tags?post=12582"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}