Upgrade commitments

You can upgrade 1-year commitments to convert them into 3-year commitments.When you upgrade a commitment, Compute Engine changes its plan from1-year to 3-year, which lets you get a higher discount rate for your committedresources and continue receiving committed use discounts (CUDs) for a longertime period.

This document explains how commitment upgrades work and provides steps toupgrade your 1-year commitments to 3-year commitments.

How commitment upgrades work

When you upgrade a 1-year commitment, Compute Engine changes itsplan from 1-year to 3-year and moves the expiration date of itsongoingterm (the term that is active when you request the upgrade) two years into thefuture. The upgrade becomes valid at 12 AM US and Canadian Pacific Time(UTC-8, or UTC-7 during daylight saving time) on the day following the upgradeoperation, and you begin to receive the new CUD rate that is applicable for3-year commitments.

Upgrading a commitment changes theterm extension eligibility windowfor your commitment. After the upgrade takes effect, Compute Engineupdates the eligibility window to remain open for up to one year from the startdate of the ongoing term. When you upgrade a commitment, the followingproperties of the commitment don't change:

  • Name
  • Start date
  • Region
  • Project
  • Commitment type
  • Auto-renewal setting
  • Committed resources

The commitment upgrade process remains the same regardless of whether yourcommitment has a preset term length or a custom term length. Any attachedreservations for your commitment continue to exist throughout thelifetime of your upgraded term, unless you manually replace them.

Example of an upgraded commitment

The following table shows an example of a 1-year commitment (commitment-1)with a 1-year term, which is upgraded from a 1-year to a 3-year plan:

Commitment propertyBefore upgradeAfter upgrade
Namecommitment-1commitment-1
TypeN2N2
Regionus-central1us-central1
Projectexample-project-1example-project-1
Resources
  • vCPUs: 200
  • Memory: 200 GB
  • v Hs: 200
  • Memory: 200 GB
Plan1-year3-year
Start date*January 1, 2020January 1, 2020
End date†January 1, 2021January 1, 2023
Term extension eligibility window open untilMay 1, 2020January 1, 2021
Auto-renewal settingDisabledDisabled

*Commitment starts at 12 AM US and Canadian Pacific Time(UTC-8 or UTC-7) on the specified start date.
Commitment ends at 12 AM US and Canadian Pacific Time(UTC-8 or UTC-7) on the specified end date.

Quota considerations

You don't typically need to request additional quota when you upgrade acommitment. However, if you upgrade a commitment on the same daythat it expires, you mustverifythat you still have sufficient quota available. That's because on the day that acommitment expires, whatever quota the commitment was using up gets releasedback into your pool of available quota, and it might get used up by your otherbusiness needs.

Pricing implications

Your commitment fee is the sum of the discounted prices of all your committedresources. When you upgrade a commitment, Compute Engineapplies the new 3-year CUD rate and recalculates the discounted price foreach committed resource. To do this recalculation, Compute Engine usesthe prevailing on-demand price of each resource on the day your original termbecame active. This new discounted price for each resource stays the same untilthe end of your upgraded term, even if the on-demand prices change.

Note: If you merge or split your commitments, then the discounted prices foryour committed resources might change on the day your merged or splitcommitments become active.

Limitations

  • You can upgrade only active commitments.
  • You can't upgrade software license commitments.

Upgrade a commitment

Upgrade a commitment by using the gcloud CLI,Google Cloud console, or REST.

Note: If you are using the gcloud CLI or RESTto upgrade a commitment and also want toenable auto-renewalon that commitment, then you must do so using two separate operations. You canperform these two operations at the same time using the Google Cloud console,but on the gcloud CLI or REST, you mustenable auto-renewal either before or after you upgrade the commitment.

Permissions required for this task

To perform this task, you must have the followingpermissions:

  • compute.commitments.update on the project or organization.

Console

  1. In the Google Cloud console, select the project where you want toupgrade a commitment, and go to theCommitted use discountspage.

    Go to Committed use discounts

  2. To initiate the upgrade operation for a commitment, select an activehardware commitment in theHardware commitments tab of theCommitment list page and clickUpgrade.

    • Alternatively, you can click the name of the active commitment that youwant to upgrade. After theHardware commitment details page opens,clickUpgrade.
  3. In theUpgrade committed use discount pane that appears, verify theNew end time of your modified commitment and clickUpgrade.

  4. To finish the upgrade operation and return to theCommitment listpage, in theUpgrade your commitment? dialog that appears, reviewthe terms and conditions and then clickUpgrade.

gcloud

To upgrade a commitment, use thegcloud compute commitments update commandwith the--plan flag.

gcloud compute commitments updateCOMMITMENT_NAME \--plan=36-month \    --region=REGION \    --project=PROJECT_NAME

Replace the following:

  • COMMITMENT_NAME: the name of the commitmentthat you want to upgrade.
  • REGION: the region of the commitmentthat you want to upgrade.
  • PROJECT_NAME: the name of the project for whichyou want to upgrade the commitment.

For example, consider a 1-year commitment,commitment-upgrade-example, inregionus-central1 and for projectproject-upgrade-example. Thefollowing gcloud CLI command upgrades the commitment to a3-year plan.

gcloud compute commitments update commitment-upgrade-example \    --plan=36-month \    --region=us-central1 \    --project=project-upgrade-example

REST

To upgrade a commitment, use theregionCommitments.update method.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments/COMMITMENT_NAME{  "name":COMMITMENT_NAME,"plan": "THIRTY_SIX_MONTH",}

Replace the following:

  • PROJECT_ID: the project ID of the project whereyou want to upgrade a commitment.
  • REGION: the region of the commitmentthat you want to upgrade.
  • COMMITMENT_NAME: the name of the commitmentthat you want to upgrade.

For example, consider a 1-year commitment,commitment-upgrade-example, inregionus-central1 and for projectproject-upgrade-example. Thefollowing request upgrades the commitment to a 3-year plan.

PATCH https://compute.googleapis.com/compute/v1/projects/project-upgrade-example/regions/us-central1/commitments/commitment-upgrade-example{  "name": "commitment-upgrade-example",  "plan": "THIRTY_SIX_MONTH",}

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 2026-02-18 UTC.