Custompilot

Copilot usage metrics API · Changelog, Oct 22 2026

See which of your skills, agents and MCP servers developers actually use.

Copilot usage metrics now report the configured names of the skills, custom agents, MCP servers, slash commands and plugins your organization creates, instead of grouping them under other or custom. This demo simulates 28 days of reports for the fictional org contoso-eng, spanning the release.

Named entries

totals_by_skill, totals_by_custom_agent, totals_by_mcp, totals_by_slash_cmd and totals_by_plugin show the configured name, not other / custom.

Up to 25 entries

Each list now holds up to 25 entries per record (up from 5). Remaining activity goes into a trailing other entry.

Unchanged counts

interaction_count and the distinct_*_use_count fields are calculated exactly as before.

Simulation. Every number on this page is generated in your browser by a deterministic simulator (64 developers, 5 teams, Oct 8 – Nov 4 2026). No real API is called. Names appear from report day Oct 22; earlier days use the September format.

1Before / after: the same day, two report formats

Pick a day and a category. Left: how the September release reported it. Right: how it is reported now.

Sep 17 format

Grouped under other, top 5

Oct 22 format

Configured names, up to 25 + trailing other

2Organization dashboard · organization-28-day report

Daily interactions: named vs grouped

Reported by nameGrouped (other / custom)

Leaderboard since names appeared

3Track adoption after a rollout

Pick one of your customizations. Bars come from the aggregate reports; the line counts developers from the per-user reports.

Daily usage

interaction_count (reported)Hidden inside other (simulated truth)Developers using it

Where to focus enablement

Team = developers active since Oct 22 who used it at least once. Team membership is what you would join from the user-teams-1-day report.

4Per-user report · users-1-day

Raw record


        

5Simulated API explorer

Endpoints return signed download links; the report itself is an NDJSON file. Both steps are simulated here.

Endpoint
Step 1

Request download links


            

          
Step 2

Download the report file


            

6How a configured name is reported

Names are trimmed and limited to 128 characters. Names that look like file paths stay grouped. (Path detection here is an approximation for the demo.)

Try:

Reported as

7Analyze a report file

Drop a real NDJSON report from the API (aggregate 1-day, 28-day, or per-user) or load a simulated one. Files are parsed locally in your browser and never uploaded.

Good to know

Coverage

Names come from Copilot CLI (interactive and prompt mode), the GitHub Copilot app, ACP integrations such as JetBrains, and the Copilot SDK. Prompt mode, the app and ACP need CLI 1.0.97+; the SDK needs v1.0.21+. IDE built-in chat telemetry does not report names.

History

Names appear for report days processed after the release. Earlier days still show other or custom, as in the dashboard above.

Accuracy

Metrics come from client telemetry and can undercount (outdated clients, blocked telemetry). Use them for trends and adoption, not exact accounting.

Review before sharing

Names are reported as configured. Review them before sharing reports outside your organization.

Access

Enterprise owners, billing managers, organization owners, or a custom role with “View Copilot Metrics”. The Copilot usage metrics policy must be enabled.

Plugins ⊂ skills

Plugin totals count only plugin skill invocations, so they are already included in skill totals. Don't add the two together.

Try it on your real data

The repo includes a zero-dependency Node script that fetches a report and lists your named customizations:

GITHUB_TOKEN=<token with read:org> node scripts/summarize.mjs --org YOUR_ORG --report organization-28-day

See the README and the Copilot usage metrics API docs.