A development team can look at its GitHub Copilot dashboard and see usage increasing while agent activity appears to be falling.
At first, that looks like a change in developer behavior. Perhaps developers are using Copilot Chat more often. Perhaps they are moving away from agent workflows. Maybe a new policy or model change affected adoption.
But there is another possibility that is much easier to miss: the work happened, but the telemetry did not attribute it correctly.
GitHub has identified an issue affecting Copilot usage metrics in which agent activity from certain IDE versions was missing or incorrectly attributed after those IDEs moved agent sessions to the Copilot SDK. GitHub is rolling out fixes so that affected agent activity is attributed correctly again. The issue affects usage reporting, not Copilot billing.
For teams using Copilot metrics to measure adoption, this is an important reminder: telemetry is part of an engineering system, and a dashboard number should never be interpreted without understanding how that number was produced.
Why Copilot Usage Metrics Matter
For an individual developer, Copilot usage metrics may not matter much.
For an organization managing hundreds or thousands of developers, they can be useful for answering questions such as:
How many developers are actively using Copilot?
How many developers are using agent features?
Which IDEs are being used?
How much code is being generated or modified?
Are developers adopting newer Copilot workflows?
Is a rollout increasing or decreasing engagement?
These metrics can influence licensing decisions, internal enablement programs, developer productivity initiatives, and engineering-tooling strategy.
That makes inaccurate telemetry more than a cosmetic dashboard problem.
If the organization believes agent adoption has declined when the underlying activity simply was not attributed correctly, the team could make the wrong decision based on incomplete data.
What Caused the Missing Agent Activity?
The problem is related to how some IDEs moved Copilot agent sessions to the Copilot SDK.
Those sessions did not correctly identify which IDE they originated from. As a result, GitHub's usage metrics could not attribute the activity to the appropriate IDE.
Some of that activity was left out of reports, while some was attributed as Copilot CLI activity. GitHub says only IDE versions using the Copilot SDK for agent mode were affected; developers using earlier versions continued to be counted.
The important point is that the developers did not necessarily stop using agents.
The reporting pipeline simply lost information needed to classify the activity correctly.
Conceptually, the problem looked like this:
Developer
|
v
IDE Agent Session
|
v
Copilot SDK
|
X---- IDE identity missing
|
v
Usage Metrics
|
+---- Activity undercounted
|
+---- Some activity attributed incorrectlyThat is a classic telemetry attribution problem.
Why Attribution Matters
A metric such as:
Agent users = 1,250looks simple.
It is not.
The actual number depends on a pipeline that collects events, identifies users and features, aggregates activity, and assigns the activity to dimensions such as IDE, feature, model, or agent type.
A simplified model looks like:
Developer action
↓
Client telemetry
↓
Event classification
↓
Aggregation
↓
Usage report
↓
DashboardIf information is lost near the beginning of that pipeline, the dashboard can still display a perfectly valid-looking number.
The number is simply incomplete.
This is one of the hardest problems with telemetry systems: bad data does not always look like broken data.
The Difference Between Server-Side and Client-Side Telemetry
This incident also illustrates an important distinction in usage analytics.
Some information is available from the server.
For example, a server can know that a Copilot request occurred.
But detailed editor behavior often exists only on the client.
The IDE knows things such as:
Which editor was used
Which feature generated the activity
Which lines were changed
Which suggestion was accepted
Which agent interaction occurred inside the editorThe server may not have enough information to reconstruct all of those details.
GitHub explains that many detailed Copilot usage metrics rely on client-side telemetry, while server-side data can provide other information such as active-user signals.
This creates an important architectural trade-off.
Client telemetry provides richer information, but it depends on the client correctly sending the events.
Server telemetry is generally more independent of IDE configuration, but it cannot see everything that happens inside the development environment.
Why an IDE Update Can Affect Analytics
Developers often think of an IDE update in terms of visible functionality:
New feature
Bug fix
Performance improvement
UI changeBut an IDE update can also change telemetry behavior.
Suppose a previous implementation sends:
agent_session
ide = vscodeThe new implementation moves the session through another SDK but accidentally omits the IDE identifier.
The agent still works.
The developer sees no obvious problem.
The analytics pipeline, however, now receives something closer to:
agent_session
ide = unknownThe development feature appears healthy while the reporting system becomes less accurate.
That is why telemetry changes should be treated as part of a product's compatibility surface.
How the Fix Works From a Developer's Perspective
GitHub is rolling out fixed IDE versions that restore correct attribution.
Visual Studio Code 1.139.0 and later has the fix available. GitHub says Visual Studio 18.12 is expected in October 2026, the next JetBrains plugin release is expected by late October, and Eclipse and Xcode fixes are expected in November.
The practical action for affected teams is therefore straightforward:
Identify affected IDE versions
↓
Deploy fixed versions
↓
Allow updated telemetry to flow
↓
Monitor usage metrics
↓
Compare trends after rolloutOrganizations that centrally manage IDE versions should pay particular attention because a fleet can remain on an affected version even after the fix becomes available.
Missing Data Cannot Be Recovered
One of the most important details is that the missing activity cannot be backfilled.
GitHub says the affected sessions did not contain enough information to determine the originating IDE after the fact. Consequently, historical missing activity cannot simply be reconstructed once the corrected client version is installed.
This creates an important distinction:
Before update
↓
Missing or misattributed data
After update
↓
Correct attributionUpdating the IDE fixes future reporting.
It does not rewrite historical telemetry.
That means organizations should be careful when comparing metrics across the affected period.
A sudden increase after the update may not mean that developers suddenly adopted agents. Some of the increase may simply represent activity that is now being counted correctly.
Copilot CLI Metrics Can Also Look Different
The attribution problem has another side effect.
Some agent activity from affected IDE clients was counted as Copilot CLI activity.
That means organizations could see:
IDE agent activity
↓
Undercounted
Copilot CLI activity
↓
Potentially inflatedThis is particularly important when teams use CLI adoption as a productivity or rollout metric.
A sudden increase in CLI activity during the affected period should not automatically be interpreted as evidence that developers moved from IDE-based agents to terminal-based workflows.
GitHub says the incorrectly attributed historical CLI activity cannot be separated from genuine CLI usage after the fact.
Billing Is a Separate Concern
The telemetry issue can sound alarming because usage metrics and billing are often discussed together.
GitHub explicitly states that this issue affects attribution in usage metrics, not what customers are charged.
That distinction matters for administrators.
A reporting discrepancy should not automatically be interpreted as a billing discrepancy.
Think of the systems as related but separate:
Copilot usage
|
+---- Billing
|
+---- Analytics
|
+---- Adoption reporting
|
+---- Code-generation metricsA defect in one reporting path does not necessarily mean the underlying service usage or billing calculation is incorrect.
What the Metrics Actually Tell You
Even when the telemetry is working correctly, Copilot metrics need careful interpretation.
For example, a line-of-code metric is not equivalent to developer productivity.
A developer who generates 500 lines of code is not necessarily more productive than someone who generates 50.
Likewise:
Agent sessions = 100does not tell you whether those sessions produced useful software.
The metrics are better used as signals of adoption and behavior than as direct measurements of engineering output.
For example, an organization might observe:
Agent adoption ↑
Agent sessions ↑
Pull-request activity ↑That suggests increased agent usage.
It does not prove that the organization's engineering productivity increased by the same amount.
Common Mistakes
Treating dashboard numbers as ground truth
Dashboards are outputs of telemetry pipelines.
When the underlying event collection changes, historical comparisons can become misleading.
Interpreting a sudden trend change as developer behavior
A drop in agent activity could mean developers stopped using agents.
It could also mean a client update changed how those sessions are recorded.
Always check for platform or client changes before drawing conclusions from a sudden metric shift.
Comparing affected and unaffected periods directly
If part of the reporting period contains missing data, a simple month-over-month comparison may exaggerate the apparent change.
Annotate known telemetry gaps when presenting adoption reports.
Treating agent usage as productivity
Usage tells you how a tool is being used.
It does not independently measure code quality, delivery speed, defect rates, or engineering productivity.
Ignoring client versions
If your organization depends on client-side telemetry, IDE versions become part of the reporting infrastructure.
An outdated IDE is not only a developer-tooling concern. It can also affect the accuracy of organizational analytics.
Troubleshooting Missing Agent Activity
If your organization's Copilot metrics show unexpectedly low agent activity, investigate the client environment before assuming a usage change.
A practical sequence is:
Check the affected developers' IDE versions.
Determine whether their IDE uses the affected Copilot agent implementation.
Verify that the IDE has been updated to a fixed version.
Check whether Copilot telemetry is enabled.
Verify that network policies allow the required telemetry traffic.
Compare IDE activity with server-side Copilot data.
Review the reporting period for known attribution gaps.
GitHub also identifies other reasons client-side metrics can be incomplete, including disabled telemetry, network proxies or firewalls blocking telemetry endpoints, outdated IDE or Copilot extensions, and clients that do not provide Copilot telemetry.
This is why troubleshooting should start with the telemetry path rather than the dashboard itself.
How Organizations Should Manage This
Organizations that depend heavily on Copilot analytics should treat developer environments as managed data-producing clients.
That does not necessarily mean forcing every developer onto the exact same IDE configuration.
It does mean establishing a minimum supported version and monitoring compliance.
A practical policy might look like:
Approved IDE versions
↓
Central deployment
↓
Telemetry requirements
↓
Network allowlists
↓
Usage monitoring
↓
Periodic metric validationThis approach reduces the chance that a client-side change silently damages reporting quality across the organization.
GitHub recommends keeping IDEs and Copilot extensions current and using device-management tooling to enforce minimum versions where possible.
Usage Metrics Should Be Validated From Multiple Signals
For important organizational decisions, it is risky to depend on a single metric.
Suppose the dashboard reports:
Agent adoption: 42%Before concluding that adoption has dropped, compare it with other available signals:
Agent sessions
Cloud-agent activity
Pull-request activity
Copilot requests
IDE versions
Developer feedbackIf one metric suddenly changes while several independent indicators remain stable, investigate the measurement system before interpreting the change.
This is standard observability practice applied to developer tooling.
Advantages and Disadvantages
Advantages
More accurate agent reporting after the fix: Updated clients can correctly attribute affected agent activity again.
Better organization-level visibility: Correct attribution makes adoption metrics more useful for understanding how developers use Copilot.
Clearer IDE-level analysis: Correct client identification helps administrators distinguish where agent activity is occurring.
Improved troubleshooting: Understanding the telemetry pipeline makes it easier to distinguish real adoption changes from reporting problems.
Disadvantages
Historical gaps remain: Missing activity from affected clients cannot be reconstructed after the fact.
Metrics depend partly on client behavior: IDE configuration, versions, telemetry settings, and network policies can affect detailed reporting.
Misattribution can distort trends: Activity incorrectly classified as CLI usage can make one feature appear more popular while another appears weaker.
Metrics still require interpretation: Even accurate usage numbers are indicators of tool adoption, not direct measurements of developer productivity.
A Better Way to Read Copilot Metrics
For engineering leaders and platform teams, the safest approach is to treat Copilot metrics as observability data.
Ask three questions:
What happened?
Look at usage and adoption numbers.
Why did it happen?
Compare the numbers with IDE versions, feature rollouts, policy changes, and developer workflows.
Can I trust the measurement?
Check whether the relevant telemetry path was functioning during the reporting period.
That third question is often forgotten.
A metric is only useful when its collection mechanism is reliable enough for the decision being made.
Summary
The recent GitHub Copilot usage-metrics issue is a good example of why developer-tool analytics are more complicated than a dashboard makes them appear.
Agent activity from certain IDE versions was undercounted or misattributed after agent sessions moved to the Copilot SDK. GitHub's fix restores correct attribution in supported client versions, but activity that was missed historically cannot be recovered. Some affected activity was also counted as Copilot CLI usage, making historical CLI metrics harder to interpret.
For organizations using Copilot metrics, the practical lesson is to manage both sides of the system: keep developer clients current and treat usage dashboards as telemetry rather than unquestionable truth.
Agent adoption is worth measuring, but the quality of the measurement matters just as much as the number itself. A sudden change in Copilot metrics should first be explained by the underlying data pipeline before it is interpreted as a change in developer behavior.

Join the conversation! Your thoughts help the community grow.