The Copilot usage metrics dashboard and APIs display and export data using a consistent set of fields. This reference lists all available metrics and describes how to interpret their values in both dashboard visuals and NDJSON or API exports.
- The Copilot usage metrics dashboards are available at the enterprise and organization level.
- The Copilot usage metrics APIs support enterprise-, organization-, and user-level records.
For guidance on how to read and interpret these metrics, see GitHub Copilot usage metrics.
Copilot usage dashboard metrics
These metrics appear directly in the Copilot usage dashboard. These charts do not include Copilot CLI usage.
| Metric | Description |
|---|---|
| Agent adoption | Percentage of Copilot-licensed active users who tried an agent in the current calendar month. |
| Average chat requests per active user | Average number of chat requests per active user. |
| Code completions (suggested/accepted) | Total number of inline code suggestions shown and accepted. |
| Code completion acceptance rate | Percentage of suggestions accepted by users. |
| Daily active users | Number of unique users who used Copilot on a given day. |
| Weekly active users | Number of unique users who used Copilot during a seven-day window. |
| Total active users | Licensed users active in the current calendar month. |
| Language usage | Distribution of programming languages used with Copilot. |
| Language usage per day | Daily breakdown of languages used. |
| Model usage | Distribution of AI models used for chat. |
| Model usage per day | Daily breakdown of chat model usage. |
| Model usage per chat mode | Model usage by Copilot feature (ask, edit, plan, agent). |
| Model usage per language | Distribution of languages broken down by model. |
| Most used chat model | The most frequently used chat model in the last 28 days. |
| Requests per chat mode | Number of chat requests by mode (ask, edit, plan, agent). |
Code generation dashboard metrics
These metrics appear in the code generation dashboard and provide a breakdown of how code is being generated across user-initiated and agent-initiated activity. All values are derived from lines of code (LoC) added or deleted in the IDE.
| Metric | Description |
|---|---|
| Lines of code changed with AI | Total lines of code added and deleted across all modes in the last 28 days. |
| Agent contribution | Percentage of lines of code added and deleted by agents (including edit, agent, and custom modes) in the last 28 days. |
| Average lines deleted by agent | Average number of lines automatically deleted by agents on behalf of active users during the current calendar month. |
| Daily total of lines added and deleted | Total number of lines added to and deleted from the codebase across all modes for each day. |
| User-initiated code changes | Lines suggested or manually added by users through code completions and chat panel actions (insert, copy, or apply). |
| Agent-initiated code changes | Lines automatically added to or deleted from the codebase by agents on behalf of users across edit, agent, and custom modes. |
| User-initiated code changes per model | User-initiated lines of code, grouped by model used in the IDE. |
| Agent-initiated code changes per model | Agent-initiated lines of code, grouped by model performing the agent actions. |
| User-initiated code changes per language | User-initiated lines of code, grouped by programming language. |
| Agent-initiated code changes per language | Agent-initiated lines of code, grouped by programming language. |
API and export fields
These fields appear in the exported NDJSON reports and in the Copilot usage metrics APIs. They provide daily records at the enterprise, organization, or user scope, depending on the metric.
For example schemas of the data returned by the APIs, see Example schema for Copilot usage metrics.
| Field | Description |
|---|---|
agent_edit | Captures lines added and deleted when Copilot (in agent and edit mode) writes changes directly into your files in the IDE. agent_edit is not included in suggestion-based metrics and may not populate suggestion-style fields (for example, user_initiated_interaction_count). Counts edits from custom agents as well. |
report_start_day / report_end_day | Start and end dates for the 28-day reporting period. |
day | Calendar day this record represents. |
enterprise_id | Unique ID of the enterprise. |
organization_id (API only) | Unique ID of the organization. |
user_id / user_login | Unique identifier and GitHub username for the user. |
user_initiated_interaction_count | Number of explicit prompts sent to Copilot. Only counts messages or prompts actively sent to the model. Does not include opening the chat panel, switching modes (for example, ask, edit, plan, or agent), using keyboard shortcuts to open the inline UI, or making configuration changes. |
chat_panel_agent_mode | Captures user-initiated interactions in the chat panel with agent mode selected. |
chat_panel_ask_mode | Captures user-initiated interactions in the chat panel with ask mode selected. |
chat_panel_custom_mode | Captures user-initiated interactions in the chat panel with a custom agent selected. |
chat_panel_edit_mode | Captures user-initiated interactions in the chat panel with edit mode selected. |
chat_panel_unknown_mode | Captures user-initiated interactions in the chat panel where the mode is unknown. |
code_generation_activity_count | Number of distinct Copilot output events generated. Includes: All generated content, including comments and docstrings. Multiple blocks: Each distinct code block from a single user prompt counts as a separate generation. Note: This metric is not directly comparable to user_initiated_interaction_count, since one prompt can produce multiple generations. |
code_acceptance_activity_count | Number of suggestions or code blocks accepted by users. Counts: All built-in accept actions, such as “apply to file,” “insert at cursor,” “insert into terminal,” and use of the Copy button. Does not count: Manual OS clipboard actions (for example, Ctrl+C). Granularity: Each acceptance action increments the count once, regardless of how many code blocks were generated by the initial prompt. |
loc_suggested_to_add_sum | Lines of code Copilot suggested to add (completions, inline chat, chat panel, etc.; excludes agent edits). |
loc_suggested_to_delete_sum | Lines of code Copilot suggested to delete (future support planned). |
loc_added_sum | Lines of code actually added to the editor (accepted completions, applied code blocks, agent/edit mode). |
loc_deleted_sum | Lines of code deleted from the editor (currently from agent edits). |
totals_by_ide | Breakdown of metrics by IDE used. |
totals_by_feature | Breakdown of metrics by Copilot feature (e.g., inline chat, chat panel). |
totals_by_language_feature | Breakdown combining language and feature dimensions. |
totals_by_model_feature / totals_by_language_model | Model-specific breakdowns for chat activity (not completions). When auto model selection is enabled, activity is attributed to the actual model used rather than appearing as Auto. |
last_known_ide_version / last_known_plugin_version | The most recent IDE and Copilot Chat extension version detected for each user. |
daily_active_cli_users | Number of unique users in the enterprise or organization who used Copilot via the CLI on a given day. This field is independent of IDE active user counts and is not included in IDE-based active user definitions. Omitted for enterprises or organizations with no CLI usage on that day. |
totals_by_cli | Breakdown of CLI-specific metrics for the enterprise or organization on a given day. Independent of IDE metrics—CLI usage is not reflected in other fields such as totals_by_ide or totals_by_feature. Omitted for enterprises or organizations with no CLI usage on that day. See Copilot CLI metrics fields below. |
used_cli | Captures whether the user has used Copilot CLI that day. |
used_agent | Captures whether the user has used IDE agent mode that day. |
used_chat | Captures whether the user has used IDE chat that day. |
Copilot CLI metrics fields (API only)
The totals_by_cli object contains the following nested fields when CLI usage is present.
| Field | Description |
|---|---|
totals_by_cli.session_count | Number of distinct CLI sessions initiated on this day. |
totals_by_cli.request_count | Total number of requests made to Copilot via the CLI on this day, including both user-initiated prompts and automated agentic follow-up calls. |
totals_by_cli.token_usage.output_tokens_sum | Total number of output tokens generated across all CLI requests on this day. |
totals_by_cli.token_usage.prompt_tokens_sum | Total number of prompt tokens sent across all CLI requests on this day. |
totals_by_cli.token_usage.avg_tokens_per_request | Average number of output and prompt tokens per CLI request, computed as (output_tokens_sum + prompt_tokens_sum) ÷ request_count. |
totals_by_cli.prompt_count | Total number of user prompts, commands, or queries executed within a session. |
totals_by_cli.last_known_cli_version | Most recent Copilot CLI version detected for the user that day. |
Pull request activity fields (API only)
Important
Organization- and enterprise-level reports may show different totals due to differences in user deduplication and attribution timing. For guidance on interpreting pull request metrics across scopes, see GitHub Copilot usage metrics.
These fields capture daily pull request creation, review, merge, and suggestion activity at the enterprise or organization scope, including activity performed by Copilot.
| Field | Description |
|---|---|
pull_requests.total_created | Total number of pull requests created on this specific day. Creation is a one-time event. Each pull request is counted only on the day it is created. |
pull_requests.total_reviewed | Total number of pull requests reviewed on this specific day. The same pull request may be counted on multiple days if it receives reviews on multiple days. Within a single day, each pull request is counted once, even if multiple review actions occur. |
pull_requests.total_merged | Total number of pull requests merged on this specific day. Merging is a one-time event. Each pull request is counted only on the day it is merged. |
pull_requests.median_minutes_to_merge | Median time, in minutes, between pull request creation and merge for pull requests merged on this specific day. Median is used to reduce the impact of outliers from unusually long-running pull requests. |
pull_requests.total_suggestions | Total number of pull request review suggestions generated on this specific day, regardless of author. |
pull_requests.total_applied_suggestions | Total number of pull request review suggestions that were applied on this specific day, regardless of author. |
pull_requests.total_created_by_copilot | Number of pull requests created by Copilot on this specific day. |
pull_requests.total_reviewed_by_copilot | Number of pull requests reviewed by Copilot on this specific day. A pull request may be counted on multiple days if Copilot reviews it on multiple days. |
pull_requests.total_merged_created_by_copilot | Number of pull requests created by Copilot that were merged on this specific day. Each pull request is counted only on the day it is merged. |
pull_requests.median_minutes_to_merge_copilot_authored | Median time, in minutes, between pull request creation and merge for pull requests created by Copilot and merged on this specific day. |
pull_requests.total_copilot_suggestions | Number of pull request review suggestions generated by Copilot on this specific day. |
pull_requests.total_copilot_applied_suggestions | Number of pull request review suggestions generated by Copilot that were applied on this specific day. |