# Idle or Underutilized Compute Engine Reservations

Canonical: https://www.pointfive.co/efficiency-hub/inefficiencies/idle-or-underutilized-compute-engine-reservations

Compute Engine on-demand reservations guarantee capacity for a number of VMs of a given shape in a zone.

By: PointFive

Updated: 2026-09-28

[Cloud Efficiency Hub](https://www.pointfive.co/efficiency-hub) 

The short version

Compute Engine on-demand reservations guarantee capacity for a number of VMs of a given shape in a zone.

PointFive Research

Cloud cost research at PointFive

GCP service

[GCP Compute Engine](https://www.pointfive.co/efficiency-hub/cloud-services/gcp-compute-engine)

Category

[Compute](https://www.pointfive.co/efficiency-hub/service-category/compute)

Reference

CER-0464

Type

Idle or Unused Resource

## Explanation

Why the waste happens and who it affects.

Google charges for the reserved resources at the same on-demand rate as running VMs, including any applicable discounts, for as long as the reservation exists. When VMs consume the reservation, that charge is simply the VMs' normal cost; when they do not, the unconsumed slots are paid for with nothing running on them.

Reservations are typically created ahead of a launch, a migration, a peak event or a period of capacity scarcity for GPUs or large machine types, and then left in place after the event or after the workload moves to another machine type, zone or to GKE. A reservation sized for peak also keeps billing for the full VM count while autoscaling runs well below it.

## Billing model

The pricing dimensions that drive this cost.

Reserved resources

VCPUs, memory, GPUs and Local SSD in a reservation are billed at on-demand rates, including applicable discounts, from creation until deletion, whether consumed or not

Consumed capacity

VMs that match and consume a reservation are not billed twice; only the unconsumed portion is waste

Commitment-attached reservations

Reservations attached to resource-based commitments receive the commitment discount and are tied to the commitment

Auto-delete

A reservation can be set to delete itself at a specified time, whether or not it is fully consumed

## How to detect

4 checks to find it in your estate.

- Review the Idle reservations recommender (google.compute.IdleResourceRecommender, "Delete unused resource reservations"); it flags reservations that accrue cost but were not consumed by any active resource over the observation period (7 days by default, configurable up to 30 days)

- Review the Underutilized reservations recommender (google.compute.RightSizeResourceRecommender, "Right-size underutilized reservations"); the default utilization threshold is 80% and can be changed

- Chart compute.googleapis.com/reservation/reserved against reservation/used, or compare specificReservation.count with inUseCount from gcloud compute reservations describe

- Check reservations attached to CUDs and reservations for TPU VMs separately, since the recommenders do not cover them

## How to fix

4 ways to remove the waste.

- Delete reservations that are no longer needed with gcloud compute reservations delete, after confirming no planned event depends on the capacity

- Resize underutilized reservations down to the steady consumed count (gcloud compute reservations update --vm-count), keeping headroom only where capacity risk justifies it

- Set auto-delete on reservations created for a bounded event so they end automatically, and use future reservations for planned capacity needs instead of holding capacity open ahead of time

- Make sure workloads actually target the reservation (automatic consumption or matching specific reservation affinity); a VM with a different machine type, zone or affinity will not consume it

## Documentation

Vendor references for pricing and configuration.

- [About reservations  docs.cloud.google.com](https://docs.cloud.google.com/compute/docs/instances/reservations-overview)

- [Reservation recommendations  docs.cloud.google.com](https://docs.cloud.google.com/compute/docs/instances/reservation-recommendations-overview)

- [View and apply idle reservation recommendations  docs.cloud.google.com](https://docs.cloud.google.com/compute/docs/instances/view-and-apply-idle-reservation-recommendations)

- [VM instance pricing  cloud.google.com](https://cloud.google.com/products/compute/pricing)

## Related inefficiencies

[Browse the library](https://www.pointfive.co/efficiency-hub)

- GCP Compute Engine  CER-0460

### [Idle Compute Engine VM Instance](https://www.pointfive.co/efficiency-hub/inefficiencies/idle-compute-engine-vm-instance)

An idle VM is a running Compute Engine instance that does no useful work: its CPU and network activity come mostly from the OS and monitoring agents. Typical sources are VMs left over from finished projects, migrations, proofs of concept,...

Compute

- GCP Compute Engine  CER-0282

### [Missed Use of Committed Use Discounts for Compute Engine](https://www.pointfive.co/efficiency-hub/inefficiencies/missed-use-of-committed-use-discounts-for-compute-engine)

Workloads with predictable, long-running compute usage continue to run entirely on on-demand pricing instead of leveraging Committed Use Discounts. For stable environments, such as production services or continuously running batch...

Compute

- GCP Compute Engine  CER-0089

### [Underutilized VM Commitments Due to Architectural Drift](https://www.pointfive.co/efficiency-hub/inefficiencies/underutilized-vm-commitments-due-to-architectural-drift)

VM-based Committed Use Discounts in GCP offer cost savings for predictable workloads, but they are rigid: they apply only to specified VM types, quantities, and regions. When organizations evolve their architecture - such as moving to GKE...

Compute

---
Source: the public page above. Product screenshots and illustrative interfaces are examples, not live customer data.

