How Check.Fast Measures Your Internet Speed
Check.Fast at a glance
| What it is | A free online internet speed test at check.fast |
|---|---|
| What it measures | Download, upload, ping, jitter, bufferbloat grade, loaded latency (download & upload), packet loss, stability, responsiveness (RPM) |
| Test servers | Cloudflare's global edge network. Requests go to the nearest location automatically |
| Test length | About 15–30 seconds |
| Cost | Free. No sign-up, no ads, no app to install |
| Works on | iPhone, Android, Windows, Mac, Linux, Chromebook, any modern browser |
| Extras | PDF report, throughput graph, shareable result card, test history, router tips, service-reachability check |
| Privacy | No account. Your test history is saved only in your own browser |
1. Ping and jitter (idle latency)
Before any heavy traffic starts, Check.Fast sends 14 tiny requests (1 KB each) one after another to the nearest edge server. The first one is thrown away because it includes connection setup. That leaves a clean set of round-trip samples.
- Precise timing: each sample uses the browser's Resource Timing data (request sent → first byte back) and subtracts the server's own processing time reported in the
Server-Timingheader. This removes browser and server overhead from the number. If a browser doesn't expose this data, the test falls back to wall-clock timing. - Ping = 40% of the fastest sample + 60% of the median. This is stable and resistant to one-off spikes, but still reflects your best-case latency.
- Jitter = the average change between consecutive samples. Under 10 ms is good, and under 5 ms is excellent.
2. Download speed
Download starts with 2 parallel streams. Throughput is sampled every 200 ms and smoothed. While speed keeps climbing by more than 8%, another stream is added (up to 8), so fast gigabit lines get enough parallelism while slow lines are not flooded.
Once the speed stops climbing, the test switches to its measurement phase and keeps collecting samples. It ends when the last six samples vary by less than 5% (after at least 4 seconds), or after 14 seconds at most. The reported speed is a trimmed mean: the highest and lowest 20% of samples are discarded, so a lucky burst or a momentary dip can't distort your result.
3. Upload speed
Upload uses 6 parallel streams that repeatedly send 2 MB blocks of data. It uses the same plateau detection and trimmed-mean method as download, with a longer minimum (6 seconds) because upload speeds usually take longer to settle.
4. Bufferbloat and loaded latency
This is what separates a real connection-quality test from a basic speed test. While download and upload are running at full speed, Check.Fast keeps sending small latency probes (about every 90 ms, at most four in flight). The average of these is your loaded latency, which is how responsive your connection is when it's busy.
Bufferbloat is the gap between loaded latency and idle ping:
| Grade | Extra delay under load | What it feels like |
|---|---|---|
| A | under 30 ms | Games and calls unaffected by other traffic |
| B | 30–60 ms | Barely noticeable |
| C | 60–100 ms | Some lag when others stream or download |
| D | 100–200 ms | Noticeable lag spikes and choppy calls |
| F | 200 ms or more | Severe lag whenever the line is busy |
Latency is measured under both download and upload load. Upload bufferbloat is common on cable and DSL lines and is often what freezes video calls. See how to fix bufferbloat.
5. Responsiveness (RPM)
RPM (round-trips per minute) expresses loaded latency as a "higher is better" number: 60,000 ÷ average loaded latency in milliseconds. It is the same responsiveness idea used by Apple's networkQuality tool. Below 300 RPM is Low, 300–999 is Medium, and 1,000+ is High.
6. Packet loss and stability
- Packet loss is the share of latency probes that never came back within 3 seconds (at least six probes are needed before a figure is reported). Browsers can't send raw network packets, so this is a request-level measurement. It is a reliable signal of real drops and congestion, but not identical to a lab ICMP test.
- Stability shows how consistent your latency stayed under load: 100% minus the relative spread of the probes. 90%+ is excellent.
7. The overall grade (A–F)
The score out of 100 blends the four things that decide how the internet feels:
- Download: up to 45 points (full marks at 100 Mbps)
- Upload: up to 20 points (full marks at 20 Mbps)
- Ping: up to 20 points (0 points at 120 ms or more)
- Jitter: up to 15 points (0 points at 30 ms or more)
85+ = A (excellent), 70+ = B (good), 50+ = C (fair), 30+ = D (slow), below 30 = F. A confidence percentage shows how consistent the throughput samples were. Low confidence usually means background apps or unstable WiFi.
How accurate is it?
Check.Fast uses the same core approach as the major browser-based tests (parallel streams to a nearby server, with warm-up excluded) and adds loaded-latency measurement on top. Like every speed test, results depend on your device, WiFi signal, other apps and the time of day. For the truest reading of your plan's speed: plug in with Ethernet, close other apps and downloads, turn off any VPN, and run the test two or three times. Different tests use different servers, so small differences between services are normal (why speed tests differ).
Privacy
There is no account and no sign-up. The test runs in your browser against Cloudflare's speed-test endpoints. Your public IP, ISP name and approximate location are looked up only so they can be shown to you. Your recent results (last 30 tests) are stored in your own browser so you can compare them, and you can clear them at any time by clearing site data.
About Check.Fast
Check.Fast was built to be a clean, honest, no-nonsense speed test that measures what actually matters for streaming, gaming, video calls and working from home, not just a single headline number. Questions or feedback: support@check.fast.
Free, about 20 seconds, no app. Get download, upload, ping, bufferbloat and RPM.
Run the speed test →