Get-MgSubscribedSKU Cmdlet – View Your Tenant's Subscribed Licenses in Microsoft 365

Microsoft 365 administrators often need to check which licenses (SKUs) are available in their tenant. The Get-MgSubscribedSKU cmdlet helps you fetch all the subscribed licenses, their friendly names, SKUIDs, service plans, and usage status.

This article explains the cmdlet syntax, usage examples, tips, common use cases, and how to resolve possible errors.


Cmdlet Syntax

Get-MgSubscribedSku [<CommonParameters>]

Usage Examples

Executing the Cmdlet Directly

Get-MgSubscribedSku

This will return all the subscribed licenses in the tenant, including SKUIDs, Enabled/Consumed units, and service plans.

Formatting the Results for Better Readability

Get-MgSubscribedSku | Format-List

This helps display the values in a formatted manner. Some of the values that get displayed are:

  • SkuId
  • SkuPartNumber
  • PrepaidUnits
  • ConsumedUnits
  • ServicePlans

Get SKUID of a User’s Assigned License Using Get-MgUserLicenseDetail

Get-MgUserLicenseDetail -UserId "alexwilliams@yourtenant.onmicrosoft.com" | Select-Object SkuId, SkuPartNumber
                            

This maps the licenses assigned to a specific user and helps match them with tenant-wide SKUs retrieved using Get-MgSubscribedSku.


Cmdlet Tips

You can enhance this script to meet additional audit needs:

  • Use Format-List or Select-Object to filter specific properties like SkuPartNumber, SkuId, ServicePlans.
  • Always compare the SkuId values between Get-MgSubscribedSku and Get-MgUserLicenseDetail to understand license distribution.
  • For scripting scenarios, pipe the output to Export-Csv for external reporting:
Get-MgSubscribedSku | Select-Object SkuId, SkuPartNumber, ConsumedUnits | Export-Csv "TenantLicenses.csv" -NoTypeInformation

Common Use Cases

  • License Inventory: View how many units of each SKU your organization owns and has consumed.
  • License Auditing: Map assigned SKUs to specific users using Get-MgUserLicenseDetail.
  • Service Plan Checks: Understand which service plans are available in each SKU.
  • License Optimization: Identify under-utilized or unused licenses.
  • Cross-check Assignments: Verify which SKUs are assignable or already consumed.

Possible Errors & Solutions

Error Cause Solution
Get-MgSubscribedSku : Access Denied Insufficient permissions Ensure you're signed in with an account that has at least Report Reader or License Administrator role.
Get-MgUserLicenseDetail : Resource not found Invalid or misspelled UserPrincipalName Double-check the UPN you're passing to the -UserId parameter.
SkuId is GUID format Hard to read manually Use SkuPartNumber to identify the license name (e.g., ENTERPRISEPACK, BUSINESS_PREMIUM). Refer to Microsoft SKU reference list.

Frequently Asked Questions

  • What does the Get-MgSubscribedSku cmdlet return?
    It returns details about all the Microsoft 365 licenses (SKUs) available in your tenant, including license names, SKU part numbers, enabled service plans, consumed units, and availability status.
  • How can I check how many licenses are available vs. assigned?
    Use the PrepaidUnits.Enabled property to view total purchased licenses and ConsumedUnits to see how many are currently assigned.
  • What does the ServicePlans property tell me?
    ServicePlans provides a breakdown of the individual services (e.g., Exchange, Teams, Yammer) bundled within each SKU. This helps admins understand what features users will receive with each license.
  • Can I use this cmdlet to find expired or deprecated SKUs?
    While Get-MgSubscribedSku doesn’t explicitly show expiry, SKUs with zero enabled units or disabled service plans may indicate deprecated or no longer active licenses. Review such entries for cleanup or renewal.

📦 Use ServicePlans to Verify Feature Availability

Each SKU returned includes a ServicePlans property that outlines the individual services (like Exchange, Teams, SharePoint) bundled with the license. This is especially useful for confirming if features like Power BI or Intune are included in a plan.
📊 Understand ConsumedUnits vs PrepaidUnits

The ConsumedUnits property shows how many licenses have been assigned, while PrepaidUnits.Enabled shows how many are available. Comparing the two helps in identifying license shortage or over-purchasing scenarios.

Conclusion

The Get-MgSubscribedSku cmdlet is an essential tool for any Microsoft 365 admin managing licenses and subscriptions. It provides a clear snapshot of what licenses your organization owns, how they're being used, and which service plans are bundled with each license.

Pair it with Get-MgUserLicenseDetail to gain deeper insights into license assignments and optimize your Microsoft 365 resource allocation.

Start exploring your subscription data today and stay ahead of your license management needs!



Graph PowerShell Explorer Widget

20 Graph PowerShell cmdlets with easily accessible "working" examples.


Permission Required

Example:


                


                


                

© m365corner.com. All Rights Reserved. Design by HTML Codex