How does it tell which part of the path is at fault?
The page measures several paths at once: the nearest Cloudflare location, cloud regions in Tokyo, Frankfurt and Virginia, the services you picked, and UDP to public STUN servers. Every 5 seconds it compares them. All worse together: your side (Wi‑Fi, router, ISP). Nearby fine but distant worse: the long-haul route. One service worse: that service. Web fine but UDP losing packets: games and calls will stutter.
Every verdict lists its evidence and how sure it is.
Does it work with a proxy on?
It splits the path. In mainland China with a proxy on, domestic sites (not proxied) stand for your own line, the nearest Cloudflare location through the proxy for the way to the proxy server, and the distant cloud regions for what lies past it. Comparing the three tells the line, the way to the server and what follows apart. When the proxy app runs in TUN or fake-ip mode it may carry UDP too, and the verdict says how sure it is.
How is UDP loss measured?
A web page can’t send raw UDP, so it asks public STUN servers (Cloudflare, Google, and in mainland China Xiaomi and Bilibili) for its public address: each answer is one UDP round trip. When a request is lost, the browser resends it after 250 ms, so the answer comes late; counting those answers estimates the loss. We checked it by dropping 2%, 5% and 10% of packets on a server: it read 1–2%, 4–5% and 8–9%.
There are about 80 answers per server per minute, so exact percentages need a few minutes.
Why can’t it name the hop?
A web page can’t send ICMP or run a traceroute, so it judges the path in parts and can’t point at a single router. The parts answer most questions: Wi‑Fi and ISP, long-haul route, proxy, or the service.
What is the difference between diagnosing and monitoring?
A diagnosis runs for 2 minutes with a first verdict at 20 seconds: is it lagging now, and where. Monitoring runs until you press Stop: each part of the path gets a cell every 5 seconds, anything worse for over 10 seconds becomes an incident, and going offline, a change of network type or of public address are logged too. When the trouble comes and goes, leave it monitoring, come back, and the log says which part, when and for how long. It keeps measuring in a background tab.
Where does the Router lane come from?
When a run starts, the page looks for your home router at a few common addresses and adds a Router lane when it finds one. Then “your side” splits in two: the router worse as well means the Wi‑Fi or the home network; the router fine while the rest gets worse means the ISP connection. Chrome first asks whether this page may reach your local network and measures only once you allow it; other browsers don’t support this yet, so there is no such lane.
Does it upload my data?
No. Every request goes straight from your browser to the sites and STUN servers being measured; results stay on this page and are gone when you close it.
When you share a result, the link holds the verdict, the numbers and each lane’s states, never your IP address; the country and the Cloudflare location only if you tick the box.