Round-trip delay, server comparison and measurement methodology
RTD is the interval between sending an NTP request and receiving the response, measured at the client. NTP derives one-way latency as RTD/2 — a symmetric-path assumption that is approximately true over wired networks.
Why it matters for accuracy: the offset calculation trusts that one-way latency in both directions is equal. If the true latencies are L_out and L_in, the offset error from asymmetry is |L_out − L_in| / 2. The RTD bounds the worst-case asymmetry: at most RTD/2 of offset error.
| Source location relative to client | Expected RTD | Suitability |
|---|---|---|
| Same datacentre / same LAN | < 1 ms | Ideal for internal Stratum 2 |
| Same city / metro | 1–5 ms | Excellent |
| Same region (< 500 km) | 5–15 ms | Very good |
| Same country | 10–30 ms | Good |
| Same continent | 30–80 ms | Acceptable for general use |
| Intercontinental | 100–250 ms | Fallback only |
| Satellite / mobile | 200–800 ms | Last resort |
Three complementary techniques, from lightest to most rigorous:
One UDP roundtrip. Fast, but a single sample reflects instantaneous jitter and may mislead.
$ sntp time.rdem-systems.com
+0.000234 +/- 0.001450 ntp.rdem-systems.com 172.104.143.97 s1 no-leap
$ ntpdate -q ntp.rdem-systems.com
server 172.104.143.97, stratum 1, offset +0.000234, delay 0.01821
10–60 samples over a minute; report mean, median and standard deviation. More reliable.
# Using nping (nmap suite) as a generic NTP probe
$ nping --udp --dest-port 123 --count 30 --delay 1s ntp.rdem-systems.com
# Or the chrony dedicated helper
$ chronyd -Q 'server ntp.rdem-systems.com iburst minpoll 2 maxpoll 2'
Add the source to your chrony/ntp.conf and observe offset, jitter and RTD over hours. This is the only way to catch rush-hour degradation and weekly patterns.
$ chronyc sourcestats -v
Typical RTDs measured from Paris (April 2026, wired fibre, 1-minute window averaged). Your mileage will vary with your ISP and time of day.
| Source | Location | Typical RTD (Paris) | Notes |
|---|---|---|---|
ntp.rdem-systems.com | France (AS206014) | 1–3 ms | Stratum 1 GNSS + PPS, NTS-capable |
time.cloudflare.com | Anycast (nearest PoP) | 2–8 ms | NTS-capable; quality depends on nearest PoP |
ntp1.ptb.de | Braunschweig, DE | 10–20 ms | German national metrology institute |
nts.netnod.se | Stockholm, SE | 25–40 ms | Stratum 1, NTS reference implementation |
time.nist.gov | USA (anycast) | 80–150 ms | Authoritative US reference, not optimal EU-side |
pool.ntp.org | Variable (random) | 2–80 ms | Volunteer-based, unpredictable per query |
When choosing an NTP source, three properties compete:
These rarely align perfectly. A public Stratum 1 on another continent has excellent stratum but poor RTD. A regional Stratum 2 has better RTD but inherits the upstream's accuracy. The conventional wisdom:
The home-page tester reports the network RTD under "Latency" — the HTTPS round-trip to our Stratum 1 GNSS reference. While not as precise as native UDP NTP (HTTPS adds TLS handshake overhead), it gives a useful first-order estimate without installing anything.
Use it as a baseline: if the browser reports 200 ms to our Paris server from a Paris ISP, either your connection is bufferbloated or our server is receiving a transient spike of traffic. Re-test in 1 minute to confirm.
Beyond latency? Use the right tool: