Sitemap
Zencore Engineering

Zencore was started in 2021 by former senior Google Cloud engineers, solution architects & developers. We are focused on solving business challenges with Google Cloud technologies and tools, and foster a culture of engineering & delivery excellence.

A faster way to select the best cloud region for your workloads

5 min readOct 15, 2025

--

A new API just went live on Google Cloud — Cloud Location Finder. It simplifies the process of answering the question “Which cloud region should I run my workloads?” — across GCP, AWS, Azure, and Oracle Cloud.

Press enter or click to view image in full size

There are several criteria you are probably thinking about when selecting the cloud region to deploy your workloads to:

  • Latency — for your customers and for developers alike
  • Geographic location
  • Data sovereignty requirements
  • Carbon footprint
  • Product availability

The data for each of these is available online, but it does take time to research each individual area and find the best cloud regions. For Google Cloud, for example, we would use the Region Picker for cost, sustainability and latency, the Network Intelligence Performance Dashboard for detailed latency metrics, and consult the carbon footprint data available for each Google Cloud region — along with validating that the products we need are available in that region. For example, if you need a specific GPU, your options will likely be limited.

AWS and other cloud providers require similar multi-step research across different dashboards and documentation pages.

What if you could compare all this data across Google Cloud, AWS, Azure and even Oracle in seconds?

Now you can! With the new Cloud Location Finder API, all this info is just a few gcloud commands away.

Preparation

If you don’t have gcloud CLI yet, you’ll need to install it. Follow these docs.

If you do, you’ll need to upgrade the components by running:

gcloud components update

Authenticate to GCP:

gcloud auth login

And enable the Cloud Locations API:

gcloud services enable cloudlocationfinder.googleapis.com  --project PROJECT

Find all available cloud regions in a specific country

Let’s say you need to find which cloud providers have a region in, say, the Netherlands. You will query by territory_code and the country’s two-letter ISO 3166–1 alpha-2 code: territory_code = \"NL\" :

➜ gcloud cloudlocationfinder cloud-locations search \
--source-cloud-location aws-eu-west-1 \
--query="territory_code = \"NL\" AND \
cloud_location_type = CLOUD_LOCATION_TYPE_REGION"
---
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_OCI
displayName: eu-amsterdam-1
name: projects/ngodec-sandbox/locations/global/cloudLocations/oci-eu-amsterdam-1
territoryCode: NL
---
carbonFreeEnergyPercentage: 83.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-west4
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-west4
territoryCode: NL
---
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_AZURE
displayName: westeurope
name: projects/ngodec-sandbox/locations/global/cloudLocations/azure-westeurope
territoryCode: NL

Notice the--source-cloud-location aws-eu-west-1 argument — it is a required argument to run the search command. It matters when you are evaluating latency, but for anything else — just put whatever region you know of, such as aws-eu-west-1 (Ireland) or gcp-us-east1 (South Carolina).

Find a region closest to your customers

Typically, we would use the GCP’s Network Intelligence Performance Dashboard to analyse latency to a specific region:

Press enter or click to view image in full size
Latency assessment visualization for lower carbon GCP regions to the Netherlands

You would need to have researched and pre-selected the regions you want to assess the latency for.

Now, if your customers are running on GCP or other cloud providers, and you need to find where to place your workloads most efficiently, you can do something like this with --query="latency<20" in Cloud Locations API:

➜ gcloud cloudlocationfinder cloud-locations search \
--source-cloud-location=azure-westeurope \
--query="latency < 20 AND \
cloud_location_type = CLOUD_LOCATION_TYPE_REGION"
---
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_OCI
displayName: eu-amsterdam-1
name: projects/ngodec-sandbox/locations/global/cloudLocations/oci-eu-amsterdam-1
territoryCode: NL
---
carbonFreeEnergyPercentage: 83.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-west4
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-west4
territoryCode: NL
---
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_AWS
displayName: eu-central-1
name: projects/ngodec-sandbox/locations/global/cloudLocations/aws-eu-central-1
territoryCode: DE
---
carbonFreeEnergyPercentage: 68.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-west3
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-west3
territoryCode: DE
---
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_OCI
displayName: uk-london-1
name: projects/ngodec-sandbox/locations/global/cloudLocations/oci-uk-london-1
territoryCode: GB
---

