Skip to content

Copilot Licence Adoption

The question it answers: Which Microsoft 365 Copilot seats were never used or went quiet, and in which apps is Copilot used?

Microsoft 365 Copilot is one of the most expensive per-user licences. Which seats were never used, which went quiet, and in which apps do people actually use Copilot? Unused and inactive seats are listed first - they are the ones to reassign.

Where in the appLicensing › Copilot Adoption
WorkloadLicensing
KindTable · dashboard tile
DataBuilt from the tenant data IntensiveReports keeps in memory and refreshes in the background, so it opens at once.
LicenceMicrosoft 365 Copilot licences.
Report id (API and MCP)entra.licensing.copilot-adoption
ColumnKeyType
UserDisplayNameText
UPNUserPrincipalNameText
StatusStatusStatus
Last Copilot activityLastActivityDate
DaysDaysSinceLastActivityText
Apps used (30 days)AppsUsedText
DepartmentDepartmentText
FilterKey (API)On when the page opens
Only unused and inactive seatsunusedYes

Licence: Microsoft 365 Copilot licences.

Application permissions on the IntensiveReports app registration (all permissions):

PermissionAPIWhat it allowsNote
Reports.Read.AllMicrosoft GraphRead all usage reports
User.Read.AllMicrosoft GraphRead all users’ full profiles
User-LifeCycleInfo.Read.AllMicrosoft GraphRead all users’ lifecycle information
Data sources it reads
  • GET /v1.0/copilot/reports/getMicrosoft365CopilotUsageUserDetail(period='D30')
  • GET /v1.0/users (department)
GET /ir-api/v1/reports/entra.licensing.copilot-adoption?size=100
GET /ir-api/v1/reports/entra.licensing.copilot-adoption?filter=unused

An AI assistant reads it with the MCP tool get_report and the id entra.licensing.copilot-adoption. The client needs the Read grant for Licensing. See Using the API.