About future reservation requests

This document gives you an overview of future reservation requests. To learnmore about the different types of reservations, seeChoose a reservation type.

Use future reservations to request assurance of important or difficult-to-obtaincapacity in advance.

Overview

Compared toon-demand reservations, futurereservations provide you with an even higher level of assurance in obtainingcapacity for Compute Engine zonal resources. With future reservations,you can request to reserve capacity starting on a specific date up to 1 year inthe future. After you create a future reservation, Google Cloud reviews yourrequest and, if approved, Compute Engine provisions the requestedcapacity on the date and time you specified. This process helps ensure that therequested resources are available and reserved for your projects when you needthem, and prevents you from not obtaining the requested resources due toresource availability errors. For example, future reservations can be useful todo the following:

  • Migrate a large number of virtual machine (VM) instances.

  • Obtain highly-demanded resources.

  • Secure capacity for peak scale events.

Each future reservation provides a very high-level of assurance for one or moreVMs with the same properties in a specific zone. If Google Cloud approvesa future reservation request, then, on the date you requested to have thereserved capacity available, Compute Engine subtracts any matching,existing reservations and running VMs, and it automatically creates reservationsto reach the requested capacity specified in the future reservation. The newautomatically created reservations can then be consumed just like on-demandreservations, and they prevent anyone else from using your reserved resourcesuntil they're deleted.

There are no additional costs for creating future reservation requests. You onlystart to pay when Compute Engine provisions the reserved resources, andyou're charged at the same cost as on-demand reservations.

Important: If you can't access and use future reservations in thegcloud CLI or Compute Engine API, you might not be eligible toaccess and use future reservations at this time. In that case, contact youraccount team or thesales team.

How future reservations work

The details of how future reservations work are outlined in the followingsections.

Future reservations properties

When you create a future reservation request, you must define the followingproperties:

Additionally, you can define the following properties:

  • Auto-delete

    Theauto-delete option specifies whether or not you wantCompute Engine to automatically delete (auto-delete) anyauto-created reservations provisioned for this request, regardless ifthey're fully consumed or not. Compute Engine deletes theauto-created reservations within 2 hours after the specified deletion time.Automatically deleting auto-created reservations can be useful to avoidunnecessary charges for the auto-created reservations that aren't consumedfor some time.

  • Description

    Thedescription specifies an optional text to describe the properties ofyour future reservation request.

  • Planning status

    Theplanning status specifies if a future reservation request wassubmitted for review to Google Cloud or not. For more information, seeFuture reservations status in this document.

Future reservations status

This section specifies the possible states that a future reservation request canbe set to. A future reservation request contains the following status fields:

  • Planning status

    This section explains the planning status, which you specify when creating afuture reservation request. The planning status specifies if a futurereservation request is in a draft state or was submitted toGoogle Cloud for review.

  • Procurement status

    This section explains the procurement status, which is set byCompute Engine after you create a future reservation request.At first, the procurement status field displays the approval status of afuture reservation request. After Google Cloud approves a futurereservation request and the request enters its lock time, this fielddisplays the procurement status of the requested resources.

Future reservations planning status

When creating a future reservation request, you can set its planning status(planningStatus) to one of the following values:

  • Draft (DRAFT): By default, you create a draft future reservationrequest. You can modify the draft of a future reservation request as neededand, when you're satisfied with your changes, you can submit it toGoogle Cloud for review. Google recommends creating a draft requestfirst as this lets youdetermine the number of VMs thatCompute Engine will provision for the request instead of manuallyestimating this number, and optionally modify the number of reserved VMs inthe request before submitting it for review.

  • Submitted (SUBMITTED): The future reservation request was submittedfor review to Google Cloud. After you submit a future reservationrequest for review, you can't change its planning status back toDRAFT.Optionally, you can immediately submit a future reservation request forreview when creating it.

Future reservations procurement status

