OUR TESTING METHODOLOGY

Real measurements. Clear limitations.

We measure transfers between your browser and Cloudflare’s edge network. The results describe that path at that moment — a useful snapshot, with clear boundaries.

No simulated speeds: The test downloads and uploads actual test payloads. It uses the locally bundled, MIT-licensed @cloudflare/speedtest engine, version 1.15.0. Speed testing begins only when you press Start speed test.

How the measurements are calculated

We take 12 idle HTTP latency samples, then perform download and upload transfers with increasing payload sizes. The engine can stop increasing file sizes when a transfer takes long enough. Browser resource timings supply the measurement data. Download and upload estimates use the engine’s 90th-percentile bandwidth calculation over eligible samples; idle latency uses its median.

Jitter is the average difference between consecutive idle latency samples. This is HTTP response timing to the test network, not ICMP ping and not your latency to a specific game server. The bundled engine handles server timing adjustments. You can inspect the engine’s public methodology and API documentation.

Test modes and data use

ModePayload allowanceBest use
StandardUp to 78.8 MB combinedA fuller browser-based estimate
Data saverUp to 8.8 MB combinedLimited-data connections and quick checks

Protocol overhead adds some data beyond the payload. The interface rounds these allowances up. A slow connection may use fewer transfers. Individual transfer attempts time out after 15 seconds; the whole test has a three-minute limit. You can stop at any time, and incomplete results are not saved.

Larger-payload tests and multiple parallel connections can produce different results. Our lightweight, sequential-transfer approach may understate the maximum capacity of very fast or high-latency connections. Do not use it alone to certify gigabit capacity or prove an ISP fault.

Latency while your connection is busy

When transfers last long enough, the engine also samples latency during downloads and uploads. This can help you see changes while your connection is occupied. A dash means there were not enough eligible samples; it does not mean zero latency.

Activity guidance and sources

  • Streaming: At least 15 Mbps meets the reference for one Netflix 4K stream. At least 25 Mbps earns our “Room to spare” label. Netflix recommendation.
  • Video calls: Zoom lists 3.8 Mbps upload and 3 Mbps download for 1080p. Our stronger guidance requires 5 Mbps both ways, ping no higher than 100 ms and jitter no higher than 20 ms. The intermediate label also checks latency. Zoom requirements.
  • Gaming: Our “Responsive connection” label requires at least 5 Mbps download, 1 Mbps upload, ping at most 50 ms and jitter at most 15 ms. These are site-defined illustrative thresholds, not game certifications.

We do not measure packet loss, router signal strength, Wi-Fi channel interference, application-server performance, graphics performance or ISP outages. Activity guidance is a transparent rule-based estimate; it is not an AI diagnosis.

Where results go

The last 20 completed results are stored in this browser when local storage is available. This implementation disables the engine’s optional final-results reporting and per-measurement logging. Cloudflare still handles test traffic and receives normal connection information such as your IP address. Read our privacy and advertising explanation.

Ready for the real picture?

Measure your connection and see what the numbers mean.

Start a free speed test →