Latency
The number you need is not a number we can print
Your packets take two legs — your machine to our edge, then our edge to whatever you are calling. What you pay against calling the partner directly is those two legs minus the direct path you no longer take:
added round trip
added = RTT(your machine → our edge)
+ RTT(our edge → the partner)
− RTT(your machine → the partner)The table below is the middle term, and it is also the first term whenever your machine sits in one of these regions — the leg is the same path in both directions. So for most readers this one table answers both, and the only number left to find is the direct one you have today.
Round trips from our edge
| Region | code | Round trip |
|---|---|---|
| Frankfurt | eu-central-1 | 78 ms |
| London | eu-west-2 | 87 ms |
| Dublin | eu-west-1 | 95 ms |
| N. Virginia | us-east-1 | 161 ms |
| Mumbai | ap-south-1 | 190 ms |
| Oregon | us-west-2 | 216 ms |
| Singapore | ap-southeast-1 | 230–325 ms * |
| São Paulo | sa-east-1 | 273 ms |
| Tokyo | ap-northeast-1 | 309 ms |
| Sydney | ap-southeast-2 | 334 ms |
* Singapore is the one route that does not hold still. Twenty consecutive handshakes to the same address came back anywhere between 231 and 324 ms, so both ends of that are printed instead of a median that describes neither. Plan against the top of the range.
ec2.<region>.amazonaws.com), measured from the edge that carries customer traffic — 17 samples per region across two runs on 1 August 2026, median reported. One handshake is one round trip, which is the unit your requests pay in. We use TCP rather than ping because ICMP is deprioritised or dropped by half the networks in between, and because TCP is what you are actually going to send.Three worked examples
Frankfurt → Frankfurt
your machine, then the partner
- Through us
- 78 + 78 = 156 ms
- Direct, typically
- 1–2 ms
- You pay
- ~155 ms
Frankfurt → N. Virginia
your machine, then the partner
- Through us
- 78 + 161 = 239 ms
- Direct, typically
- ~90 ms
- You pay
- ~150 ms
Oregon → N. Virginia
your machine, then the partner
- Through us
- 216 + 161 = 377 ms
- Direct, typically
- ~65 ms
- You pay
- ~310 ms
The first case is the floor: even with your machine and your partner in the same city as each other, the detour is real and it is about 155 ms. The last is the case where you should not buy this — both ends in the United States, routed through Central Asia, for an address. The middle one is the ordinary one, and it shows why the distance between you and your partner matters less here than people expect: once something is crossing an ocean anyway, what we add is roughly constant.
“Direct” is not our measurement and is marked typical. Measure your own, today, from the machine that will hold the tunnel — it is the only version of that number worth trusting.
What that costs a request
One HTTP call on a connection that is already open pays the added round trip once. That is the case the product is built for: a webhook, an API call to a partner who allowlisted you, a nightly job.
Opening a new connection costs two round trips before the first byte of your request moves — one for TCP, one for the TLS 1.3 handshake — so a client that reconnects per call pays roughly twice the figure above. Keep connections alive and this mostly disappears.
A protocol that talks in sequence pays per exchange, and this is where the detour stops being invisible. An ORM issuing thirty queries one after another across the Frankfurt example spends about 4.6 seconds waiting rather than 60 ms. Nothing about the tunnel is slow here — the round trips are simply being made one at a time. Batch them, or keep the database on the same side as the machine and route only the partner call through us.
Bulk transfer over a single connection is also hurt by distance independently of bandwidth, because one stream can only have so much data in flight before it has to wait for an acknowledgement. Parallel streams recover most of it; one long sequential download does not.
Only the traffic that needs the identity pays this
The default configuration routes just your leased address through us. Everything else the machine does — package installs, your own database, SSH you are connected over — takes the path it always took and pays nothing. That is the whole reason the Linux setup uses source routing rather than a default route.
A full tunnel, where everything egresses as your address, is the right choice on a disposable CI runner and the wrong one on a machine that also serves your users. Both are documented; the split is deliberate.
Measure it yourself
The leg you cannot look up is your own machine to us. You can have it in ten seconds, without an account, because our API host sits in the same rack as the edge:
your machine → our datacenter
for i in $(seq 5); do
curl -sS -o /dev/null \
-w '%{time_connect} %{time_namelookup}\n' \
https://api.anchoredip.com/api/plans/
doneSubtract the second number from the first — that difference is one round trip in seconds, so 0.081 is 81 ms. It is the same subtraction we made for the table, and it is there because the name lookup is not part of the distance. Add your partner’s region from the table above and you have what a request through us would take, before you have paid anybody anything.
To reproduce our table instead, run the same command against https://ec2.<region>.amazonaws.com/ from a machine holding one of our tunnels. Numbers that cannot be checked are marketing.
When this is the wrong product
Interactive traffic between two continents, chatty database protocols, real-time voice or video, and anything where a partner measures your response time rather than your address. In those cases the detour is not a detail you tune around, it is the thing you would be buying.
It is the right product when something on the far side identifies you by address and a few hundred milliseconds is not what it is measuring — which is nearly every case this exists for. If the trade you are weighing is against a proxy service closer to you, the rest of it is on compared with QuotaGuard: they are nearer, and the address is shared with everyone else on the plan.
We route from one location today and additional ones follow demand, so if the table above is what stops you, say so by email rather than leaving quietly. A region nobody asks for is a region we cannot justify, and the asking is the only signal we have.