October 15, 2026 · Timothy O’Brien
The biggest changes to cloud capacity in the last decade
Ten changes that redefined what 'enough' means for cloud capacity between 2015 and 2025: capacity became a market, an architecture, a place, and a kind of power. Each one with a date and a source.

Ten years is long enough to watch an industry change its mind. In 2015, planning cloud capacity mostly meant making a reservation on an instance family. By 2025, capacity had become a market, an architecture, a place, and a kind of power. Every one of those changes has a date on it, and the dates matter, because capacity decisions made on the old assumptions are still running on hardware and contracts that no longer work the way their planners expected. Here is my list, with the date and the source for each.
1. Spot moved from an auction to a capacity pool
For most of the 2010s, Spot was an auction. You bid, the price floated to the highest unfulfilled bid, and a higher bid meant a longer runtime. At re:Invent 2017, AWS replaced the auction: prices adjust gradually based on supply and demand for spare capacity, and interruptions come from capacity being reclaimed, not from someone outbidding you.1 The auction was a market in miniature, each customer’s bid competing with every other bid for the same instance. The pool model is a market in bulk, where price is a property of the pool itself. If you plan capacity on Spot today, you plan around pools and interruption rates, and the old skill, reading the bid history, has nothing left to read.
2. The commitment became a dollar amount instead of a machine
Reserved Instances tied your discount to instance attributes: family, size, operating system, region. Get the forecast wrong and you spent years trading reservations. In November 2019, AWS launched Savings Plans, a commitment measured in dollars per hour that applies automatically across instance families, sizes, operating systems, and even other compute services like Lambda and Fargate; two years later, Database Savings Plans extended the idea across database engines.2 A dollar commitment survives a migration to Arm, a move to a different region, and a rewrite that halves the instance count, none of which trigger an exchange. Commitment planning went from a rack-full-of-RIs negotiation to an annual exercise in setting a spend number. That is a different job, and most teams are still learning it.
3. The provider started designing the hardware
In November 2018, EC2 A1 instances shipped on Arm-based Graviton processors built by Annapurna Labs, chips AWS designed itself.3 That was the moment the provider became a chip company. Graviton grew into generations of processors, and Microsoft and Google followed with chips of their own.4 The change is not just price-performance. When the provider designs the silicon, the product list stops being a procurement sheet of other people’s parts and becomes a roadmap. Ten years ago a capacity plan could assume the instance catalog changed slowly and only at the edges. Now whole families appear because the provider decided to build them, and a five-year plan has to assume the product list will be rewritten underneath it.
4. The autoscaler got smart enough to pick the machines
In November 2021, AWS introduced Karpenter, an open-source autoscaler that watches unschedulable pods, computes the minimal set of instance types that fit them, and launches right-sized nodes directly.5 Autoscaling used to ask for capacity and wait for someone to supply it. Now the autoscaler is the supplier, and it picks the SKU. That moves a decision that used to sit with the capacity team, which instance types exist in the fleet, into software that runs on its own. The team’s job changes shape: instead of pre-picking machines, you define the pools, set the constraints, and audit what the autoscaler chose.
5. Storage performance got two separate dials
Through 2020, EBS performance was welded to volume size: on gp2, more IOPS meant provisioning a bigger disk whether or not you needed the bytes. On December 1, 2020, AWS launched gp3, which decouples IOPS and throughput from capacity at 20% lower per GB than gp2, in AWS’s own words “the flexibility to provision additional IOPS and throughput without needing to add additional storage.”6 One launch, one decade-shaped consequence: every gp2-era sizing model became obsolete, and performance became a purchase rather than a side effect of size. Any plan that still treats storage capacity and storage performance as one knob is paying for bytes it does not need.
6. GPU capacity became a market with its own prices
In 2023, H100 rental rates peaked above $8 per GPU-hour, if you could get them at all.7 By August 2024 the same capacity rented for $1 to $2 an hour on resale markets, and SemiAnalysis’s one-year rental index tracked H100 pricing down to $1.70 per hour in October 2025 before it swung back up nearly 40% to $2.35 by March 2026.8 Two changes sit inside that story: GPU compute became a priced commodity with public indices and a rental curve people track like freight rates, and “capacity” for AI workloads now means entire clusters booked in blocks, which is why AWS sells EC2 Capacity Blocks for ML as a reservation product for exactly this.9 A capacity plan for AI has to model a price curve, not a rate card.
7. The limits moved from chips to power
The clearest sign that capacity outgrew the data center: Microsoft signed a 20-year power purchase agreement with Constellation to restart Three Mile Island Unit 1, 835 megawatts, and the plant got a new name, the Crane Clean Energy Center.10 Amazon bought a data center campus next to a nuclear plant and started signing its own nuclear deals; Google ordered small modular reactors.11 The constraint on cloud capacity is now measured in megawatts and interconnection queues. Ten years ago nobody doing cloud capacity planning had a line item for a nuclear restart. Now it is part of the plan, because the power is the plan.
8. The clouds got new owners of capacity — the neoclouds
In March 2025, CoreWeave announced a deal to provide dedicated compute capacity to OpenAI with a contract value of up to $11.9 billion, signed by a company most enterprise buyers had never heard of five years earlier.12 Oracle signed its own multi-gigawatt agreements with OpenAI. For a decade, “the cloud” meant five or six companies and capacity planning meant picking among them. Now the supply side has a second tier, and the same GPU hours can be sourced, brokered, and resold several times before they run a workload. That changes where the risk sits: a capacity commitment is only as good as the company and the power contract behind it, and that company might have been a crypto miner in 2020.
9. The map kept growing, on purpose
Uptime Institute counted 105 operating regions across the three biggest hyperscalers in mid-2023, with planned growth to 130 within a year.13 Behind that number sits a decade of deliberate duplication: every workload that matters runs in two or three of them, and the cloud’s promise, capacity wherever you need it, is a standing purchase of empty rooms in dozens of countries. This is the quietest item on the list. Nobody writes headlines about a new region, but regional redundancy is the largest standing capacity decision most organizations make.
10. When the network is the bottleneck, the cloud ships trucks
In June 2020, AWS launched Snowcone, a rugged data-transfer device that weighs under five pounds and holds 8 TB, for getting data to the cloud when the network cannot carry it.14 The pattern is older than the cloud itself, but this decade’s version is notable for what happened after: bandwidth kept growing, and by November 2024 AWS discontinued Snowcone and three older Snowball models, explaining that customers “strongly prefer online migrations to offline.”15 The lesson is the lifecycle. Capacity planning has an escape hatch for the case where the network, not the cloud, is the constraint, and the escape hatch has its own retirement date. A plan that includes physical devices has to plan for their retirement too. The product arrived because capacity had a network-shaped hole in it, and it left because the hole closed.
What the decade added up to
Read the list in order and a pattern shows up. Capacity used to be a quantity you procured. Over ten years it became a set of markets (Spot pools, dollar commitments, GPU rental indices), an architecture the provider designs down to the silicon, a geography that kept expanding, and finally a power problem that reached into the grid itself. The old questions, how many instances, which family, one year or three, still get asked, but they no longer define the job.
The book’s argument is that capacity is a system property, not a quantity (chapter 2). The decade is the evidence. When the commitment is a dollar amount (chapter 21), when the autoscaler picks the hardware (chapter 2), and when the binding constraint is a nuclear restart (chapter 17), a spreadsheet of instance counts was never going to be the plan.
Sources
AWS Compute Blog, “New Amazon EC2 Spot pricing model: Simplified purchasing without bidding and fewer interruptions” — re:Invent 2017 model change; prices “adjust gradually based on long-term trends in supply and demand”; interruption driven by EC2 reclaiming capacity; two-minute notice. https://aws.amazon.com/blogs/compute/new-amazon-ec2-spot-pricing/ (accessed October 15, 2026).↩︎
AWS News Blog, “New – Savings Plans for AWS Compute Services” (November 2019) — commitment in dollars per hour; discounts up to 72%; automatic application across EC2, Fargate, Lambda. https://aws.amazon.com/blogs/aws/new-savings-plans-for-aws-compute-services/ ; AWS News Blog, “Introducing Database Savings Plans for AWS Databases” (re:Invent 2021) — commitment applied across database engines. https://aws.amazon.com/blogs/aws/introducing-database-savings-plans-for-aws-databases/ (both accessed October 15, 2026).↩︎
AWS News Blog, “New – EC2 Instances (A1) Powered by Arm-Based AWS Graviton Processors” (November 2018) — first AWS-designed Arm processors in EC2, built by Annapurna Labs. https://aws.amazon.com/blogs/aws/new-ec2-instances-a1-powered-by-arm-based-aws-graviton-processors/ ; CNBC, “Microsoft reveals Maia AI processor and Cobalt Arm-based chip” (November 15, 2023) — Microsoft follows with Cobalt; Google announced its first TPU in 2016. https://www.cnbc.com/2023/11/15/microsoft-reveals-maia-ai-processor-and-cobalt-arm-based-chip.html (both accessed October 15, 2026).↩︎↩︎
AWS News Blog, “Introducing Karpenter – An Open-Source High-Performance Kubernetes Cluster Autoscaler” (November 2021) — watches unschedulable pods, computes packing, launches nodes directly. https://aws.amazon.com/blogs/aws/introducing-karpenter-an-open-source-high-performance-kubernetes-cluster-autoscaler/ (accessed October 15, 2026).↩︎
Amazon Press Center, “AWS Announces Four Storage Innovations” (December 1, 2020) — gp3 decouples IOPS and throughput from storage capacity; 3,000 IOPS and 125 MB/s baseline; up to 16,000 IOPS provisioned; 20% lower price per GB than gp2. https://press.aboutamazon.com/2020/12/aws-announces-four-storage-innovations (accessed October 15, 2026).↩︎
latent.space, Eugene Cheah, “$2 H100s: How the GPU Rental Bubble Burst” (October 2024) — H100s at $8/hour in 2023 “if you could get them”; by August 2024, $1–$2/hour on resale markets. https://www.latent.space/p/gpu-bubble ; Seeking Alpha, “Nvidia’s H100 GPU rental prices surge nearly 40% in 6 months: SemiAnalysis” (March 2026) — SemiAnalysis H100 1-Year Rental Price Index from $1.70/hour in October 2025 to $2.35/hour in March 2026. https://seekingalpha.com/news/4572260-nvidias-h100-gpu-rental-prices-surge-nearly-40-in-6-months-semianalysis (accessed October 15, 2026).↩︎↩︎
AWS News Blog, “Announcing Amazon EC2 Capacity Blocks for ML to reserve GPU capacity for your machine learning workloads” (re:Invent 2023). https://aws.amazon.com/blogs/aws/announcing-amazon-ec2-capacity-blocks-for-ml-to-reserve-gpu-capacity-for-your-machine-learning-workloads/ (accessed October 15, 2026).↩︎
Constellation Energy press release, “Constellation to Launch Crane Clean Energy Center, Restoring Jobs and Carbon-Free Power to The Grid” (September 20, 2024) — 20-year power purchase agreement with Microsoft; restart of Three Mile Island Unit 1; approximately 835 MW. https://www.constellationenergy.com/news/2024/Constellation-to-Launch-Crane-Clean-Energy-Center-Restoring-Jobs-and-Carbon-Free-Power-to-The-Grid.html ; Observer, “Amazon, Google, Microsoft Sign Nuclear Deals to Power A.I. Ambitions” (October 2024) — Amazon’s $650 million Talen Energy data center acquisition next to a nuclear plant; Google’s Kairos Power small modular reactor agreement. https://observer.com/2024/10/amazon-google-microsoft-nuclear-power-ai-ambitions/ (both accessed October 15, 2026).↩︎↩︎
CoreWeave press release, “CoreWeave Announces Agreement with OpenAI to Deliver AI Infrastructure” (March 10, 2025) — dedicated compute capacity for OpenAI training and services; contract value up to $11.9 billion. https://investors.coreweave.com/news/news-details/2025/CoreWeave-Announces-Agreement-with-OpenAI-to-Deliver-AI-Infrastructure/default.aspx (accessed October 15, 2026).↩︎
Uptime Institute, “Data shows the cloud goes where the money is” (May 2023) — 105 operating regions across AWS, Google Cloud and Microsoft Azure; planned growth to 130 within a year. https://journal.uptimeinstitute.com/data-shows-the-cloud-goes-where-the-money-is (accessed October 15, 2026).↩︎
Amazon Press Center, “AWS Announces General Availability of AWS Snowcone” (June 17, 2020) — small, ultra-portable, rugged edge computing and data transfer device; under 5 lbs; 8 TB usable storage; moves data to AWS offline by shipping the device. https://press.aboutamazon.com/2020/6/aws-announces-general-availability-of-aws-snowcone ; AWS News Blog, Snowball Edge category — “Starting with AWS Import/Export back in 2009, followed by Snowball in 2015, Snowmobile and Snowball Edge in 2016, and Snowcone in 2020.” https://aws.amazon.com/blogs/aws/category/storage/aws-snowball-edge/ (accessed October 15, 2026).↩︎
AWS Storage Blog, “AWS Snow device updates” — Snowcone and three Snowball Edge models discontinued effective November 12, 2024; customers “strongly prefer online migrations to offline.” https://aws.amazon.com/blogs/storage/aws-snow-device-updates/ (accessed October 15, 2026).↩︎