After creating a future reservation request, Compute Engine sets itsprocurement status (procurementStatus) to one of the following values:

  • Drafting (DRAFTING): The future reservation request is in its draftstate.

  • Pending approval (PENDING_APPROVAL): The future reservation request issubmitted for approval to Google Cloud. While the request is inreview, the procurement status of a future reservation request can be set toone of the following:

    • Declined (DECLINED): Google Cloud has declined the futurereservation request. You can still modify the future reservation requestand, after you've finalized your changes, submit it again for approval.

    • Approved (APPROVED): Google Cloud has approved the futurereservation request and Compute Engine plans to provision theauto-created reservations with the requested capacity at the start timeof the reservation period. If Google Cloud approves the futurereservation request within 56 days (8 weeks) from its start time, thenthe future reservation enters itslock time within a fewminutes.

    • Canceled (CANCELED): A user canceled the future reservationrequest during review, or after Google Cloud approved or declinedit.

    After a future reservation request is approved or declined, you can modifyone or more properties of the future reservation request and submit it againto Google Cloud for review. This action sets the status of the futurereservation back to pending approval.

  • Procuring (PROCURING): 56 days (8weeks) from the start time of its reservation period, a future reservationenters its lock time. After the future reservation enters this state:

    • You can't cancel the future reservation anymore.

    • You can only delete the future reservation after its end time.

    • If you want to modify the reservation period, the share settings, thetotal count, or the VM properties of the future reservation, you mustrequest approval from Google Cloud.After then, Google Cloud approves or declines your request bychanging itsupdate status. IfGoogle Cloud declines a request and you don't submit new ones,Compute Engine provisions the reserved resources using thepreviously-specified properties.

    If a future reservation specifies a reservation period that is less than 56days from the date and time you submit a future reservation request, thenthe future reservation enters its lock time within a few minutes afterapproval.

  • Provisioning (PROVISIONING): 24 hours before the start time specifiedin a future reservation, Compute Engine starts to provision therequested resources by automatically creating reservations. Then,Compute Engine sets the procurement status of the future reservationto one of the following:

    The auto-created reservations can be consumed at the start time. To makesure you have the total capacity requested, identify any unconsumedauto-created reservations and create VMs to consume them. You can onlymodify or delete an auto-created reservation after the end time specified inthe future reservation. For more information, seeHow Compute Engine provisions resourcesin this document.

Future reservations updates

After creating a future reservation request, you can optionallyupdate it—cancel it, delete it, modify it, or request to modify it.However, you can only update future reservation requests during certain timeframes, as explained in the following sections.

Future reservation lock time

After you submit a future reservation request, you can cancel or delete it anytime before Google Cloud starts procuring (PROCURING) its resources, atwhich point the future reservation enters its lock time. During the lock timefor a future reservation, you can no longer cancel it and can't delete ituntil after its end time.

Additionally, the lock time affects when you can request modifications. The locktime for a future reservation request begins at one of the following times:

  • If the future reservation request specifies a start time that is less than56 days (8 weeks) away from when its submitted, the future reservationrequest enters the lock time shortly after it's approved.

  • Otherwise, the lock time for the future reservation request begins 56 daysfrom its start time.

Future reservation modification

If a future reservation request isn't canceled or pending approval, then you canmodify the request at any time before it reaches a procurement status ofProvisioning (PROVISIONING).

After a future reservation request is approved, you can modify the followingproperties only if you request a modification from Google Cloud:

You can only request one modification (of one or more properties) for anapproved future reservation at a time. Additionally, if you submit the followingtypes of modification requests, Google Cloud is likely to decline them:

Submitting a modification request creates the update status (AmendmentStatus)field in the future reservation. After Google Cloud reviews the request,Compute Engine sets the update status to one of the following values:

  • Update pending approval (AMENDMENT_PENDING_APPROVAL):Google Cloud is reviewing your request.

  • Update approved (AMENDMENT_APPROVED): Google Cloud has approvedyour request. Compute Engine will provision the reserved resourcesusing the approved properties.

  • Update declined (AMENDMENT_DECLINED): Google Cloud has declinedyour request. Unless you submit a new request and the request is approved,Compute Engine provisions the reserved resources usingpreviously-approved properties.

To learn more about how to modify future reservation requests and the propertiesthat you can modify, seeModify future reservation requests.

Future reservations review process

To provision the requested capacity, you must submit any future reservationrequests to Google Cloud for review. Google Cloud typically takesfive days to review your request. If Google Cloud needs more time or hasquestions, then youraccount team or thesales team will contact you.

