The first thing AWS asks you, even if it does not look like it, is where: at the top right of the console there is a region selector, and everything you create goes into whichever one is selected. Many people leave the default (often Virginia, in the United States) and discover months later that their website takes longer than it should, that they are paying in US dollars for resources that could be next door, or that their data is outside Europe. This guide gives you four criteria for choosing well from the start and explains what to do if it is already wrong.
Before you start: what each thing means
- Region
- A set of Amazon data centres in a geographic area, with a city or country name (Europe - Paris) and a code (eu-west-3).
- Availability Zone
- Each of the separate groups of buildings within a region. They exist so that a failure in one does not affect the others.
- Latency
- The time it takes for data to travel between the user and the server and back. The further away the region, the higher it is.
- Regional and global services
- Most services (machines, databases, buckets) live in a region. A few (IAM, Route 53, CloudFront, billing) are global and do not depend on it.
- Data residency
- Where the data physically is. It matters for data protection and for some contracts.
- Spain region
- AWS has had a region in Aragon (Europe - Spain, eu-south-2) since 2022.
Criterion 1: close to your users
If your customers are in Spain, a nearby European region makes the website respond faster. The difference between Spain, Paris, Ireland or Frankfurt is a matter of milliseconds, barely noticeable; the difference with Virginia or Oregon is felt on every click. If your users are spread around the world, choose the region where most of them are and put a content delivery network (CloudFront) in front for the rest.
Criterion 2: it must have the services you need
Not every AWS service is in every region, and new ones arrive first in the big regions. Ireland and Frankfurt usually have everything; Paris almost everything; the Spain region, being newer, has the main things (machines, databases, storage, Lambda...) but some services arrive later or are not there yet. Before deciding, make a list of what you are going to use (Lightsail? SES? a certain machine type?) and check it against the AWS table of services by region. If something you need is missing, choose another region from the start: moving later is costly.
Criterion 3: the price
The same resource costs differently depending on the region, sometimes 10 or 20 percent. The big regions (Ireland, Virginia) are usually the cheapest; the newer or smaller ones, somewhat more expensive. For a small project the difference is small; for one with many machines, it is worth comparing in the AWS pricing calculator before choosing. And remember that the bill is in dollars either way.
Criterion 4: where your data lives
If you process personal data of European customers, keeping it in a European Union region simplifies compliance and is what your customers and, sometimes, your contracts expect. Any European region (Spain, Paris, Ireland, Frankfurt, Stockholm, Milan; Zurich is outside the EU) will do for that; the Spain region also has the argument of physical proximity if anyone asks you. Note the chosen region in your data protection documentation.
Our practical recommendation
For most businesses in Spain: Paris or Ireland if you want everything available and the tightest prices; Spain if proximity or data residency "in Spain" is a selling point for you and you have already checked that the services you use are there. And a single region for everything that belongs together (the website, its database, its bucket): traffic between regions is charged and adds latency. Backups, on the other hand, are better in a second region, just in case (guide in this section).
If you already chose wrong
There is no "move to another region" button, but almost everything can be copied: machines with an image or snapshot copied to the new region; databases with a snapshot copied and restored there; buckets with replication or an aws s3 sync between buckets; the DNS does not need to move (Route 53 is global). Do it calmly, service by service, change the DNS at the end and delete the old resources once everything works. And set the new region as the default in the console so you never create anything in the old one again.
What can go wrong
I cannot see my machines in the console
You are in another region. Look at the selector at the top right. It is the number one cause of "my server has been deleted!".
I have created things in several regions without realising
Cost Explorer grouped by region tells you which ones have spend. Decide on a main one and consolidate gradually. In the meantime, keep an eye on all of them in the bill.
A service does not appear in the menu
It is not available in the selected region. Switch region to use it (some services, such as SES, can be in a different region from your machines without any problem) or choose a region that has it.
In Simplio
In Simplio there is no region selector: you see all the machines, databases and buckets of all your accounts and regions in the same list, with each one's region in plain view, and when you create something new Simplio suggests the region where you already have the rest and warns you if you choose another. Backups to a second region are a tick box in the schedule. Spend is shown per account, without having to go region by region.
The same task, in AWS and in Simplio
| In the AWS console | In Simplio | |
|---|---|---|
| Seeing what you have in each region | Change the region selector and go through service by service | All regions of all your accounts in one list, with each object's region in plain view |
| Creating something in the wrong region | Happens all the time: the selector stays where it was | When creating, Simplio suggests the region where your things already are and warns if you choose another |
| Backups in another region | Copy by hand every time | A tick box in the backup schedule |