Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Copilot Studio provides comprehensive analytics that help you understand an agent's usage and key performance indicators. You can also create AI-powered custom metrics by describing the metric in natural language from the agent's Analytics page. Custom metrics appear as labeled donut graphs under Custom metrics.
By using Copilot Studio Kit, you can also monitor agents using Agent Inventory and analyze conversation transcripts with Conversation Analyzer.
In Copilot Studio you can view reports related to the following analytics:
- Performance and usage
- Customer satisfaction
- Session information
- Topic usage
- Billed sessions
However, you might need to create or use custom analytics. For example, you might need to:
- Share analytics with stakeholders or users.
- Report on conversation transcripts data for a period longer than the default last 30 days.
- Design a report not covered by out-of-the-box analytics.
You can use a few different approaches to take the analytics data recorded by Copilot Studio and use it in customized reports. First, let's understand the role of Dataverse in storing session data.
Copilot Studio, Dataverse, and analytics
Dataverse stores conversation transcripts and custom analytics data.
Conversation transcripts data
The analytics shown in Copilot Studio come from a data service residing within Copilot Studio. Usage data is also written to the associated Dataverse environment in the conversation transcripts table.
Retention periods
By default, both sources have a data retention of 30 days. You can change the retention period for conversation transcripts in Dataverse.
Copilot Studio Dataverse tables
Copilot Studio uses the following tables for custom analytics in Dataverse:
- Copilot (
bot). This table includes details of each agent in an environment. The details are often a small amount of data. - Copilot component (
botcomponent). This table lists the topics, entities, and dialogs associated with the agent in your environment. The details are often a small amount of data. - ConversationTranscript (
conversationtranscript). This table contains detailed conversation data for all the agents in your environment. The size of the data in this table is related to the use of the agent and can be large.
Azure Synapse Link for Dataverse (Azure Data Lake Storage Gen2)
When there's need to retain conversation transcripts longer than the default retention period, build custom metrics or dashboards. Our recommended approach is to export raw conversation transcripts data to a more cost-effective data store like Azure Data Lake Storage Gen2 using the Azure Synapse Link for Dataverse feature.
The export creates an incremental sync of configured Dataverse tables in the Azure data lake, using the Common Data Model format.
You need to take more steps:
- Create an Azure Data Lake Storage Gen2 and connect it to Dataverse.
- During configuration, select the ConversationTranscript table (Copilot and Copilot component don't support incremental sync).
Warning
By default, Azure Synapse Link for Dataverse mirrors the configured table data from Dataverse to the Azure data lake. Therefore, any record that gets deleted in Dataverse (for example, by the recurring bulk delete job that deletes conversation transcripts older than 30 days by default) is also removed from the Azure data lake. To work around this behavior, create copies or snapshots of your data in the Azure data lake, or configure the synchronization to use append-only mode.