Simplify user tasks like bulk creation, updates, password resets, deletions, license checks & more — all from one place.
🚀 Launch ToolkitAs Microsoft 365 grows, so does the need to understand which apps your users rely on the most. Are people spending more time in Teams or Outlook? How fast is OneDrive adoption growing? The Get-MgReportM365AppUserCount cmdlet in Graph PowerShell gives you all those answers — straight from your PowerShell console.
This article walks you through how to generate M365 app usage reports, understand adoption trends, and export the data for further analysis.
The Get-MgReportM365AppUserCount cmdlet retrieves usage information across core Microsoft 365 apps — including Teams, Exchange, SharePoint, OneDrive, and Yammer.
With this report, admins can:
Before running the cmdlet, ensure you’ve met these requirements.
Install-Module Microsoft.Graph -Scope CurrentUser
Update-Module Microsoft.Graph
Connect-MgGraph -Scopes "Reports.Read.All"
Get-MgReportM365AppUserCount [-Period <String>] [-OutFile <String>]
Parameters explained:
Get-MgReportM365AppUserCount -Period "D7" -OutFile ".\M365AppUsage_D7.csv"
Perfect for quick weekly insights on how M365 apps are performing.
Get-MgReportM365AppUserCount -Period "D30" -OutFile ".\M365AppUsage_D30.csv"
Ideal for monthly reviews and comparing app engagement over time.
Get-MgReportM365AppUserCount -Period "D180" -OutFile ".\M365AppUsage_D180.csv"
A great option for quarterly or biannual reporting and executive dashboards.
$today = Get-Date "yyyy-MM-dd"
$outPath = ".\Reports\M365AppUsage_$today.csv"
Get-MgReportM365AppUserCount -Period "D30" -OutFile $outPath
This example dynamically creates a filename with today’s date — useful for automation or scheduled tasks.
| Error | Cause | Solution |
|---|---|---|
| “Invalid period specified” | Used a value above 180 days | Use only D7, D30, D90, or D180 |
| “Access denied” | Lacked required permissions | Reconnect with Connect-MgGraph -Scopes "Reports.Read.All" |
| “Report data unavailable” | Delay in Graph data refresh | Wait a few hours and re-run the cmdlet |
| “Empty CSV file” | No user activity within selected period | Use a longer period or validate app adoption |
The Get-MgReportM365AppUserCount cmdlet provides a simple yet powerful way to understand how your organization uses Microsoft 365 apps. By exporting usage reports to CSV, you can visualize adoption trends, optimize licenses, and make data-backed decisions for your M365 environment.
Combine this report with others like Get-MgReportMailboxUsageDetail and Get-MgReportTeamActivityCount to create a complete organizational usage dashboard — all powered by Microsoft Graph PowerShell.
Did You Know? Managing Microsoft 365 applications is even easier with automation. Try our Graph PowerShell scripts to automate tasks like generating reports, cleaning up inactive Teams, or assigning licenses efficiently.
Ready to get the most out of Microsoft 365 tools? Explore our free Microsoft 365 administration tools to simplify your administrative tasks and boost productivity.
© Your Site Name. All Rights Reserved. Design by HTML Codex