Chapter 2.44 of 12 in this part

Reservations, savings plans, and commitment maths

AWS advertises "up to 72% off." On a p5 the best real number is 62.4%, and the flexible plan gives you 33.4%. The premium you pay for flexibility scales with how scarce the silicon is — 1.20× on a c5, 1.77× on a p5.

10 min read·revised 2026-08-08

Every cloud sells the same trade: promise to spend, get a discount. The headline numbers are all in the same range — AWS "up to 72%", Azure "up to 72%", Google "up to 70%". None of those numbers is the one you will get on an accelerator, and the gap is not small.

This chapter resolves the real rates against AWS's pricing API rather than reading the marketing page, then derives the one piece of arithmetic that decides whether any commitment is worth signing.

What the discount actually is on a GPU

All rates below are us-east-1, Linux, shared tenancy, All Upfront, resolved from AWS's own price-list feeds on 2026-08-08. On-demand for a p5.48xlarge is $55.04/hour.

Instance On-demand Compute SP 1yr Compute SP 3yr EC2 Instance SP 1yr EC2 Instance SP 3yr
p5.48xlarge $55.04 26.5% 33.4% 41.2% 62.4%
p4d.24xlarge $21.96 29.0% 38.0% 40.8% 62.8%
g5.48xlarge $16.29 26.5% 51.0% 41.2% 62.4%
g6.48xlarge $13.35 24.0% 47.9% 39.2% 60.1%
m5.24xlarge $4.61 31.4% 54.0% 41.2% 62.4%
c5.24xlarge $4.08 32.4% 56.2% 41.2% 63.5%

Two things fall out immediately.

Nobody in this sample gets 72%. The best figure anywhere is 63.5%, on a CPU instance, on the maximum three-year all-upfront commitment. "Up to 72%" is a ceiling that this sample never reaches — which is what "up to" means, and which is why it should never be used as a planning number.

The flexible plan treats GPUs and CPUs completely differently. On a three-year Compute Savings Plan, a c5.24xlarge gets 56.2% off and a p5.48xlarge gets 33.4%. Same plan, same term, same payment option — a 22.8-point spread. The flexible instrument is roughly half as generous on the scarce hardware.

The price of optionality, and what it tracks

Put the two AWS instruments side by side at the same term and payment option, and the ratio is the price of being able to change your mind:

Instance Compute SP (flexible) EC2 Instance SP (locked) Flexibility premium
c5.24xlarge $1.79 $1.49 1.20×
m5.24xlarge $2.12 $1.73 1.22×
g5.48xlarge $7.98 $6.12 1.30×
g6.48xlarge $6.95 $5.33 1.30×
p4d.24xlarge $13.61 $8.16 1.67×
p5.48xlarge $36.68 $20.70 1.77×

(3-year All Upfront, effective $/hour.)

The ordering is not random. The premium for flexibility rises monotonically with how scarce and in-demand the silicon is — 20% on commodity compute, 77% on the newest accelerator. AWS is happy to let you move an m5 commitment around. It charges you dearly for the right to walk away from a p5 one.

That is worth naming plainly, because the Compute Savings Plan is marketed as the safe choice for uncertain workloads, and on GPUs it is priced as the expensive one.

The only formula in this chapter

A commitment bills you for the whole term whether you use it or not. So it beats on-demand only if you use enough of it.

Let d be the discount and u the fraction of your committed capacity you actually consume. Committed cost is rate_c × H. On-demand cost for the same work is u × rate_od × H. Setting them equal:

u* = rate_c / rate_od = 1 − d

The break-even utilisation is exactly the complement of the discount. No modelling, no assumptions — it is a restatement of the discount itself. A 62% discount pays off if you use it more than 38% of the time. A 33% discount needs 67%.

Applied to the p5 rates above:

Instrument on a p5.48xlarge Discount Break-even utilisation
EC2 Instance SP, 3 year 62.4% 37.6%
EC2 Instance SP, 1 year 41.2% 58.8%
Compute SP, 3 year 33.4% 66.6%
Compute SP, 1 year 26.5% 73.5%

And there is the inversion. The flexible three-year plan requires nearly twice the utilisation to break even as the locked one — 66.6% against 37.6%. The instrument sold for people who are unsure about their workload demands far more confidence about volume than the instrument sold for people who are sure.

