Independent marketplace for cloud provider accounts across 22 providers

Cloud Fundamentals

Cloud Regions and Availability Zones: How to Pick a Location

Regions, availability zones and edge locations are three different things, and mixing them up leads to fragile deployments. This guide defines each one, translates the vocabulary across six providers, and turns the choice into four practical questions.

Diagram showing cloud regions, the availability zones inside them and separate edge cache locations

A dropdown you only get to pick once

Almost every cloud signup ends with a dropdown list of city names. It looks like a formality. It is not. The location you pick decides how fast your application feels, which laws apply to the bytes you store, which services you can even switch on, and how much a future move will hurt.

Region choice is also sticky in a way that instance size is not. Resizing a server takes a reboot. Relocating a database, its snapshots, its object storage bucket and its DNS records to another continent is a project. Spending ten minutes on the decision before you click Create is a good trade.

This guide separates three ideas that people routinely blur together: the region, the availability zone and the edge location. Then it turns them into a short set of questions you can answer for a real project.

What a region really is

A region is a geographic area containing one or more provider data centers that share a local network, a local API endpoint and, usually, a local price. It is the unit most services are scoped to. An Amazon S3 bucket, an Azure storage account or a Google Cloud persistent disk exists in a region and does not silently travel outside it.

Regions carry names that leak their history. AWS uses codes such as us-east-1 and eu-west-2, Google Cloud uses europe-west4, Azure uses friendly names like West Europe, and Oracle Cloud uses airport-style identifiers. Developer clouds tend to expose a location slug instead: DigitalOcean has fra1 and nyc3, while Hetzner Cloud lists Falkenstein, Nuremberg, Helsinki, Ashburn, Hillsboro and Singapore.

Two practical points follow. First, service catalogs differ by region, so a newer managed service may simply not appear in the list when you switch locations. Second, quotas are usually counted per region, so capacity you were granted in one place does not follow you to another. The companion piece on vCPU limits and service quotas explains how those ceilings are tracked.

Availability zones: isolating the failure

Inside a region, the larger providers subdivide capacity into availability zones. A zone is an independent failure domain: its own power feed, its own cooling, its own building or group of buildings, connected to sibling zones by fast private links short enough for synchronous replication to remain practical.

The design goal is blunt. A generator failure, a flooded riser or a switch fabric problem should take down one zone rather than the whole region. Your side of the bargain is to place resources in more than one of them. A single virtual machine in a single zone inherits that zone's fate no matter how many nines the provider advertises.

The vocabulary shifts by vendor. AWS calls them Availability Zones and maps them per account, so the us-east-1a you see is not necessarily the us-east-1a your colleague sees. Azure uses availability zones and adds region pairs for cross-region replication. Google Cloud calls them zones and appends a letter to the region name. Oracle Cloud uses availability domains, with fault domains nested inside them.

Most developer clouds do not expose zones at all. On DigitalOcean, Hetzner or Vultr you choose a location and the provider handles internal redundancy without giving you a placement control. That is a genuine architectural difference rather than an oversight, and it shapes how you build for uptime on those platforms.

Edge locations are a different animal

Marketing maps often show hundreds of dots and a phrase like global network. Those dots are usually edge locations, not regions. An edge site caches content and terminates connections close to users, but it does not run your virtual machines or hold your primary database.

Amazon CloudFront points of presence, Azure Front Door edge sites and Google Cloud CDN caches all fall into this category. They make static assets and cacheable API responses feel local while your compute stays wherever you put it. The article on CDN basics for cloud-hosted sites covers how to use that layer properly.

There is a middle tier as well. AWS Local Zones and Wavelength Zones place a subset of services in metro areas attached to a parent region. They help latency-sensitive workloads without being full regions, and the service list is deliberately narrow.

Four questions that settle the decision

Where are the users, and where is the data they touch?

Round-trip latency is dominated by distance and by the number of network hops. Put compute near the users who wait on it, and put the database in the same region as the application servers that query it. A chatty application split across an ocean will feel slow no matter how fast the instances are.

Which rules follow the data?

Contracts, sector regulation and privacy law often constrain where records may rest. If a customer requires storage inside a particular jurisdiction, that requirement outranks latency. Our guide to data residency and sovereignty works through how to document and enforce it.

Does the region carry the services you need?

Newer managed services, specialist instance families and GPU capacity roll out unevenly. Check the provider's region table for the exact services in your design before committing, especially for accelerators and managed AI endpoints.

What will the traffic cost to leave?

Rates vary by region, and so do the rules for traffic between zones and between regions. Cross-zone and cross-region transfer is often billed even when it stays inside one provider. The piece on egress costs shows where that lands on an invoice.

The same map, six different legends

Use this table to translate between platforms when you are reading documentation from more than one of them.

ProviderTop-level locationFailure domain inside itTypical identifier
AWSRegionAvailability Zone, with subnets pinned to one zoneeu-central-1
Microsoft AzureRegion, plus paired regionAvailability zone, fault and update domainsNorth Europe
Google CloudRegion, plus multi-region for storageZoneasia-southeast1-b
Oracle CloudRegionAvailability domain, then fault domainuk-london-1
DigitalOceanDatacenter regionNot exposed to customerslon1
Hetzner CloudLocation, grouped into network zonesNot exposed to customershel1

Notice the last two rows. When a provider hides the failure domain, redundancy becomes a matter of running in two separate locations rather than two zones, and the network between those locations is no longer a short private hop.

What spreading out actually costs

Multi-zone is the cheap form of resilience. You keep one region, one set of endpoints and one low-latency network, and you pay mostly in duplicated instances and some inter-zone traffic. For the majority of production workloads this is the right first step.

Multi-region is a different commitment. You now maintain two deployments, two data stores and a story for how they stay consistent. Replication traffic crosses a metered link, failover needs DNS or anycast in front of it, and split-brain becomes a real design problem rather than a theoretical one.

Be honest about which failure you are buying insurance against. If the answer is a single machine dying, zones solve it. If the answer is a regulator requiring an in-country copy, that is a residency problem. If the answer is a whole-region outage, then accept the operational weight that comes with a genuine second region.

For a single-region deployment on a developer cloud, the pragmatic pattern is a primary location plus off-site backups somewhere else, which is the approach outlined in cloud backup strategies.

Key takeaways

  • A region is a location plus a service catalog plus a quota scope. Treat those three as one package when you choose.
  • An availability zone is an isolated failure domain inside a region. Redundancy only counts when resources sit in more than one.
  • Edge locations accelerate delivery. They do not host your workload and they do not make a single-zone deployment resilient.
  • Developer clouds such as DigitalOcean and Hetzner expose locations without zones, so plan resilience across locations instead.
  • Latency, legal constraints, service availability and transfer charges are the four inputs. Rank them for the project in front of you rather than in the abstract.

AWS publishes the canonical description of this model in its regions and availability zones overview, and Microsoft documents the equivalent structure in its Azure availability zones guide. If you are weighing a hyperscaler footprint against a leaner European provider, the AWS and Hetzner comparison sets out the trade, and the AWS account listings describe what an account opens up across that footprint.

Questions about a cloud account?

Ask about products, variants, availability or purchasing on either channel.