These results tell us that within 20ms latency of the Azure westeurope region — continuing the search around the Netherlands — you have GCP, AWS and Oracle regions in the Netherlands, Germany, and the UK.

To my surprise, GCP’s europe-west1 (Belgium) doesn’t appear in this list. Tweaking the query a little bit shows that there is actually 21ms latency:

➜ gcloud cloudlocationfinder cloud-locations search \
--source-cloud-location=azure-westeurope \
# Increment on latency
--query="latency < 21 AND \
cloud_location_type = CLOUD_LOCATION_TYPE_REGION AND \
# Explicitly look for Belgium
territory_code = \"BE\""
---
carbonFreeEnergyPercentage: 84.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-west1
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-west1
territoryCode: BE

Find a greener region

With the goal of operating on carbon-free energy (CFE) 24/7 in all regions by 2030, Google Cloud has been doing a lot of work to measure, report on, and reduce the cloud’s carbon footprint — along with helping you do the same for your workloads running on Google Cloud. You’ll be shown an overall rating of each region when selecting it in the console, you can see in detail which energy is consumed in which regions of Google Cloud, and even measure your own workloads with Carbon Footprint.

Press enter or click to view image in full size
Top 3 GCP regions based on sustainability, cost and proximity to the Netherlands, on Region Picker

Naturally, the carbon-free energy percentage is available in the Cloud Locations API too — but only for Google Cloud regions.

Let’s find all regions running on over 95% carbon-free electricity:

➜ gcloud cloudlocationfinder cloud-locations search \
--source-cloud-location aws-eu-west-1 \
--query="carbon_free_energy_percentage > 95 \
AND cloud_location_type = CLOUD_LOCATION_TYPE_REGION"
---
carbonFreeEnergyPercentage: 96.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-west9
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-west9
territoryCode: FR
---
carbonFreeEnergyPercentage: 98.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-west6
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-west6
territoryCode: CH
---
carbonFreeEnergyPercentage: 100.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-north2
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-north2
territoryCode: SE
---
carbonFreeEnergyPercentage: 98.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: europe-north1
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-europe-north1
territoryCode: FI
---
carbonFreeEnergyPercentage: 99.0
cloudLocationType: CLOUD_LOCATION_TYPE_REGION
cloudProvider: CLOUD_PROVIDER_GCP
displayName: northamerica-northeast1
name: projects/ngodec-sandbox/locations/global/cloudLocations/gcp-northamerica-northeast1
territoryCode: CA

Canada and Northern Europe are the greenest — and their grids are, too, meaning that GCP is not just offsetting their own energy consumption, but the whole country’s electric grid is greener.

Conclusion

Comparing cloud regions — and providers — has just become easier, with GCP’s Cloud Locations API. In this blog, we’ve explored the CLI — but, of course, you can use the API itself in your programmatic workloads.

An interesting use case for AI and ML workloads would be to combine data residency or carbon footprint requirements with hardware availability. For example, not all GPUs and TPUs are available in the Zurich or Finland regions of GCP — so you could run most of your applications and databases in a green region, and then offload the workloads with a special GPU requirement to the nearest region where that hardware is available.

One feature that I found sorely missing from the CLI is the --sort-by argument, especially for the carbon-free energy percentage. Perhaps in the future!

--

--

Zencore Engineering
Zencore Engineering

Published in Zencore Engineering

Zencore was started in 2021 by former senior Google Cloud engineers, solution architects & developers. We are focused on solving business challenges with Google Cloud technologies and tools, and foster a culture of engineering & delivery excellence.

Natalie Godec
Natalie Godec

Written by Natalie Godec

That girl from Cloud with purple hair | Senior Cloud Architect at Zencore | GDE in Cloud | Here I talk about clouds, infrastructure and platform engineering

No responses yet