Upgrade commitments Stay organized with collections Save and categorize content based on your preferences.
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 property | Before upgrade | After upgrade |
|---|---|---|
| Name | commitment-1 | commitment-1 |
| Type | N2 | N2 |
| Region | us-central1 | us-central1 |
| Project | example-project-1 | example-project-1 |
| Resources |
|
|
| Plan | 1-year | 3-year |
| Start date* | January 1, 2020 | January 1, 2020 |
| End date† | January 1, 2021 | January 1, 2023 |
| Term extension eligibility window open until | May 1, 2020 | January 1, 2021 |
| Auto-renewal setting | Disabled | Disabled |
*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.updateon the project or organization.
Console
In the Google Cloud console, select the project where you want toupgrade a commitment, and go to theCommitted use discountspage.
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.
In theUpgrade committed use discount pane that appears, verify theNew end time of your modified commitment and clickUpgrade.
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
- Learn how toanalyze the effectiveness of your CUDs.
- Learn how torenew commitments automatically.
- Learn how toextend the term length of resource-based commitments.
- Learn how tomerge and split resource-based commitments.
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.