gcloud compute instances add-metadata INSTANCE_NAME [--metadata=KEY=VALUE,[KEY=VALUE,…]] [--metadata-from-file=KEY=LOCAL_FILE_PATH,[…]] [--zone=ZONE] [GCLOUD_WIDE_FLAG …]
Only metadata keys that are provided are mutated. Existing metadata entries will remain unaffected.
In order to retrieve custom metadata, run:
gcloud compute instances describe example-instance --zone
us-central1-a --format="value(metadata)"important-data to
an instance named test-instance, run:
gcloud compute instances add-metadata test-instance --metadata=important-data="2 plus 2 equals 4"To add multiple key-value pairs at once, separate them with commas:
gcloud compute instances add-metadata test-instance --metadata=important-data="2 plus 2 equals 4",unimportant-data=zeroINSTANCE_NAME--metadata=KEY=VALUE,[KEY=VALUE,…]--metadata
key-1=value-1,key-2=value-2,key-3=value-3. The combined
total size for all metadata entries is 512 KB.
In images that have Compute Engine tools installed on them, such as the official images, the
following metadata keys have special meanings:
startup-script--metadata-from-file can be used to pull
the value from a file.
startup-script-urlstartup-script except that the
script contents are pulled from a publicly-accessible location on the web.
For startup scripts on Windows instances, the following metadata keys have
special meanings:
windows-startup-script-url,
windows-startup-script-cmd,
windows-startup-script-bat,
windows-startup-script-ps1,
sysprep-specialize-script-url,
sysprep-specialize-script-cmd,
sysprep-specialize-script-bat, and
sysprep-specialize-script-ps1. For more
information, see Running startup
scripts.
At least one of [--metadata] or [--metadata-from-file] is required.
--metadata-from-file=KEY=LOCAL_FILE_PATH,[…]--metadata except that the value
for the entry will be read from a local file. This is useful for values that are
too large such as startup-script contents.
At least one of [--metadata] or [--metadata-from-file] is required.
--zone=ZONEgcloud attempts to identify the
appropriate zone by searching for resources in your currently active project. If
the zone cannot be determined, gcloud prompts you for a selection with
all available Google Cloud Platform zones.
To avoid prompting when this flag is omitted, the user can set the
property:
compute/zone
gcloud config set compute/zone ZONEA list of zones can be fetched by running:
gcloud compute zones listTo unset the property, run:
gcloud config unset compute/zoneCLOUDSDK_COMPUTE_ZONE.
--access-token-file,
--account, --billing-project,
--configuration,
--flags-file,
--flatten, --format, --help, --impersonate-service-account,
--log-http,
--project, --quiet, --trace-token, --user-output-enabled,
--verbosity.
Run $ gcloud help for details.
gcloud alpha compute instances add-metadatagcloud beta compute instances add-metadatagcloud preview compute instances add-metadata
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-05-27 UTC.