How our speed test works

A speed test is only useful if you can trust how it measures. This page explains exactly what CheckSpeedPro does, what it does not do, and where the results can be inaccurate.

Where the test runs

Measurements run against Cloudflare’s global anycast network, which has more than 300 edge locations. When you start a test, your browser is routed to the nearest edge data centre automatically — the same approach Speedtest.net uses, where a nearby server is selected rather than a single distant machine. This matters because the number you get is your connection to a nearby server, so it reflects your ISP rather than the hosting provider’s uplink.

The data centre code and city of the edge node that served your test are shown in the connection panel and stored with your result so you can confirm the test was local.

How each measurement is calculated

Ping and jitter

A short burst of small requests is sent to the edge server and the first couple are discarded as a warm-up — the first request on a new connection includes DNS, TCP and TLS setup that no steady-state measurement should include. The reported ping is the best remaining round-trip time once the outliers are removed, and jitter is the average change between consecutive round trips.

Download

Up to six parallel streams each pull a chunk of data for up to fifteen seconds, with a hard cap on the total number of bytes transferred. Parallel streams are essential: a single HTTP connection rarely saturates a modern broadband line, so single-stream tools routinely report less than half the speed you actually have. The reported figure is the true average — total bytes multiplied by eight, divided by the elapsed time — rather than the momentary peak that a single burst produces.

Upload

The same approach in reverse. Six streams post a randomised blob while the bytes actually accepted by the network are counted, so the reported figure is the throughput your line really sustained rather than what was handed to the socket.

What we do not do

Where results can be inaccurate

A speed test measures one connection, at one moment, on one server. The most common sources of error are: Wi-Fi signal loss and interference; other devices using the same connection; a VPN or proxy adding overhead; background browser tabs being throttled; and a congested edge node. If the result looks wrong, the most useful thing to do is run it again on a wired connection with other traffic paused.

Rate limiting and fairness

To keep the service usable for everyone, the number of completed tests is capped per IP address per day (50 by default). The limit is applied to completed runs and is not applied to the measurement itself, so it never affects the accuracy of a result. Results are shown in a shared list of recent runs, with IP addresses never displayed to other visitors.

Independence

CheckSpeedPro is an independent project. It is not affiliated with, endorsed by, or sponsored by Ookla, Cloudflare, Google, or any internet service provider. The site is funded by the advertising you see on the page, and no provider pays for a particular result to be shown.

Last reviewed 2026. If you think a result was reported incorrectly, tell us and we will look into it.