If a future reservation request or modification request is approved, thenGoogle Cloud uses commercially reasonable efforts to make your requestedcapacity available at the start time of the future reservation's reservationperiod. Google Cloud prioritizes the delivery of your reserved capacityover other customers without approved future reservations with the sameproperties. For more information, seeService Specific Terms.

To increase the likelihood that Google Cloud approves a futurereservation request, make sure to specify the following when creating ormodifying a future reservation request:

Recommended start time

56 days (8 weeks) from the start time of its reservation period, any approvedfuture reservation request enters alock time. If the start timespecified in an approved future reservation is less than 56 days from the dateand time you submit a future reservation request for review, then the futurereservation request enters its lock time within a few minutes from approval.

To have enough time to cancel or delete a future reservation request, as well assubmit a modification request, specifying astart time that is more than 56 days from the date and time you submit a futurereservation request for review is recommended.

Recommended minimum reservation period

When creating or modifying a future reservation request, you must specify areservation period of at least 24 hours. However, to increase your chances thatGoogle Cloud approves your future reservation request, specify one of thefollowing reservation periods:

  • 14 days or longer: if your future reservation request specifies both ofthe following:

    • An N1, N2, or N2D machine series

    • A zone in one of the following regions:

      AmericaAsiaEurope
      Iowa (us-central1)Singapore (asia-southeast1)Belgium (europe-west1)
      Oregon (us-west1)Germany (europe-west3)
      South Carolina (us-east1)Netherlands (europe-west4)
      Virginia (us-east4)
  • 365 days or longer: if your future reservation request specifies anyother combination ofavailable regions for Compute Engineandsupported machine series.

If you want to reserve resources for a shorter reservation period than isrecommended, then you must contact youraccount team or thesales team to discuss your request beforesubmitting it. Otherwise, Google Cloud is likely to decline your request.

How Compute Engine provisions reserved resources

This section explains how Compute Engine provisions the reservedresources:

  • Count and provision reserved resources

    This section explains how Compute Engine accounts for existingfuture reservations, reservations, and VMs that match your request whenprovisioning the total count of resources for an approved futurereservation.

  • Auto-created reservations

    This section explains the type of reservations that Compute Enginecreates for an approved future reservation at its start time.

Count and provision reserved resources

To reach the total count of an approved future reservation request,Compute Engine does the following:

  1. Compute Engine subtracts any matching existing (consumed andunconsumed) reservations that are only shared with (some or all of) theprojects specified in the future reservation.

  2. Compute Engine automatically creates reservations for the remainingamount. This means the following:

    • Any existing matching VMs start consuming the auto-created reservations.

    • You'll need to create matching VMs for any auto-created reservation thatwasn't consumed.

For example, assume that you create a shared future reservation request in zoneus-central1-a. This future reservation request specifies a total count of 10VMs withn2-standard-2 machine type, project A as the owner project, andproject B and C as the consumer projects. After this future reservation requestis approved and Compute Engine starts creating reservations at thestart time of the reservation period, assume that these projects contain thefollowing resources with VM properties that match the future reservation:

  • In project A, 1 running VM that isnot consuming a reservation.

  • In project B, 1 unconsumed shared reservation with project C for 2 VMs.

  • In project C, 1 unconsumed single-project reservation for 1 VM.

In this scenario, Compute Engine automatically creates a sharedreservation for 7 VMs to reach a total count of 10 VMs at the start time.

Caution: 24 hours before the start time of a future reservation's reservationperiod, Google doesn't recommend deleting or modifying existing, matchingreservations for the projects specified in your future reservations. Otherwise,Compute Engine might not have enough notice to account for yourrequested capacity.

To learn how to determine the number of VMs that Compute Engine plans toprovision for an existing future reservation request, seeDetermine the number of provisioned VMs.

Auto-created reservations

