clifford.network / toolbox

free tool

Latency and Loss Monitor

Leave it running while the connection misbehaves. It times a small request every second to up to three places on the internet, charts the delay and every lost request, and tells you whether the problem is your own connection or somewhere further away. Then test how your line copes when it is busy, and export the evidence for your ISP.

Runs in your browser. Requests go straight from your browser to Cloudflare, Google or Amazon. Nothing comes to us.

Pick up to three targets and press Start. One request a second uses about 3 MB an hour. The load test uses up to about 450 MB.

TargetSentLostLossLastMinMedian95thMaxJitter
No samples yet.

What it says so far

  • WaitingRun it for at least a minute, ideally while the problem is happening.

Reading the result

What you seeWhat it usually meansWhat to try
Spikes and lost requests on every target at the same momentsThe problem is between you and your ISP: Wi-Fi, your router, the line, or the ISP's access network.Run it again on a cable. If it is clean on a cable, it is the Wi-Fi. If not, restart the router, then send the CSV to your ISP.
Only one target is badThat provider, or the path to it. Your connection is fine.Nothing to fix at your end. Test the service from somewhere else to confirm.
Delay jumps when the line is busy (the load test)Buffers in the router or modem filling up, often called bufferbloat. Calls and games stutter whenever someone uploads or streams.Turn on smart queue management (SQM, fq_codel or CAKE) on the router, or shape the line to just under its real speed.
Delay varies a lot, loss comes in burstsUsually Wi-Fi: distance, walls or a crowded channel.Move closer, use 5 GHz, change channel, or run a cable to the devices that matter.
Cloudflare reports packets resent, but no requests failedPackets are being lost and TCP is quietly sending them again. Applications feel slow rather than broken.Treat it as loss: same checks as above.

What it measures, and what it cannot

A request, not a ping

A web page cannot send ICMP. Each sample is a tiny HTTPS request on a connection that is already open, so it costs about one network round trip plus a few milliseconds at the far end. Compare targets with each other and over time, rather than with a ping from another tool.

Cloudflare's own figures

Cloudflare reports how its server sees your TCP connection: the round trip it measured and how many packets it had to send again. That is the nearest a web page gets to real packet loss.

No hop-by-hop view

It tells you whether and when, not which router. For the hops, run pathping -n 8.8.8.8 on Windows or mtr -rwnzc 300 8.8.8.8 on macOS and Linux while this is running.

The middle-hop trap

Loss at one hop in a traceroute that does not carry on to the later hops is that router choosing not to answer you, not lost traffic. Real loss continues all the way to the last hop.

Leave the tab open

It keeps measuring in a background tab, but not if the computer sleeps. Gaps are shaded on the chart so you can tell missing data from good data.

On a Cisco router

ping 8.8.8.8 repeat 1000 size 1400 source Gi0/0/0 gives you the same answer from the edge of your network. For a standing record, configure IP SLA with an icmp-echo probe. The WAN failover flow has the commands.