How this test works
Methodology:
• Latency/jitter: 24 timed HTTPS probes per target after 2 warm-ups (so TCP/TLS
setup is excluded): Google edge (gstatic.com), Microsoft edge
(login.microsoftonline.com — anycast on the Microsoft Global Network;
teams.microsoft.com as automatic fallback), Zoom (zoom.us), Genesys
Cloud regional APIs
(api.cac1.pure.cloud / api.mypurecloud.com / api.usw2.pure.cloud), Five9
(app.ca.five9.com Montréal, app.five9.com US), NICE CXone
(cxone.niceincontact.com), RingCentral (app.ringcentral.com). Jitter = mean
absolute difference between consecutive RTTs.
• Loss estimate: share of probes per target that fail or exceed 2.5 s — a proxy;
browsers can't send raw UDP pings.
• UDP checks: WebRTC ICE against stun.l.google.com:19302 (Meet's transport) and
stun.cloudflare.com:3478 (tests outbound UDP 3478 — required by Genesys Cloud
and standard SIP/STUN). If blocked, media falls back to TCP and quality drops.
• Bandwidth: download/upload via speed.cloudflare.com (CORS-enabled), with
adaptive upload chunk sizing over two parallel streams. Download counts are
corrected to on-the-wire bytes via Resource Timing (encodedBodySize), since
browsers report decompressed bytes and compressible payloads would otherwise
overstate throughput several-fold; the result notes the endpoint used.
• NAT type: one WebRTC gathering pass against two STUN servers; the same local
port mapping to different public ports = symmetric NAT (endpoint-dependent).
• Latency under load (bufferbloat): idle RTT baseline vs RTT sampled every
~150 ms while the speed tests saturate the link.
• Network path: public IP seen by STUN (media path) vs HTTPS egress IP;
a mismatch indicates VPN/proxy split-tunneling.
• VPN/proxy assessment (heuristic): split-tunnel detection, egress AS
organization classified against datacenter/VPN networks and corporate SASE
gateways (Zscaler, Netskope, Prisma Access, Umbrella, Cloudflare ZT, …),
and IP-geo longitude vs device UTC offset (>3.5 h apart = mismatch). A
full-tunnel VPN on a normal ISP with matching geography is NOT detectable.
• Local gateway probe: when this file is opened locally (downloaded), common
private router addresses are probed over HTTP — or the address you enter in
the optional field — and the responder is sampled for RTT/jitter: your
in-home segment. Routers whose admin UI refuses HTTP (e.g. HTTPS-only) are
detected and timed via the connection handshake instead. Hosted web pages
are barred from private addresses by browser security, so the public page
skips this; download the test file to measure it.
• Internet edge quality: a 16-probe burst against the nearest anycast edge
(typically 1\u20133 network hops past your ISP's handoff) — median RTT, jitter
and loss for the last mile + metro segment. Edge minus router \u2248 last mile.
• Path overview: logical legs use measured endpoint RTTs; the map plots
straight lines to region-anchored DCs (Genesys, Five9) only — browsers
cannot observe actual routes or the local router.
• "Browser link assessment" is the browser's own connection-quality class
(Network Information API): "Normal" means no slowdown detected, "Degraded"
means the browser measured a slow link. Internally browsers name these
classes after cellular generations ("4g", "3g") — that naming says nothing
about HOW you are connected and is NOT an indication of mobile data. On the
rare browsers that report the actual interface, it is shown instead
(e.g. Wifi, Ethernet); "Not reported by browser" means the API is absent.
• Diagnostics: public IP / ISP / ASN / IP-based location from
speed.cloudflare.com/meta (fallbacks: ipwho.is, api.ipify.org); IPv6 via
ipv6.icanhazip.com; browser/OS/device from the user agent. Everything is
shown locally in the browser only — nothing is uploaded or stored.
• MOS: simplified ITU-T E-model per target. Effective latency = one-way delay +
2×jitter + 10 ms; R-factor −2.5 pts per 1% loss; standard R→MOS curve.
Platform requirements referenced:
• Google Meet: audio 12–100 kbps; 720p ~1.7 Mbps; HD group ~3.6 Mbps;
outbound UDP 3478 & 19302–19309.
• Genesys Cloud: <150 ms one-way latency, <1% loss; Opus 32–128 kbps
bidirectional per call; UDP 3478 (STUN) + UDP 16384–65535 (SRTP).
• Five9: <150 ms one-way latency to DC; ~128 kbps per agent (Agent Desktop
Plus); RTP UDP 35000–65000; DCs: Santa Clara/Atlanta (US), Montréal (CA).
• Microsoft Teams: audio 58–76 kbps; <100 ms RTT to MS edge, <30 ms jitter,
<1% loss; media UDP 3478–3481.
• Zoom: audio ~60–80 kbps; media UDP 8801–8810 (TCP 443 fallback).
• NICE CXone: WebRTC softphone over HTTPS 443, SRTP on UDP 6000–65531;
<150 ms one-way latency.
• RingCentral: <150 ms one-way, <30 ms jitter, <1% loss; RTP UDP 20000–64999.