Ping vs HTTPS Latency: Why ICMP and Web Numbers Differ
ICMP ping times a tiny echo packet at the network layer, while HTTPS latency times a real web request that includes DNS, TCP, TLS and the server's response. HTTPS timings are therefore higher than ICMP for the same server, but they are closer to what applications and users actually experience. GlobeLatency measures HTTPS, not ICMP.
On this page
- What does ICMP ping measure?
- What does HTTPS latency measure?
- Why do ping and HTTPS numbers differ?
- Why ICMP can mislead: deprioritisation, rate limiting and blocking
- What do traceroute and mtr show?
- Why does browser-measured HTTPS latency reflect real user experience?
- What is the relation between ping and TTFB?
- What does GlobeLatency measure, and why is it higher than ICMP?
- Worked examples
- Common mistakes and myths
- What to do next
Quick answer: ping sends an ICMP echo request and times the echo reply: a bare network-layer round trip of a tiny packet. HTTPS latency times a real web request, which includes name lookup, opening a TCP connection, a TLS handshake and the server's response. The HTTPS number is nearly always larger than the ICMP number for the same server, and it is closer to what a browser, app or user experiences. Neither is "wrong": they measure different layers, so compare like with like.
What does ICMP ping measure?
ICMP (Internet Control Message Protocol) is a protocol that devices use to report errors and answer diagnostic queries. The ping tool sends an Echo Request (ICMP type 8 for IPv4) and waits for an Echo Reply (type 0). It reports the time between sending and receiving. The packet is small, typically 64 bytes of data in total on many systems, and involves no connection, no encryption and no application code.
What a ping measures well:
- the round-trip propagation and queuing delay between two IP addresses,
- whether packets get lost along the way (loss percentage),
- how much the delay varies from one packet to the next.
What it does not measure: any delay that arises above the network layer, such as DNS, handshakes, server software or content download.
What does HTTPS latency measure?
HTTPS is HTTP over TLS over TCP (or over QUIC for HTTP/3). To time an HTTPS request, the client starts a clock, sends a request, and stops when the first part of the response arrives. Depending on whether a connection already exists, the measured time covers some or all of:
| Step | Round trips (typical) | Included in ICMP ping? |
|---|---|---|
| DNS lookup (if not cached) | 0 to several, to resolver | No (ping resolves name before timing) |
| TCP three-way handshake | 1 | No |
| TLS handshake | 1 (TLS 1.3) or 2 (TLS 1.2) | No |
| HTTP request to first response byte | 1 plus server time | Only the one network round trip |
| Browser and OS overhead | Small, a few ms | No |
For deeper background see TCP and UDP explained, the TLS and HTTPS handshake and DNS explained.
Why do ping and HTTPS numbers differ?
1. Extra round trips
A fresh HTTPS request to a server with a 40 ms RTT needs roughly 40 ms for TCP, 40 ms for TLS 1.3 and 40 ms for the request itself, so about 120 ms, even with a perfect server. ICMP shows 40 ms.
2. Server processing time
A ping reply is generated by the operating system's network stack within microseconds. An HTTPS response needs a web server to accept the connection, perhaps read a file or run code, and write headers. Static files on a good CDN take a millisecond or two; dynamic pages can take hundreds.
3. Different handling in the network
Routers and firewalls may treat ICMP differently from TCP. Some give it lower priority under load, some rate-limit it, and a few load balancers answer ping from a different place than the servers that handle web traffic.
4. Anycast and CDNs
If a hostname is served by a content delivery network, the ICMP reply may come from the edge machine while the HTTPS request may be forwarded further. See CDN and anycast.
5. Measurement overhead
Browsers run in a sandbox, schedule timers in a single thread, and may throttle background tabs. These add a few milliseconds of noise compared with the operating system's own ping.
Why ICMP can mislead: deprioritisation, rate limiting and blocking
- Blocking. Many firewalls and cloud security groups drop ICMP echo by default. A ping timeout then says nothing about whether the service works.
- Rate limiting. Servers and routers often cap the number of ICMP replies per second. Fast or repeated pings can show artificial loss.
- Deprioritisation. Routers forward user traffic in fast hardware paths, but answering ICMP directed at the router itself is a slower "control plane" task. A router can look slow or lossy when it is addressed directly, yet forward traffic at full speed.
- Different paths. Load balancers on the internet often spread TCP flows, but ICMP packets can take a different path from your actual traffic.
- Different priority in some networks. A few networks treat ICMP as best-effort and web traffic as higher priority, or the reverse.
The practical lesson: a ping result is a good hint, but an application-level test using the same protocol your application uses is more representative.
What do traceroute and mtr show?
Traceroute discovers the path by sending packets with a time-to-live (TTL) of 1, 2, 3 and so on. Each router decrements TTL; when it reaches zero the router drops the packet and sends back an ICMP "time exceeded" message that reveals its address. Delay to each hop is the time until that message returns. mtr repeats this continuously and reports loss and latency statistics per hop.
How to read the output:
- A hop that shows high latency or loss but whose later hops are fine is almost always just ICMP rate-limiting by that router. Only loss or delay that persists into the following hops and to the destination is real.
- Rows of
* * *mean the router does not answer probes, which is common and not necessarily a problem. - Latency generally rises along the path. A large jump between two hops often marks a long link, such as an undersea cable. A jump of 70 ms between a hop in New York and one in London is expected.
- The forward and return paths can differ, so hop-by-hop RTTs mix both directions.
- Geographical hints in router names (for example airport codes) can help interpret where the path goes.
When talking to an ISP, a traceroute or mtr output with clear evidence at the last hops is useful; see talking to your ISP and routing, BGP and peering.
Why does browser-measured HTTPS latency reflect real user experience?
Most of what people do on the internet runs over HTTPS: web pages, APIs, streaming manifests, app back ends. A measurement that goes through the same stack (browser, operating system, local network, ISP, route, TLS, server) captures all of the places where delay arises for that traffic, including those that ICMP skips. Specifically:
- It travels as ordinary TCP traffic on port 443, with the same priority and routing as your real traffic.
- It includes name lookup and connection setup, the parts users wait for on first visit.
- It is not blocked by the networks that block ICMP, so more destinations can be measured.
- It works with no install, because every browser can make HTTPS requests.
The trade-off is more noise and a higher baseline, and the browser limits what it reveals. A browser cannot read the status code of a no-cors request or separate the stages from each other in such a test.
What is the relation between ping and TTFB?
Time to first byte (TTFB) for a new HTTPS connection is approximately:
TTFB ≈ DNS + TCP (1 RTT) + TLS (1 RTT for TLS 1.3, 2 for TLS 1.2) + request (1 RTT) + server time
| RTT (ping) | Reused connection TTFB (1 RTT + 30 ms server) | New HTTPS connection TTFB (3 RTT + 30 ms server, DNS cached) |
|---|---|---|
| 10 ms | 40 ms | 60 ms |
| 50 ms | 80 ms | 180 ms |
| 150 ms | 180 ms | 480 ms |
This shows why a ping of 50 ms is consistent with an observed time to first byte of 180 ms. See TTFB and web performance.
What does GlobeLatency measure, and why is it higher than ICMP?
GlobeLatency runs in your browser and times real HTTPS requests to public servers around the world. Each request uses a cache-busting query string and no-store caching so that it reaches the server, and the timer runs from the start of the request until the response headers arrive. The requests are to small files, often a favicon or other tiny asset, which keeps server time and transfer time small. It is not ICMP ping.
Because a new connection includes DNS, TCP and TLS setup, the first pass to a host costs several round trips. Later passes may reuse the connection (cache-busting prevents HTTP caching, but not connection reuse), so they can be shorter. The reported figure is the average of successful passes, along with best and worst pass. Overall, the numbers are a bit higher than raw ICMP, and they are comparable to each other and to the world average of the same destination. More detail is in how GlobeLatency measures and accuracy and limitations.
Worked examples
Example 1: Same server, three numbers
You measure a server in another country: ICMP ping shows 32 ms, a TCP connect to port 443 takes 33 ms, and an HTTPS request on a fresh connection shows 125 ms until headers arrive. This is consistent: 32 ms TCP + 32 ms TLS 1.3 + 32 ms request + about 30 ms server time = about 126 ms. Nothing is wrong.
Example 2: Ping blocked
A cloud server returns "Request timed out" for ping but its website loads quickly. The security group blocks ICMP. An HTTPS test returns 45 ms. Conclusion: reachable and healthy; ICMP is simply disabled.
Example 3: Misleading traceroute
Hop 6 of an mtr shows 60 percent loss, but hops 7 to 12 and the destination show 0 percent loss and normal RTT. The router at hop 6 is rate-limiting its own ICMP replies. There is no actual packet loss on the path.
Common mistakes and myths
- "Ping is the true latency." It is the true ICMP latency; application latency is higher.
- "No ping reply means the site is down." Often ICMP is blocked.
- Panicking about a bad middle hop in traceroute. Look at the final hops.
- Comparing numbers across tools directly. Compare ICMP with ICMP and HTTPS with HTTPS.
- Using a full page as a latency probe without noticing. A heavy dynamic page includes server time; use a small static file for network latency.
What to do next
Try a free HTTPS latency test and compare it to ping from a terminal to see the gap for yourself. Then read TTFB and web performance for site owners, how GlobeLatency measures, and troubleshoot high latency if your numbers look off.
Frequently asked questions
Why is my ping lower than my website load time?
Ping measures only the network round trip of a tiny packet. Loading a website also needs DNS, a TCP handshake, a TLS handshake, the server generating a response and then the transfer of content, each adding time. A site with a 30 ms ping can easily have a 150 ms time to first byte and several seconds to fully load.
Why does ping show "request timed out" when the website works?
Many servers, firewalls and networks drop or ignore ICMP echo requests as a security or load-control measure. A site can be completely reachable over HTTPS while ICMP is blocked, so a ping timeout does not prove the server is down. Test with an HTTPS-based method or a TCP connection to port 443 instead.
Is ICMP ping accurate?
It accurately measures what it measures: the round trip of an ICMP echo between two hosts. But routers may treat ICMP with lower priority, rate-limit it, or answer from a different part of the system than the one that forwards your traffic, so it can be higher, lower or noisier than the delay your real traffic sees.
What does traceroute actually show?
Traceroute lists the routers between you and a destination by sending packets with increasing time-to-live values and recording who reports "time exceeded". It shows the path and the round-trip time to each hop. A high number at one hop is not necessarily a problem, because routers often deprioritise replying to traceroute probes.
Why are GlobeLatency numbers higher than ping?
GlobeLatency times real HTTPS requests from the browser until response headers arrive. That includes DNS, TCP and TLS setup when a new connection is needed, plus the server's response time and browser overhead. Raw ICMP includes none of that, so HTTPS-level numbers are a bit higher but reflect application-level round trips.
What is TTFB and how does it relate to ping?
Time to first byte (TTFB) is the time from sending a request to receiving the first byte of the response. It equals roughly the network round trips for connection setup plus one request round trip plus the server's processing time. Ping gives you the building block (one RTT), and TTFB is built from several of them.