Two honest qualifications. For Savings Plans, u is the fraction of your committed hourly spend you consume, not one instance's uptime — the commitment floats across instances, which is the whole point. For Azure reservations and Google resource-based CUDs, which bind to a specific SKU, the instance-uptime reading is the right one. And these are All Upfront rates: the effective hourly figure amortises the prepayment but ignores the time value of the cash, which favours the No Upfront option by more than the tables show.

Speaking of which — on that same p5 three-year EC2 Instance plan, No Upfront costs $23.78/hr against All Upfront's $20.70, a 14.9% premium for keeping your money. That is the interest rate AWS is charging you, and it is worth comparing against your actual cost of capital rather than accepting by default.

Three clouds, three ways out — and one with none

This is where the products genuinely diverge, and it rarely appears in the comparison tables.

AWS — resale, with a lifetime cap. The Reserved Instance Marketplace exists and works. But: "Only Amazon EC2 Standard regional and zonal Reserved Instances can be sold" — "Convertible Reserved Instances can't be sold," nor can RIs for RDS, ElastiCache and other services. There must be "at least one month remaining," the RI must have been active 30 days, and the limits "apply to the lifetime of your AWS account… they can't be increased": you can sell up to $50,000 in Reserved Instances, ever. Savings Plans have no marketplace at all and "can't be cancelled during the term."

Azure — exchange or refund, capped annually. You "can exchange a reservation for another reservation of the same type," and refund "up to $50,000 USD in a 12 month rolling window."

Google — no exit. For resource-based commitments: "You are billed monthly for your committed resources until the end of your commitment term, regardless of whether or not you use those resources. You can't cancel a commitment after its purchase." Compute flexible commitments say the same.

The same $50,000 figure appearing on two clouds is a coincidence worth reading carefully, because the terms are opposite: AWS's is a lifetime ceiling on resale, Azure's is a refund allowance that resets every year. For a shop rotating hardware generations, an annually-refreshing allowance is a categorically different instrument from a once-in-an-account-lifetime one.

Google's flexible tier excludes accelerators outright

Google splits commitments in two, and the split lands badly for AI work:

  • Resource-based CUDs cover "vCPUs, Memory, GPUs, Local SSD disks, Sole-tenant nodes" at "up to 70%" for memory-optimized series and "up to 55% for all other machine series" — but are locked to "a specific region and with a specific machine configuration."
  • Compute flexible CUDs are the portable ones. And: "For Compute Engine, you can't purchase compute flexible commitments for GPUs. Only memory, vCPUs, and Local SSD resources are eligible."

So on Google the flexible instrument is not merely more expensive for accelerators, as on AWS — it does not cover them at all. GPU commitments are region-and-configuration-locked or nothing.

One trap deserves flagging: for memory-optimized VMs, flexible CUDs are 3-year only, and buying the 1-year version means "you don't receive any discount on your usage. Your eligible memory-optimized VM spend will burn down your otherwise unused commitment without any discount." A commitment that costs money and discounts nothing is an unusual product to leave purchasable.

Two structural risks the discount tables hide

You are buying a price, not a machine. AWS states it in one line: "Savings Plans doesn't provide capacity reservations." You can be fully committed to three years of p5 spend and still be unable to launch a p5. Given what spot and interruption established about accelerator scarcity, committing spend without committing capacity is the specific risk worth pricing here — and it is the one the discount table cannot show you.

Unused hours evaporate hourly, not monthly. Azure is explicit: a reservation discount is "use-it-or-lose-it. If you don't have matching resources for any hour, then you lose a reservation quantity for that hour. You can't carry forward unused reserved hours." Idle Tuesday nights are not banked against busy Wednesdays. Your utilisation must be computed hour by hour, which is a stricter test than a monthly average and will read lower than whatever number you have in your head.

