License Intelligence
Advanced license analytics across all tenants. Identify optimization opportunities, track cost savings, detect inactive users, and forecast license needs.
Note: License Intelligence analyzes actual usage patterns to find licenses assigned to inactive users, over-licensed users, and opportunities to downgrade to less expensive SKUs.
Dashboard Metrics
Total License Spend
Monthly recurring cost across all tenants. Calculated from Microsoft Price List or your CSP cost basis. Displays MoM and YoY trends.
Utilization Rate
Percentage of purchased licenses actually assigned. Target is 85-95%. Below 80% indicates significant waste. Above 95% indicates capacity risk.
Inactive Users
Licensed users with no sign-in activity for 30+ days. These represent immediate cost-saving opportunities if licenses can be reclaimed.
Optimization Savings
Estimated monthly savings from applying all recommendations. Includes inactive user cleanup, SKU downgrades, and duplicate license removal.
License Analysis Types
Inactive User Detection
Identifies users who haven’t signed in recently but have assigned licenses. Configurable thresholds: 30, 60, or 90 days of inactivity.
Data Source: GET /users?$select=signInActivity
Note: Requires Azure AD Premium P1 or P2 for sign-in activity data.
Service Usage Analysis
Breaks down which M365 services each user actually uses. A user with E5 who only uses Email and Teams could be downgraded to E3 or Business Premium.
Services Tracked: Exchange, Teams, SharePoint, OneDrive, Yammer, Power BI, Power Apps, Power Automate, Planner, Project, Visio
SKU Optimization
Recommends license tier changes based on feature usage. Examples:
- E5 to E3: User doesn’t use Defender, eDiscovery, or Audio Conferencing
- E3 to Business Premium: User has under 300 GB mailbox, no advanced features
- Business Premium to Business Basic: User only uses email and Teams
Duplicate Assignments
Detects users with overlapping licenses that provide the same services. For example: E3 + standalone Exchange Plan assigned to the same user.
Group-Based License Conflicts
When using group-based licensing, identifies users in multiple groups that assign conflicting or redundant licenses.
Recommendations
Each recommendation includes:
- Description — What the optimization is
- Affected Users — List of users impacted
- Monthly Savings — Estimated cost reduction
- Risk Level — Low/Medium/High based on potential user impact
- One-Click Apply — Execute the change directly (with confirmation)
Tenant Comparison
Compare license utilization across tenants:
- Cost per user by tenant
- Utilization percentage by tenant
- SKU distribution comparison
- Inactive user percentage by tenant
Forecasting
Predict future license needs based on historical trends:
- Growth Projection — Estimate when you’ll exceed current license count
- Seasonal Patterns — Identify hiring/offboarding cycles
- Budget Planning — Project costs for next 12 months
- Renewal Alerts — Notify before subscription renewals
CSP Billing Integration
If you’re a CSP partner, License Intelligence integrates with your Partner Center:
- Pull actual cost basis from your CSP agreement
- Reconcile against Microsoft invoices
- Calculate margin per customer
- Track NCE vs. legacy subscription costs
Graph API Endpoints
GET /subscribedSkus— License inventoryGET /users?$select=assignedLicenses— User assignmentsGET /users?$select=signInActivity— Last sign-inGET /reports/getOffice365ActiveUserDetail— Service usageGET /reports/getMailboxUsageDetail— Mailbox activity
API Reference
GET /api/msp-portal/license-intelligence/summary— Cross-tenant license summary with savings potentialGET /api/msp-portal/license-intelligence/:tenantId— Detailed analysis for a specific tenantGET /api/msp-portal/license-intelligence/recommendations— All optimization recommendations with estimated savingsPOST /api/msp-portal/license-intelligence/apply— Execute a recommendation (license change)