Skip to content
Cloudj

VPS how-to

VPS latency by location: a practical way to choose a region

Understand VPS latency by location, from the physics of distance to measuring from real users, and pick a server region with a repeatable method.

Updated · 7 min read

VPS latency by location is mostly a question of distance, and distance is the one thing you cannot tune away after you deploy. More CPU or RAM will not shorten the path a packet travels. That makes the location choice the most important performance decision you make on day one. This article gives you a practical method: understand the physics, find out where your users actually are, measure before you commit, and decide which parts of your traffic even need a nearby server.

If you want a tour of every region first, the VPS locations guide covers all 14 countries Cloudj offers. Here we focus on how to choose.

Why distance sets a floor on VPS latency by location

Light in optical fiber travels at roughly two thirds of its speed in a vacuum, about 200,000 km per second. That works out to around 5 microseconds per kilometre one way, or about 1 millisecond of round-trip time for every 100 km of fiber. A request that crosses 10,000 km of cable and comes back has at least 100 ms of round-trip time before any router, queue or server does any work.

Real paths are longer than the straight line on a map. Cables follow coastlines, land at specific stations and pass through exchange points that may sit in another country. Routing follows business agreements as much as geography. The result is that two locations at a similar distance can perform differently for the same user.

For users in Vietnam there is one more factor: Vietnamese ISPs reach the rest of the world over a limited set of submarine cables, and cable faults have slowed international access several times. Cloudj has no servers in Vietnam, so traffic from Vietnamese users to any Cloudj server crosses those international links. Measure at different times of day and keep a second nearby location in mind.

Two practical conclusions follow:

  • You can estimate a lower bound from distance, but only measurement tells you the real number.
  • Moving a server closer to users usually helps more than any software tuning, because it removes milliseconds on every single round trip.

Not every workload cares equally

Before you chase the lowest number, decide how sensitive your workload really is. Round-trip time multiplies: a page that needs a DNS lookup, a TCP handshake, a TLS handshake and several sequential API calls pays the round-trip cost many times.

WorkloadLatency sensitivityWhat matters most
Game servers, voice, real-time chatVery highLow and stable round-trip time, little jitter
Trading bots and order executionVery highDistance to the exchange or broker, not to you
Interactive web apps and APIsHighDistance to the majority of users
Content sites and blogsMediumTime to first byte; static files can go through a CDN
Backups, batch jobs, scraping, CI runnersLowPrice, traffic allowance and CPU

Notice the trading row. For a bot, the "user" is the exchange's matching engine, so the right region is the one closest to the exchange, even if you live on another continent. Articles such as the forex VPS in London guide go deeper on that case.

Step 1: find out where your users are

Guessing is the most common mistake. Look at real data:

  • Web analytics or server logs grouped by country and city.
  • Payment or sign-up addresses for a SaaS product.
  • For a game or community server, ask players where they connect from.
  • For an internal tool, list the offices and the VPN exit points your team uses.

Write down the share of traffic per region. If 80% of users are in Vietnam and 20% are spread across Asia, the decision is very different from a product with equal traffic in Europe and North America.

Step 2: shortlist two or three locations

Map your user regions to nearby Cloudj locations. Cloudj runs cloud servers in 14 countries, listed on the cloud servers page.

Main user baseLocations worth testing
Vietnam (no Cloudj servers in the country)Singapore, Hong Kong, Tokyo
Southeast Asia overallSingapore, Hong Kong
Japan and KoreaTokyo, Hong Kong
Australia and New ZealandSydney
Western EuropeFrankfurt, Amsterdam, London
Southern and Eastern EuropeMadrid, Milan, Bucharest
North AmericaUnited States (eight cities), Toronto
Middle EastIsrael (Tel Aviv, Jerusalem, Petah Tikva, Rosh Haayin, Haifa), Frankfurt

In the United States the city matters too. New York and Atlanta suit East Coast users, while Los Angeles, Santa Clara and Seattle suit the West Coast; Chicago and Dallas sit in between.

Also check the non-latency differences between candidates. Monthly plans in Asian locations such as Singapore, Tokyo, Hong Kong and Sydney include 1 TB of traffic, and the European, North American and Israeli locations include 5 TB. If your app serves a lot of data, that can tip a close decision.

Step 3: measure from where users are

Distance gives you a hypothesis; measurement gives you the answer. Because Cloudj servers can be billed by the hour, you can deploy a small test server in each shortlisted location, measure for a day, and delete the ones you do not keep. Remember that an hourly server is charged as long as it exists, even when stopped, so delete it when the test ends.

Run tests from the places your users are, not only from your own desk:

  • From your laptop and office network.
  • From a phone on mobile data, since many users are not on fixed broadband.
  • From friends, colleagues or an existing server in the user regions.
  • At different times of day, including the evening peak.

The full set of commands, including ping, mtr and curl timing, is in our guide on how to test VPS latency with ping, mtr and curl. Look at the median round-trip time, the variation between samples and packet loss at the final hop, not a single best result.

Step 4: take static content out of the equation

For websites, much of what users download is static: images, CSS, JavaScript, fonts and video. A content delivery network caches those files close to users worldwide, so the origin server's location matters only for dynamic requests such as logins, carts, searches and API calls.

This changes the decision for many sites. A shop with customers across Asia can run one origin in Singapore and let a CDN serve static assets everywhere. A CDN does not help much for game traffic, SSH sessions, database queries or real-time WebSockets, so those workloads still need the server itself to be close.

Step 5: decide, and plan for more than one region

Use a simple rule. Pick the location with the best median result for the region that carries most of your important traffic, as long as the second region is still acceptable. If no single location serves two large user bases well, consider running two servers: one per region, with DNS-based routing or separate endpoints. For many small projects, one well-placed server plus a CDN is enough.

Keep the decision reversible. Script or document your server setup, keep data in places that are easy to copy, and moving to another location later becomes a routine job rather than a project. Cloudj also lets you save custom images of a configured server, which can shorten a rebuild.

Once the location is settled, the next jobs are to set up SSH keys and work through the first-hour security checklist before you put real traffic on the server.

FAQ

Does a closer server always mean lower latency?

Usually, but not always. Routing between networks can send traffic on a detour, so a slightly more distant location can measure better for some ISPs. That is why you should test before committing.

How much does latency matter for a normal website?

It matters most for dynamic requests and the first connection. With a CDN for static files and sensible caching, a website can feel fast even when the origin is a few countries away from some users.

Should I put my server where I live or where my users are?

Where your users are. Your own SSH session tolerates extra latency far better than your customers' page loads or players' game sessions.

Can I move my VPS to another location later?

Yes, by deploying a new server in the new location and migrating your data and configuration to it. A scripted setup makes that much faster.

Pick a location and test it

Shortlist two or three locations near your users, deploy small hourly servers in the Cloudj console, measure for a day, and keep the winner. You can see live prices for every location on the pricing page before you deploy.

Deploy a server or order proxies

Pick a location in the console, see the live price, and pay from your balance.