24 hours before the start time specified in a future reservation,Compute Engine starts provisioning the requested capacity in an approvedfuture reservation by automatically creating reservations, but you're onlycharged for the auto-created reservations at the start time. Each auto-createdreservation has the following properties:

  • It can be automatically consumed by creatingVMs with matching properties.

  • It has matching VM properties as the ones specified in its futurereservation request.

  • It matches the share settings of its future reservation request.Specifically:

    • If you created a single-project future reservation request, eachauto-created reservation is a single-project reservation.

    • If you created a shared future reservation request, each auto-createdreservation is a shared reservation that specifies the same ownerproject and consumer projects.

  • Its name starts with thename prefix specified in its futurereservation request.

  • If you enabled theauto-delete option when creating ormodifying a future reservation request, each auto-created reservationspecifies adeleteAtTime field set to the time when Compute Engineautomatically deletes the auto-created reservation.

Auto-created reservations can't be modified or deleted until the end time ofthe future reservation request. Otherwise, you can consume, modify, and deleteauto-created reservations the same as on-demand reservations.

Caution: 14 days before the start time of a future reservation, make sure thatyour project has sufficient quota for the resources that you reserved.Otherwise, Compute Engine might only provision part of the requestedcapacity at the start time. To verify that you have sufficient quota for yourreserved capacity,request a quota adjustment.

Restrictions

The restrictions for reservations are outlined in the following sections.

Restrictions on creation

When creating a future reservation request, the following restrictions apply:

  • If you have existing reservations with matching properties, read thefollowing:

    • If your project already contains auto-created or on-demand reservations,or these reservations are shared with your project, you can only createfuture reservation requests shared across all the projects specified inthe existing reservations.

    • If your project already contains a single-project future reservationrequest, you can create single-project future reservation requests only.

    • If your project already contains a shared future reservation request, ora future reservation request is shared with your project, you can onlycreate shared future reservation requests across the same projects. Forexample, a shared future reservation request in project A (the ownerproject) that is shared with project B and C (the consumer projects),means that you can do the following:

      • Create another shared future reservation request in project A andshare it with projects B and C.

      • Create a shared future reservation request in project B and shareit with projects A and C.

      • Create a shared future reservation request in project C and shareit with projects A and B.

  • You can only specify to provision the requested resources usingautomatically consumed reservations.

  • For the following machine types, contact youraccount team or thesales team to discuss your futurereservation request before submitting it; otherwise, Google Cloud islikely to decline your request:

    • H4D, A2, G2, or G4
    • N1 with attached GPUs
  • You can't reserve A4X, A4, A3 Ultra, A3 High (with less than 8 GPUs),or E2 machine types.

  • You can't reserve resources for a period shorter than 24 hours.

  • You can't specify a reservation period that overlaps with the reservationperiod of another existing future reservation request with matching VMproperties and zone. This restriction applies whether the existing requestis located in your project or shared with your project.

  • You can't specify a start time that is after 1 year from the date and timeyou submit a future reservation request for review.

  • You can't specify placement policies.

Restrictions after creation

After creating a future reservation request, the following restrictions apply:

  • If you move a project that created a future reservation request to adifferent organization and the future reservation hasn't entered its locktime yet, the future reservation request is deleted.

  • After a future reservation request is approved and enters itslock time, the following restrictions apply:

    • You can't cancel the future reservation anymore.

    • If you want toattach auto-created reservations to a commitment,the following restrictions apply:

      • You can purchase the commitment only during the last 24 hours beforethe start time of the reservation period.

      • You can attach only the auto-created reservations that have theauto-delete option disabled. If you enabled the auto-delete optionwhen creating or modifying a future reservation request, you mustdisable the option.

    • You can only delete the future reservation after its end time.

  • After a future reservation enters its start time, you can only modify ordelete the auto-created reservations provisioned for the future reservationafter the end time.

Billing

There are no additional costs for creating future reservation requests.

After a future reservation request is approved and enters its lock time, youcommit to pay for the total provisioned capacity for the entire reservationperiod, unless you request Google Cloud to modify the number or the VMproperties of the resources you're reserving before the start time of thereservation period. If Google Cloud approves the request, you then committo pay for the updated requested capacity.

At the start time of a future reservation's reservation period,Google Cloud charges youonly for the auto-created reservations toreach thetotal count specified in the future reservation. IfCompute Engine can only partially deliver the requested capacity, you'reonly charged for the provisioned resources.

Any auto-created reservation incurs charges as follows:

What's next

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-12-15 UTC.