Chris Collins

Tools · network

Speed and latency test

Measure download and upload speed, latency, jitter, and latency under load against Cloudflare's network — or time HTTP requests to any site.

Added

How to use it

Speed test

Press Start test. It measures, in order:

  1. Latency and jitter — a series of empty requests; latency is the median time to first byte minus the server’s own processing time, and jitter the average change between consecutive samples. Cloudflare also reports the TCP round-trip time it measured on its side.

  2. Download — files of 100 kB, 1 MB, 10 MB (and, in the Full test, 25 MB and 100 MB), several of each. Larger sizes are skipped once a stage takes longer than eight seconds, so slow connections finish quickly. While downloading, latency keeps being measured: the rise is latency under load, and a large rise (tens of milliseconds or more) is the classic sign of bufferbloat.

  3. Upload — the same idea, posting random data.

Reported speeds are the 90th percentile of transfers of 1 MB and larger, which ignores the slow start of each connection. The charts show every transfer and latency sample; previous runs are kept in this browser. The Quick test uses about 50 MB of data; the Full test can use several hundred megabytes on a fast connection.

All test traffic goes to Cloudflare’s public speed-test service (speed.cloudflare.com), the same one behind speed.cloudflare.com — not to this site.

HTTP ping

Browsers cannot send ICMP pings, so this times repeated HTTP requests to any HTTPS URL. If the site does not allow cross-origin requests, the tool falls back to no-cors mode: the response is opaque, so you get the timing but not the status code. The first request includes DNS lookup and connection setup and is left out of the statistics; later requests normally reuse the connection. Bypass caches adds a random query parameter so a cache cannot answer.

Sharing

Share link copies a URL that opens this tool exactly as configured. The speed-test profile (?profile=full) or the HTTP-ping target and settings (pingURL, pingCount, pingGap, pingBust). A link never starts a test; press Start. For example: speed/?pingURL=https%3A%2F%2Fexample.org%2F&pingCount=10.

Runs entirely in your browser — network requests go only to the services named on this page.