Forum Discussion
How to Retrieve Data for Copilot Adoption & ROI Dashboard
Hi everyone,
I’m currently working on building a dashboard similar to a Copilot Adoption & ROI Cockpit and I’m trying to understand how to retrieve the underlying data for the following metrics:
- Assigned licenses / active Copilot users
- Copilot usage (interactions, hours saved, etc.)
- Usage segmentation (high vs occasional users)
- Satisfaction metrics
- Business value / ROI (hours saved, savings by business line)
What is the best way to retrieve and centralize this data?
Thanks
Hi Mmoustaqssa.
I am not entirely certain of the exact technical architecture you intend to use, but the metrics you mention correspond directly to data exposed through the Microsoft 365 Admin Centre, the Microsoft Graph Reports API, and the Microsoft 365 Usage Reports. In enterprise contexts, the most reliable approach is to retrieve this information through the Graph API and centralise it using a structured data pipeline (for example, Fabric or Synapse).Recommended source: Microsoft Graph (Directory and Reports APIs)Recommended Architecture for Centralisation:Microsoft Graph → Data Factory (or Fabric pipelines) → Lakehouse (Delta) → Dataflows → Power BI semantic model → DashboardHI Mmoustaqssa ,
Thank you for reaching out to the Microsoft Community Forum.
Please refer below prerequisites to retrieve this data through Microsoft Graph.
1. At least one user must have a Microsoft 365 Copilot license assigned. Copilot usage APIs return no data if Copilot is not enabled in the tenant.
Note: Copilot usage reporting via Graph is available only in Public cloud.
2. Copilot data is exposed via Microsoft Graph Reports APIs, currently under:
/reports/getMicrosoft365CopilotUsageUserDetail
/reports/getMicrosoft365CopilotUserCountSummary
/reports/getMicrosoft365CopilotUserCountTrendNote: These APIs are currently in /beta, return aggregated usage data and support a maximum of 180 days history.
3. Microsoft Graph permissions, you must grant Microsoft Graph – Reports.Read.All
4. Entra ID app registration, you must register an application in Microsoft Entra ID with:
a. Microsoft Graph --> Reports.Read.All
b. Admin consent granted tenant‑wide
c. Client secret or certificate configuredNote: This is mandatory for Azure Data Factory, Fabric pipelines, Synapse and Automated workloads.
Please refer below link.
reportRoot: getMicrosoft365CopilotUsageUserDetail - Microsoft Graph beta | Microsoft Learn
I hope this information helps. Please do let us know if you have any further queries.
Regards,
Dinesh
5 Replies
- ZanquetaSuper User
Hi Mmoustaqssa.
I am not entirely certain of the exact technical architecture you intend to use, but the metrics you mention correspond directly to data exposed through the Microsoft 365 Admin Centre, the Microsoft Graph Reports API, and the Microsoft 365 Usage Reports. In enterprise contexts, the most reliable approach is to retrieve this information through the Graph API and centralise it using a structured data pipeline (for example, Fabric or Synapse).Recommended source: Microsoft Graph (Directory and Reports APIs)Recommended Architecture for Centralisation:Microsoft Graph → Data Factory (or Fabric pipelines) → Lakehouse (Delta) → Dataflows → Power BI semantic model → Dashboard- MmoustaqssaRegular Visitor
Hi
Thanks for your answer, very helpful.
I have a quick follow-up:What are the prerequisites to retrieve this data through Microsoft Graph?
- v-dineshyaCommunity Support
HI Mmoustaqssa ,
Thank you for reaching out to the Microsoft Community Forum.
Please refer below prerequisites to retrieve this data through Microsoft Graph.
1. At least one user must have a Microsoft 365 Copilot license assigned. Copilot usage APIs return no data if Copilot is not enabled in the tenant.
Note: Copilot usage reporting via Graph is available only in Public cloud.
2. Copilot data is exposed via Microsoft Graph Reports APIs, currently under:
/reports/getMicrosoft365CopilotUsageUserDetail
/reports/getMicrosoft365CopilotUserCountSummary
/reports/getMicrosoft365CopilotUserCountTrendNote: These APIs are currently in /beta, return aggregated usage data and support a maximum of 180 days history.
3. Microsoft Graph permissions, you must grant Microsoft Graph – Reports.Read.All
4. Entra ID app registration, you must register an application in Microsoft Entra ID with:
a. Microsoft Graph --> Reports.Read.All
b. Admin consent granted tenant‑wide
c. Client secret or certificate configuredNote: This is mandatory for Azure Data Factory, Fabric pipelines, Synapse and Automated workloads.
Please refer below link.
reportRoot: getMicrosoft365CopilotUsageUserDetail - Microsoft Graph beta | Microsoft Learn
I hope this information helps. Please do let us know if you have any further queries.
Regards,
Dinesh