Okteto User Activity Metrics Incident
Customer Postmortem & Adoption Recovery Plan
Date: February 2026
Prepared by: Okteto Leadership Team
1. Executive Summary
The Active User metrics displayed in Okteto Insights for customers that activated the “Garbage Collection for Personal Namespaces” feature were overstated due to automated system operations being incorrectly attributed as developer activity. As a result, reported adoption trends did not accurately reflect real usage during that period.
This should not have occurred, and we take responsibility for ensuring adoption metrics are accurate and actionable.
Okteto’s core platform and developer workflows operated normally throughout the period. The issue was isolated to reporting and impacted the adoption signal used for visibility, planning, and enablement decisions.
We have identified the root cause, implemented product fixes to prevent recurrence, and validated a corrected adoption baseline that reflects true developer-driven usage going forward. These changes ensure Insights now reliably measures human activity and excludes all automated system operations.
2. What Happened
Okteto provides two categories of telemetry to customers:
- User Activity metrics, which measure adoption and engagement
- Environment Activity metrics, which support automation and cost controls
An interaction between our namespace garbage collection system and our activity-counting logic caused certain background operations to be recorded as developer-driven activity.
How It Came to Light
During the holiday shutdown, one of our customers noticed that Okteto Insights continued to show unusually high active usage despite most teams being offline.
That observation immediately triggered an engineering escalation and investigation on our side.
3. Root Cause
Several of our customers enabled Personal Namespace Garbage Collection, which performs automated cleanup of inactive namespaces.
A defect in our telemetry attribution meant these automated cleanup events were incorrectly interpreted as user actions. In some cases, the garbage collector also entered a repeated loop, generating additional activity signals.
This resulted in active user counts being inflated during the affected timeframe.
Importantly, this was isolated to reporting accuracy. Okteto’s platform performance and developer workflows were not disrupted.
4. Resolution
Product Fix (Shipping in Okteto 1.41)
We have implemented key fixes to ensure adoption metrics reflect only real developer activity going forward:
- Resolved the garbage collector looping behavior
- Prevented namespace automation cycles from generating false activity signals
- Explicitly excluded automated system operations from adoption reporting
(including garbage collection, sleep/wake automation, and internal jobs)
These updates ensure that Insights will now measure true human-driven usage and exclude automated actions.
A note on what ‘Active Users’ measures:
This metric counts users who performed actions like deploying, running okteto up, or logging in, not the number of containers currently running. A user can be ‘active’ in the reporting period without having a running environment at any given moment.
5. Historical Data Correction
One question raised was whether Okteto can retroactively correct the historical adoption charts shown in Insights during the affected period.
At this time, we cannot safely recompute those two months of stored rollups inside the existing Insights pipeline without introducing inconsistency into the historical record.
What We Can Do Instead
To ensure our customers have accurate visibility entering 2026, Okteto will provide:
- A validated independent set of internal usage metrics aligned to the Active User definition
- A reconstructed view of adoption trends using our internal metrics (available upon request)
- A shared baseline that both teams can rely on until Insights is fully aligned