Control 4.5: Copilot Usage Analytics and Adoption Reporting — Troubleshooting
Common issues and resolution steps for Copilot usage analytics and adoption reporting.
Common Issues
Issue 1: Usage Reports Showing Zero or Stale Data
- Symptoms: Copilot usage reports show no data or data that has not updated in several days.
- Root Cause: Reporting data pipeline may have a delay of up to 48 hours, or the tenant may have a reporting configuration issue.
- Resolution:
- Allow 48 hours for new activity to appear in usage reports.
- Verify the reports service is healthy in the M365 Admin Center under Service Health.
- Check if usage data is available via the Graph API as an alternative.
- If data remains stale beyond 72 hours, contact Microsoft support.
Issue 2: Licensed Users Not Showing in Reports
- Symptoms: Users with confirmed Copilot licenses do not appear in the usage report at all.
- Root Cause: License was recently assigned and the reporting system has not yet indexed the user, or the license assignment failed silently.
- Resolution:
- Verify the license assignment in Admin Center > Users > Active users.
- Allow up to 48 hours after license assignment for the user to appear in reports.
- Check if the user has signed in and used a Copilot feature since license assignment.
- If the user has been licensed for more than 48 hours and still does not appear, reassign the license.
Issue 3: Graph API Reports Returning Errors
- Symptoms: PowerShell scripts using the Graph API return authentication or permission errors when accessing usage reports.
- Root Cause: Insufficient permissions, expired tokens, or API endpoint changes.
- Resolution:
- Verify the service principal has
Reports.Read.Allpermission. - Re-authenticate:
Disconnect-MgGraph && Connect-MgGraph -Scopes "Reports.Read.All" - Check for Microsoft Graph API deprecation notices for the reports endpoint.
- Update the Microsoft.Graph PowerShell module to the latest version.
Issue 4: Adoption Rate Calculation Discrepancies
- Symptoms: Different reporting methods (Admin Center dashboard, Graph API, PowerShell) show different adoption rates.
- Root Cause: Each reporting method may use different definitions of "active" or different time period calculations.
- Resolution:
- Standardize on a single reporting method for official KPI tracking.
- Document the definition of "active" used by each method.
- When comparing, ensure the same time period and user scope are applied.
- Use Graph API data as the authoritative source for programmatic comparisons.
Diagnostic Steps
- Check service health: Verify Microsoft 365 reports service status.
- Test Graph API access:
Invoke-MgGraphRequest -Method GET -Uri "https://graph.microsoft.com/v1.0/reports" - Verify permissions:
Get-MgContext | Select Scopes - Manual data check: Compare 5 known users against the downloaded usage report.
Escalation
| Severity | Condition | Escalation Path |
|---|---|---|
| Critical | No usage data available for regulatory reporting | IT Admin + Microsoft Support |
| High | Report data significantly inaccurate | IT Admin — investigate data pipeline |
| Medium | API access issues | IT Support — permissions and connectivity |
| Low | Minor reporting delays | Monitor and report at next cycle |