Format current Compute Engine regions and zones
The Google Cloud CLI (gcloud) can list Compute Engine locations and format the results for people or scripts. Unlike a copied terminal transcript, these commands query Google Cloud when you run them, so the region and zone list stays current.
Regions and zones
A region is a geographic area. A zone is an isolated deployment area within a region. A region usually contains multiple zones, such as us-central1-a and us-central1-b in us-central1. For a workload that needs to tolerate a single-zone failure, deploy across zones in the same region; for broader disaster recovery, consider a second region and the added latency, cost, and operational requirements.
The available machine families and other products vary by location. A region or zone showing UP does not guarantee that every machine type has capacity or that your project has quota there. Check the product and machine type you need before choosing a location.
Google's current Compute Engine location catalog includes examples such as these (not a complete list):
| Region | Example zones | Location |
|---|---|---|
africa-south1 | africa-south1-a, africa-south1-b, africa-south1-c | Johannesburg, South Africa |
us-central1 | us-central1-a, us-central1-b, us-central1-c, us-central1-f | Council Bluffs, Iowa |
us-east5 | us-east5-a, us-east5-b, us-east5-c | Columbus, Ohio |
This is a location sample, not a saved gcloud transcript. Use the commands below for the live list and status in your active project.
List regions
Run this command to show the region name, its description, and current status:
gcloud compute regions list \
--format="table(name,description,status)"
The default command output also includes project-specific quota usage. Use a custom format when you only need location and status, or keep the default output when you are checking quotas.
Filter and sort the list, for example to show European regions:
gcloud compute regions list \
--filter='name~"europe"' \
--sort-by=name \
--format="table(name,description,status)"
To inspect the quotas for one region:
gcloud compute regions describe us-central1 \
--format="table(quotas:format='table(metric,limit,usage)')"
Quota limits and usage belong to the selected project, so another project can show different numbers.
List zones
Display each zone with its parent region and status:
gcloud compute zones list \
--sort-by=name \
--format="table(name,region.basename():label=REGION,status)"
Filter to one region with a name pattern:
gcloud compute zones list \
--filter='name~"^us-central1-"' \
--sort-by=name \
--format="table(name,region.basename():label=REGION,status)"
For a compact list of just the zone names:
gcloud compute zones list \
--filter='name~"^us-central1-"' \
--sort-by=name \
--format="value(name)"
Choose a format
The --format flag controls how gcloud displays returned resources:
table(...)creates a readable table.value(field)prints selected values without a header, which is useful in shell pipelines.jsonandyamlreturn structured output for scripts or inspection.--filterselects matching resources, while--sort-bycontrols their order.
For example, show the regions as JSON:
gcloud compute regions list \
--format="json(name,description,status)"
To explore available formatting options and projection syntax, run:
gcloud topic formats
The result of regions list and zones list depends on the active Google Cloud project and can change as Google adds locations or updates their status. For location geography, supported machine series, processors, and other current availability details, use Google's Compute Engine regions and zones guide. See also the gcloud compute regions list reference and gcloud compute zones list reference.