Teams Admin Center Usage Reports
The Teams admin center provides built-in usage reports, including Teams usage, Teams device usage, PSTN usage, and PSTN blocked users reports, each viewable over 7-day, 30-day, or 90-day windows. By default, Microsoft conceals user-identifiable information such as display names and email addresses in these reports after a set period, showing them as anonymized identifiers instead, unless an administrator with the appropriate role explicitly enables the 'Display concealed user information in all reports' setting, which itself is a privacy-sensitive action that should be governed by policy.
Cricket analogy: A league publishing aggregate attendance statistics per stadium without naming individual season-ticket holders, unless a compliance officer specifically unlocks named data for an investigation, mirrors how Teams conceals user-identifiable report data by default.
Call Quality Dashboard (CQD) and Call Analytics
The Call Quality Dashboard provides tenant-wide, aggregated call and meeting quality metrics, such as jitter, packet loss, and Mean Opinion Score (MOS), broken down by location, subnet, and network segment, primarily used by network engineers to identify systemic issues like a poorly performing WAN link at a specific office. Call Analytics, by contrast, gives per-user, per-call diagnostic detail, including device, network, and codec information for a single specific call, and is the tool a helpdesk agent uses to troubleshoot one user's reported 'my call kept freezing' complaint.
Cricket analogy: A team's analytics department reviewing aggregate pitch-condition data across every ground in a season versus a single umpire reviewing one contested delivery's ball-tracking replay mirrors the difference between CQD's tenant-wide aggregates and Call Analytics' per-call detail.
GET https://graph.microsoft.com/v1.0/reports/getTeamsUserActivityUserDetail(period='D30')
Authorization: Bearer {access_token}
# Returns a CSV with per-user last-activity dates for chat, calls,
# meetings, and channel messages over the trailing 30 days,
# subject to the tenant's user-info concealment setting.
GET https://graph.microsoft.com/v1.0/communications/callRecords/{call-id}
Authorization: Bearer {access_token}
# Returns per-call diagnostic detail (participants, endpoints,
# codecs, packet loss, jitter) equivalent to what Call Analytics
# shows in the Teams admin center for a single reported call.
Graph API Reports and Power BI Integration
The Microsoft Graph reports API exposes usage endpoints such as getTeamsUserActivityUserDetail and getTeamsDeviceUsageUserDetail, letting administrators pull the same underlying usage data shown in the admin center programmatically, typically on a scheduled basis, for ingestion into custom dashboards or data warehouses. Microsoft also provides a downloadable Power BI template that connects to these Graph endpoints and visualizes usage alongside license assignment and adoption trend data, giving IT leadership a combined view of adoption momentum rather than requiring them to stitch together separate reports manually.
Cricket analogy: A cricket board pulling raw ball-by-ball data via an API into a custom analytics dashboard instead of only viewing the broadcaster's on-screen graphics mirrors how admins pull Graph reports data into Power BI instead of relying only on the admin center UI.
Usage data surfaced through both the Teams admin center and the Graph reports API typically has a processing lag of one to two days, so same-day activity will not yet appear when a report is pulled.
Data Retention and Privacy Considerations
Usage report data retains user-identifiable names and email addresses for a limited window governed by the tenant's privacy configuration; by default, that identifiable information is concealed after a period unless explicitly enabled, and even when enabled, the underlying report data itself is not retained indefinitely by Microsoft. Because this data reveals individual communication and collaboration patterns, such as which specific employees are heavy or light Teams users, any decision to export it for long-term storage or combine it with other HR systems should go through the organization's formal data-retention and privacy review process rather than being treated as routine IT reporting.
Cricket analogy: A board treating individual players' biometric and fitness-tracking data as sensitive, requiring medical-team sign-off before sharing it outside performance staff, mirrors how identifiable Teams usage data requires privacy review before broader use.
Enabling 'Display concealed user information in all reports' tenant-wide surfaces individual employees' communication patterns to anyone with report access. This should always go through privacy and legal review, and access to identifiable reports should be restricted to roles that genuinely need it.
- Teams admin center provides usage reports (Teams usage, device usage, PSTN usage, PSTN blocked users) over 7/30/90-day windows.
- User-identifiable data in reports is concealed by default and only shown when an admin explicitly enables that setting.
- Call Quality Dashboard (CQD) gives tenant-wide, aggregated network quality metrics for engineers; Call Analytics gives per-call detail for helpdesk troubleshooting.
- The Graph reports API (getTeamsUserActivityUserDetail, etc.) lets admins pull the same data programmatically for custom dashboards.
- Microsoft's Power BI template combines usage data with license and adoption trends into one view.
- Report data typically has a one-to-two-day processing lag before it reflects recent activity.
- Exporting or retaining identifiable usage data long-term should go through formal privacy and legal review.
Practice what you learned
1. By default, how does the Teams admin center handle user names in usage reports?
2. What is the key difference between the Call Quality Dashboard (CQD) and Call Analytics?
3. What is the purpose of the Microsoft Graph reports API endpoints like getTeamsUserActivityUserDetail?
4. Approximately how much processing lag should an admin expect before recent Teams activity appears in usage reports?
5. Why should enabling 'Display concealed user information in all reports' go through privacy and legal review?
Was this page helpful?
You May Also Like
Managing Teams Policies
Learn how to configure and assign messaging, meeting, calling, and update policies in the Teams admin center and via PowerShell to control the user experience at scale.
Teams Lifecycle Management
Govern how teams are created, named, expired, archived, and deleted across their full lifecycle using Microsoft 365 Group policies, templates, and retention.
PowerShell for Teams Administration
Use the MicrosoftTeams PowerShell module to automate policy assignment, team and channel provisioning, and compliance auditing at scale, including secure unattended authentication.
Related Reading
Related Study Notes in Microsoft Technologies
Browse all study notesWindows 10 / UWP Development Study Notes
.NET · 30 topics
Microsoft TechnologiesWindows Batch Scripting Study Notes
Batch · 30 topics
Microsoft TechnologiesMFC (Microsoft Foundation Classes) Study Notes
C++ · 30 topics
Microsoft TechnologiesSilverlight Study Notes
.NET · 30 topics
Microsoft TechnologiesXAML Study Notes
.NET · 30 topics
Microsoft TechnologiesWPF (Windows Presentation Foundation) Study Notes
.NET · 30 topics