The diagnostic

  1. What is your real discount — resolved, not advertised? Pull your own instance type from the price list. On a p5 the spread between the marketed 72% and the flexible plan's actual 33.4% is more than a factor of two.
  2. Compute 1 − d. Is your hourly utilisation above it? This one line decides the purchase. Everything else is refinement.
  3. Measure utilisation hourly, not monthly. Azure loses unused hours immediately; averages will flatter you.
  4. Are you paying the flexibility premium knowingly? On commodity CPU it is ~20% and usually worth it. On a p5 it is 77%, and it doubles your break-even.
  5. What is your exit? Standard RI resale caps at $50,000 for the life of the account; Azure refunds $50,000 a year; Google offers nothing. If you expect to switch hardware generations mid-term, this is the deciding term, not the discount.
  6. Have you separated price from capacity? A Savings Plan is not a reservation. If you need the hardware to exist, you need an On-Demand Capacity Reservation as well — and your plan will apply to it.
  7. Is No Upfront's 14.9% premium cheaper than your cost of capital? If yes, keep the cash.

What this chapter is not saying

It is not saying avoid commitments. For a genuinely steady baseline, a three-year locked plan at 62% off is one of the largest single reductions available anywhere in this book, and the break-even at 37.6% utilisation is a low bar for anything running in production.

It is saying that the number on the marketing page is not the number in your contract, the flexible option is not the cautious one, and the exit terms differ more between clouds than the discounts do. Three years is a long time in accelerator generations, and the term you will care about in month fourteen is not the one you compared on when you signed.

Sources & methodcaptured 2026-08-08

Sources, captured 2026-08-08. Rates: all AWS dollar figures were resolved from AWS's own pricing feeds rather than read off a rendered page — on-demand rates from the EC2 metered-unit map at b0.p.awsstatic.com/pricing/2.0/meteredUnitMaps/ec2/USD/current/ec2.json (us-east-1 / "US East (N. Virginia)", OnDemand Linux-instancetype-* entries), and commitment rates from the AWS Compute Savings Plan price list at pricing.us-east-1.amazonaws.com/savingsPlan/v1.0/aws/AWSComputeSavingsPlan/, version 20260806201051, filtered to BoxUsage:<type> with operation RunInstances so every figure is Linux on shared tenancy. That price-list version carries a publication date of 2026-08-06, so the rates are two days old at capture, not live, and AWS changes them without notice. Quoted terms: the four Savings Plans types with their "up to 66% / 35% / 72% / 64%" ceilings, the one-year-equals-365-days definition, the payment options, the Compute-versus-RI comparison table, "Savings Plans doesn't provide capacity reservations," and "can't be cancelled during the term" are from AWS's Savings Plans user guide. The Reserved Instance Marketplace restrictions — Standard-only, Convertible excluded, other services excluded, one-month-remaining and 30-day-active requirements, and the $50,000 lifetime account limit — are from AWS's EC2 user guide. The "up to 72%", the exchange provision and the $50,000 in a 12 month rolling window refund limit are from Microsoft's Azure Reservations overview; the "use-it-or-lose-it" hourly-forfeit rule is from Microsoft's reservation-discount-application page. Google's resource-based eligible-resource list including GPUs, the "up to 70%" / "up to 55%" hardware-commitment discounts, the "you can't cancel a commitment after its purchase" and billed-regardless-of-use terms, the statement that compute flexible commitments can't be purchased for GPUs, and the memory-optimized 1-year no-discount behaviour are from Google's Compute Engine committed-use-discounts overview. Computed by me, verified in a separate pass: every discount percentage in the first table (derived as 1 − rate/on-demand), the flexibility-premium ratios, the 22.8-point Compute-SP spread between c5 and p5, the 14.9% No-Upfront premium, and the break-even table. The break-even identity u* = 1 − d is my derivation — it is elementary algebra rather than a vendor claim, and it assumes the commitment bills for every hour of the term, which the quoted terms above establish for all three clouds. The p5en.48xlarge appears in the Savings Plan list but had no matching on-demand entry in the metered-unit map, so no discount is computed for it rather than estimated; its raw commitment rates were captured but are omitted here. No GCP or Azure dollar rates appear — both publish accelerator pricing on client-rendered pages I did not resolve against an API in this pass, and rather than mix a resolved AWS number with an unresolved one, the GCP and Azure material here is confined to terms and published percentages. The observation that the flexibility premium tracks hardware scarcity, the reading of the two $50,000 limits as opposite instruments, and the diagnostic are my framing.

Want this done on your account rather than by you?

The handbook is the method, written out in full so you can run it yourself — that is the point of publishing it. If you would rather someone else did the first pass, the teardown is free and you keep the findings either way.