Speedhound

How Speedhound measures

Exactly what the test does, how each number is calculated and where its limits are.

Test server

Every request goes to speed.cloudflare.com, which routes you to the nearest Cloudflare data center. The results panel names that data center. Speedhound runs no test servers of its own and stores nothing about your test.

The test, step by step

What runs, in order
PhaseWhat happensResult
Idle pingOne warm-up request, then 20 tiny HTTPS requests one after another. A request that takes over 2 seconds counts as lost.Ping is the median of the 20 times. Jitter is the average difference between consecutive times. Packet loss is the share that timed out.
Download8 seconds over 4 parallel connections, with file sizes growing from 1 MB to 100 MB. A ping request runs every 250 ms throughout.Speed counts only the last 6 seconds, skipping the first 2 seconds of ramp-up. Loaded ping is the median of the pings sent during this phase.
Upload6 seconds over 3 parallel connections, with uploads growing from 1 MB to 10 MB, again with a ping every 250 ms.Speed counts only the last 4.5 seconds. Loaded ping is the median during this phase.

How the bufferbloat grade is calculated

Added latency = the higher of the two loaded pings (download or upload) − idle ping, never below zero. That number maps to a grade:

Grade thresholds
GradeAdded latency
A+Under 5 ms
A5 to under 30 ms
B30 to under 60 ms
C60 to under 200 ms
D200 to under 400 ms
F400 ms or more

The grade uses medians, so it shows typical delay under load. Short spikes that hit only a few pings do not move it much. See the bufferbloat test for what each grade feels like and how to fix a bad one.

How the verdicts are decided

Verdict rules
VerdictGoodBorderline
4K streaming25 Mbps or more down15 Mbps or more down
Video calls3+ Mbps up, ping up to 100 ms, jitter up to 30 ms1.5+ Mbps up and ping up to 150 ms
Online gamingPing up to 50 ms, jitter up to 15 ms and a bufferbloat grade of B or betterPing up to 100 ms and jitter up to 30 ms
Cloud backup50 Mbps or more up10 Mbps or more up

Anything below Borderline is Poor. Packet loss above 2% caps video calls at Borderline; above 1% does the same for gaming.

Known limits

Questions

Why is my result different from Speedtest.net or fast.com?

Each test uses different servers, a different number of connections and a different test length. Speedtest.net often picks a server inside your ISP's own network, which can read higher than traffic to the wider internet. Speedhound tests against Cloudflare's nearest data center, the same kind of path most websites use. Run both a few times; differences of 10 to 20% are normal.

Why does Speedhound measure ping over HTTP instead of ICMP?

Browsers cannot send ICMP ping packets. Speedhound times a tiny HTTPS request instead, so its ping includes a little request overhead and usually reads a few milliseconds higher than a command-line ping.

Does Speedhound store my results?

No. The test runs in your browser and the numbers stay there. If you share a result, the numbers are written into the link itself, so nothing is saved on a server.

More from Speedhound