Help

Settings

Your internet plan

Compare your speed test with your plan

Under the hood

How does the real speed test work?

A tiny file can finish before a fast connection gets up to speed, making that line look slower than it is. This test ramps through larger files, checks both directions, and turns your guesses into points.

A real test in your browser

The test runs in your browser against Cloudflare's global network, using speed.cloudflare.com/__down for downloads and speed.cloudflare.com/__up for uploads. No app or install is needed.

What happens after you press Start?

Press Start and follow the three cues. The exact timing can vary, but the test moves through these steps in order:

  1. Ping first. The ping pod shows the round-trip time while the test checks small requests.
  2. Download next. Download requests begin, and the gauge needle follows the download speed.
  3. Upload after that. The test switches to upload requests, and the gauge shows upload speed.

Watching the pod and needle makes the measurement easier to follow. The whole round is usually under 40 seconds.

Ping and jitter

The test starts with one warm-up request, then sends 20 tiny requests. Ping is the median, or middle, round-trip time. Jitter is the average change between consecutive pings.

Download and upload ramps

Download files grow from 100 kB through 1 MB, 10 MB, and 25 MB up to 100 MB. Uploads use the same ramp from 100 kB up to 50 MB. When requests take about one second, the engine skips bigger files in that direction. Small downloads can finish before a fast connection gets up to speed, so increasing the file size helps avoid measuring too low. Slow connections do not wait forever, and fast connections still get pushed.

How the final speed is chosen

The final speed is the 90th percentile of the timed requests, and only requests longer than 10 ms count. A simple average can be pulled down by slower requests, while choosing only the single best one could reward one lucky burst. The 90th percentile sits near the strong end of the results without letting one request decide the score.

A quick round, not a network deep dive

Loaded latency and packet loss are not measured, which keeps a round quick. It is usually under 40 seconds from start to finish.

Why does the gauge move that way?

The gauge scale is not linear. Its marks are 0, 5, 10, 25, 50, 100, 250, 500, and 1000 Mbps, so both slow and fast lines move the needle. It caps visually at 1000 Mbps, while the readout keeps the exact number.

From guess to points

For each speed, miss is the gap between the guess and the actual result, divided by the actual result. Download and upload misses are averaged. For example, if the test measures 100 Mbps download and 20 Mbps upload, a guess of 90 and 18 is 10% off on both, for a 10% average miss. A lower average miss ranks higher.

First place gets 3 points, second gets 2, and third gets 1. Guesses more than 50% off on average get no place points. A guess within 5% earns a bonus point for that speed. See How to play for the full rules and tie options.

Why do two tests give different numbers?

A speed test is a snapshot of the connection at that moment. Results can shift with other devices on the network, Wi-Fi signal, time-of-day congestion, the server route, and browser or device limits.

Where do the results go?

Local-game results stay on this device. For room games, Cloudflare temporarily stores the shared game state and deletes it after six hours without activity. Read the privacy page for the details, or visit Internet speed 101 for a friendly guide to Mbps, ping, and Wi-Fi.

How room codes keep guesses secret

When you play on separate phones, the room server sends each device its own view. While guesses are open or the test is running, each player sees their own numbers and other guesses remain hidden. The server reveals them after the host submits the result.

Frequently asked questions

Where does the speed test run?

It runs in your browser against Cloudflare's global network, using speed.cloudflare.com/__down and speed.cloudflare.com/__up. No app or install is needed.

How are ping and jitter measured?

The test starts with one warm-up request, then sends 20 tiny requests. Ping is their median, or middle, round-trip time. Jitter is the average change between consecutive pings.

Why does the test use larger files?

Small files can finish before a fast connection gets up to speed, so the test ramps through larger sizes. Downloads go from 100 kB to 1 MB, 10 MB, 25 MB, and 100 MB. Uploads go from 100 kB to 50 MB. The engine skips larger sizes once requests take about one second.

Does the test measure loaded latency or packet loss?

No. Loaded latency and packet loss are not measured, so a round is usually under 40 seconds.

Why can two tests show different numbers?

Other devices on the network, Wi-Fi signal, time-of-day congestion, the server route, and browser or device limits can change a test result.

Does Cloudflare receive my game results?

Local-game results stay on your device. For separate-phone games, Cloudflare temporarily stores the shared room state. See the privacy page for details.