Skip to product information

n8n Workflow: Weekly Microsoft 365 License Waste Report

n8n Workflow: Weekly Microsoft 365 License Waste Report

 (200+Reviews)
Regular price £47.99
Regular price £47.99 Sale price
SAVE Sold out
⬇
Instant Digital Download
∞
Unlimited Downloads
★
Lifetime Access in Your Account
🔥
128+ Sold
Popular with n8n builders
âš¡
23 people viewing
High interest right now
✅
9 added today
Fast-moving digital product
n8n Workflow: Weekly Microsoft 365 License Waste Report

n8n Workflow: Weekly Microsoft 365 License Waste Report

Regular price £47.99
Regular price £47.99 Sale price
SAVE Sold out

Weekly Microsoft 365 License Waste Report—Automated Every Monday

This n8n workflow audits your Microsoft 365 license usage with Microsoft Graph, calculates potentially unused seats (and estimated monthly waste), then emails you an HTML report via Gmail—every Monday at 8:00.

What this workflow does

  • Schedules a weekly run using an n8n schedule trigger (Mondays at 8:00).
  • Retrieves your Microsoft 365 SKUs by calling the Microsoft Graph API to get all subscribed Microsoft 365 license plans for the tenant.
  • Fetches up to 999 users with license assignments, account status, and sign-in activity via Microsoft Graph.
  • Analyzes license utilization to:
    • Calculate unused paid seats per SKU.
    • Identify disabled accounts that still have licenses assigned.
    • Detect licensed users who have not signed in for 30+ days (configurable inactivity threshold).
  • Generates an HTML email report including an estimated monthly waste amount based on a per-seat price map you update in the code.
  • Sends the report by email using Gmail, including the subject line generated by the workflow.

Use cases

  • Optimize Microsoft 365 spend by spotting unassigned licenses and unused seats by SKU.
  • Reduce license costs from accounts that are disabled but still licensed.
  • Identify inactive users (inactive for 30+ days) to support offboarding or license reassignment decisions.
  • Give SaaS operators and automation engineers a recurring visibility report without manual exports.

Technical details

  • Schedule Trigger to run every Monday at 8:00.
  • HTTP Request / Microsoft Graph API calls to read subscribed SKUs and user license/sign-in data (up to 999 users).
  • Code node for calculations: unused seats, inactivity detection, and waste estimation logic (including per-seat price mapping and 30-day default threshold).
  • Gmail node to email the generated HTML report to a configured recipient.
  • Microsoft Entra ID app registration using client credentials with Graph scope https://graph.microsoft.com/.default and permissions including User.Read.All, Organization.Read.All, AuditLog.Read.All.
View full details