{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreiauyjs44j2fnnec3sh5l3zq3hfp664cuncej27lo6utuhcw7ez7eu",
    "uri": "at://did:plc:qz6ohvpdsdvv5kniizyfz25y/app.bsky.feed.post/3ml443r4z3m62"
  },
  "coverImage": {
    "$type": "blob",
    "ref": {
      "$link": "bafkreie46zeswt6okvp5txh3exsxg7s7tfz27mrtuwcysprft7f6jy3iha"
    },
    "mimeType": "image/jpeg",
    "size": 953370
  },
  "path": "/article/4166659/cloud-modernization-is-advancing-utilization-isnt.html",
  "publishedAt": "2026-05-05T11:00:00.000Z",
  "site": "https://www.cio.com",
  "tags": [
    "Cloud Computing, Cloud Management, Cloud-Native, Kubernetes and Containers, Multicloud",
    "2023 Container Report",
    "2025 State of Containers and Serverless",
    "own coverage of cloud strategy",
    "CIO.com has noted in discussions of meaningful metrics",
    "CNCF Annual Survey",
    "2022",
    "2023",
    "Want to join?"
  ],
  "textContent": "At Datadog, an observability and security platform for cloud applications, I work on research studies that analyze anonymized infrastructure telemetry from thousands of production environments across Kubernetes, managed container platforms and serverless services across cloud providers. The datasets span multiple cloud providers and billions of workload hours. Much of that work goes into our annual reports on container and serverless adoption, where we examine how organizations run workloads in modern cloud environments.\n\nOver the past few years, one question kept coming up as we updated these reports: As cloud platforms become more granular and autoscaling adoption increases, does resource efficiency improve?\n\nGoing into this work, I didn’t have a formal hypothesis about utilization improving over time. But there was an implicit assumption—one that felt reasonable. As platforms became more granular and autoscaling adoption increased, resource efficiency should improve at least incrementally.\n\nIt didn’t.\n\nWhen we compared successive editions of the research, including the 2023 Container Report and the 2025 State of Containers and Serverless, the answer was less straightforward than expected. The share of Kubernetes workloads running well below their requested CPU and memory levels remained broadly consistent between reports.\n\nThat persistence raises an uncomfortable question: If modernization alone doesn’t improve utilization, what does?\n\n## Rapid evolution in cloud infrastructure\n\nCloud environments today look markedly different from even three years ago.\n\nIn the 2023 Container Report, we found that over 65% of Kubernetes workloads were using less than 50% of their requested CPU and memory. That report examined container telemetry across thousands of production environments to understand how teams run Kubernetes workloads.\n\nTwo years later, the 2025 State of Containers and Serverless expanded the scope of the research to look at broader compute patterns, including the growing mix of containers and serverless, while continuing to analyze Kubernetes workloads.\n\nUsing the same <50% threshold for comparison, the overall utilization pattern remained similar. In October 2025, 72% of Kubernetes workloads were still using less than 50% of their requested CPU, and 62% were using less than 50% of their requested memory.\n\nIn other words, even as organizations adopted newer compute models and expanded autoscaling, most workloads continued to run well below their requested capacity.\n\nAt a surface level, the modernization between those report cycles is obvious: More granular compute models, broader instance diversification, increased use of managed services and deeper abstraction.\n\nLooking only at platform capabilities and adoption trends, this appears to be steady operational maturity, the kind often discussed in CIO.com’s own coverage of cloud strategy.\n\nIf modernization alone were enough, we would expect to see measurable improvement in utilization patterns. The data suggests otherwise.\n\n## The utilization baseline barely moved\n\nUsing the same <50% threshold for comparison, the 2025 data shows a familiar pattern. In October 2025, 72% of Kubernetes workloads were using less than 50% of their requested CPU, and 62% (vs. 65% in 2023) were using less than 50% of their requested memory.\n\nIn other words, most workloads still operate well below their provisioned capacity.\n\nLooking even closer, the distribution becomes more pronounced. In October 2025, 57% of workloads were using less than 25% of requested CPU, and 37% were using less than 25% of requested memory.\n\nThis is not marginal inefficiency at the edges. It reflects a large share of workloads running far below their requested baseline.\n\nWhen I saw those updated numbers in the 2025 report, I was a little surprised. Not because I expected perfection, since cloud systems are inherently uneven, but because I expected at least some measurable drift toward tighter provisioning as platform sophistication increased.\n\nInstead, the overall distribution remained remarkably persistent.\n\nTo be clear, this does not imply that teams are careless or that modernization efforts failed. It suggests something more structural. Utilization behaves less like a short-term tuning issue and more like a stable characteristic of how systems are configured and operated over time.\n\nA longitudinal comparison between the 2023 and 2025 data shows that individual workloads churn, clusters scale and instance types diversify, yet the aggregate distribution remains comparatively steady. That persistence stood out more than any single annual trend.\n\nImportantly, the longitudinal data does not explain why that persistence exists. It only shows that modernization at the platform layer does not automatically reshape the utilization distribution.\n\nAt scale, persistent underutilization also has cost implications. Even if individual workloads appear inexpensive, conservative provisioning raises the baseline against which budgets are set.\n\nOver time, that baseline becomes normalized, shaping cloud forecasts, contract negotiations and infrastructure investment priorities.\n\n## Averages hide persistence\n\nInfrastructure data is rarely evenly distributed; it is long-tailed.\n\nA relatively small number of workloads drive sustained utilization. A much larger number are bursty, intermittently active or lightly used. When averaged together, the system appears stable even when individual components are dynamic.\n\nAveraging utilization metrics can therefore be misleading. An average implies symmetry. In practice, resource usage is asymmetric. Extreme values often drive cost and capacity exposure, while the median workload remains comparatively quiet. When those extremes are averaged away, the signals that matter most are softened.\n\nPartial instrumentation adds another layer. Not every workload produces the same performance and utilization data at the same level of detail. As organizations mix legacy systems with newer managed services, visibility gaps are common. Those gaps can skew aggregate metrics and create a false sense of stability or efficiency.\n\nCIOs encounter similar issues when interpreting other aggregate metrics such as average latency, mean time to recovery or blended cloud spend. As CIO.com has noted in discussions of meaningful metrics, aggregation can obscure operational reality.\n\nIn infrastructure, that obscurity can persist for years.\n\n## What “utilization” measures\n\nBefore interpreting the trend, it is important to clarify what these utilization metrics measure.\n\nIn Kubernetes environments, utilization is typically measured relative to requested resources rather than raw machine capacity. Requests influence scheduling and reserve capacity on anode, shaping the baseline against which utilization is measured. But they also encode human judgment. Sometimes that judgment is based on load testing. Sometimes it reflects historical spikes. Sometimes it is simply conservative.\n\nTwo teams can run similar services and choose very different request baselines. The utilization metric will faithfully reflect that configuration choice.\n\nThat is one reason I am cautious about treating utilization as a moral signal. It is a technical metric, but it is also a reflection of configuration decisions embedded over time.\n\nLooking at it over time shows what changes and what stubbornly does not, even as platforms evolve.\n\n## Autoscaling isn’t the same as precision\n\nOne obvious question is whether autoscaling adoption should materially change these patterns.\n\nHorizontal Pod Autoscaling (HPA) is common across Kubernetes environments and widely supported across platforms. This reflects broader ecosystem trends described in the CNCF Annual Survey.\n\nBut elasticity is not the same as precision.\n\nMany autoscaling configurations still center on CPU and memory signals. More context-aware scaling, based on queue depth or application-level indicators, remains less prevalent. Vertical scaling is comparatively rare and often used in advisory modes rather than actively reshaping requests.\n\nWorkloads can scale up and down without necessarily altering their baseline request posture or the broader utilization distribution we observe.\n\nEnabling elasticity is straightforward. Sustaining precision over time is much harder.\n\n## Technical debt doesn’t disappear with new platforms\n\nAnother pattern surfaced in the Container Reports is version lag. In both the 2022 and 2023 editions, a significant share of Kubernetes clusters were running versions approaching end-of-life even as newer releases were widely available.\n\nProduction systems rarely upgrade at the same pace as new platform capabilities are released. End-of-life versions persist. Premium support tiers extend. Older runtimes remain embedded even when more efficient versions are available.\n\nUpgrades compete with feature delivery. Stability is prioritized. Risk is managed conservatively.\n\nVersion adoption does not directly determine utilization levels. But it reflects a broader dynamic: Configuration and upgrade decisions change more slowly than platform capabilities. When analyzed at scale, that inertia becomes visible. New tools layer onto existing systems, but earlier configuration assumptions often remain intact.\n\nIn practice, modern platforms often inherit older provisioning choices.\n\n## Capability is not outcome\n\nSeeing the same utilization pattern persist across report cycles shifted my thinking. It was not about Kubernetes, serverless or autoscaling in isolation. It was about separating capability from outcome.\n\nCloud platforms today offer far more granularity than they did a few years ago. We can allocate resources in smaller increments. We can autoscale pods and nodes. We can mix execution models. We can diversify architectures.\n\nNone of that automatically changes the empirical shape of infrastructure usage.\n\nModernization creates new possibilities, but it does not automatically change how resources are used.\n\nAcross report cycles, it became clear that architecture was evolving faster than the underlying usage patterns.\n\nThat distinction has significant implications for how infrastructure performance—and investment decisions—are interpreted.\n\n## When platform evolution isn’t enough\n\nIf multiple years of visible platform evolution do not materially shift the utilization baseline, the constraint likely extends beyond feature availability.\n\nWhat makes this pattern interesting is not that utilization is low in any single snapshot. It is that it remains low even as surrounding variables change. Platform capabilities evolve. Adoption curves shift. Workload composition becomes more heterogeneous. Yet the aggregate distribution remains comparatively stable.\n\nThat stability suggests something important: Modernization changes what is possible, but it does not automatically change how systems are configured or revisited over time.\n\nFor CIOs and senior technology leaders, the implication is not to pursue the next abstraction layer. It is to examine the decision frameworks that shape provisioning, headroom and risk tolerance year after year.\n\nCloud platforms will continue to evolve quickly. Whether utilization patterns change will depend less on new capabilities and more on how deliberately organizations revisit the assumptions embedded in their configurations.\n\n**This article is published as part of the Foundry Expert Contributor Network.**\n**Want to join?**",
  "title": "Cloud modernization is advancing. Utilization isn’t"
}