Between March and August 2026 our system ran 1.92 million checks. Across the successful ones the median response time is 95 ms and the p95 is 966 ms — a tenfold spread.
Which is exactly why mean response time is a poor metric: on a distribution shaped like this it tells you less about a system than any percentile. Below: the full distribution, a breakdown by check type, and a simple technique for separating a network problem from an application one.
Free online tool — HTTP header checker: instant results, no signup.
Between 19 March and 27 August 2026 our system ran 1,919,194 checks, of which 1,395,771 succeeded with a measured response time. The distribution:
| Percentile | Response time |
|---|---|
| p50 (median) | 95 ms |
| p75 | 221 ms |
| p90 | 446 ms |
| p95 | 966 ms |
| p99 | 1,525 ms |
71.2% of checks come in under 200 ms; 0.2% take three seconds or longer.
What is useful here is the spread rather than any average: a median of 95 ms and a p95 of 966 ms differ tenfold. Watching mean response time on a distribution shaped like this is pointless — it will tell you less about your system than any single percentile.
Caveats: these are addresses our users chose to monitor, not a slice of the web. Checks run from one location, so the network path to it is baked into the numbers. Failed checks are excluded, or the distribution would mix response time with time-to-timeout.
| Type | Samples | Median | p95 |
|---|---|---|---|
| Ping | 53,804 | 16 ms | 24 ms |
| Port | 1,867 | 38 ms | 121 ms |
| DNS | 4,292 | 58 ms | 125 ms |
| SSL | 12,679 | 89 ms | 218 ms |
| HTTP | 1,238,809 | 96 ms | 980 ms |
| API | 84,273 | 153 ms | 1,097 ms |
The medians differ sixfold; the p95 values differ fortyfold. And that difference is meaningful: ping and port checks have almost no tail (24 and 121 ms) while HTTP and API have an enormous one.
The reason is plain: ping measures the network, HTTP measures the network plus the application. Networks are stable, applications are not. The practical consequence: if you are slow, the gap between ping and HTTP on the same host tells you immediately where to look. Ping normal and HTTP slow means the application or the database, not the link.
API responds more slowly than HTTP at the median (153 against 96 ms) — as expected, since a database query usually sits behind it rather than a pre-rendered page.
Absolute numbers from somebody else’s sample are a poor benchmark, but the shape of the distribution transfers, and you can build your own checks around it:
You can see your own values in monitoring, or run a one-off check with the ping and port checker.
p50 — average user. p99 — worst 1% of requests. For SLAs (99% uptime + 99% fast) you need both. Typical p99 = 10-20× p50.
Workers — V8 isolates (1-5ms cold start). Lambda — container (100ms-2s cold start). Workers win real-time, Lambda wins large compute.
curl -o /dev/null -s -w "%{time_total}\n" https://api.example.com gives one sample. For statistics → Enterno Monitor every-minute checks.
1) Edge computing / CDN. 2) Async I/O (Node, Go, Rust). 3) Database indexes. 4) HTTP/2 or 3. 5) Payload compression.
Free plan — 10 monitors, checks every 5 min, no card required. Upgrade for 1-minute interval and multi-region monitoring.