Network Status and Connection Quality
MediaEverything runs locally in your browser — nothing is uploaded
⚠️ This page makes no measurement requests: every number below was recorded by the browser, not measured by us. That also means bandwidth and latency are browser **estimates**, not measurements.
⚠️ navigator.onLine only means a network interface exists, not that the internet is reachable: on a Wi-Fi with no uplink it still reports online.
These are the load phases of **this page** from the navigation timing record. A dash usually means that step did not happen (cached DNS, a reused connection, not https).
Slowest resources:
This page lays out the network information the browser already has: the current online state and every online/offline switch since the page loaded, the effective type, estimated downlink and estimated latency from navigator.connection, this page own load phases (DNS, TCP, TLS, first byte, download, DOMContentLoaded, load), and a count and size breakdown of resources. ⚠️ It never sends a measurement request. No speed test, no ping, no throughput chart — that is neither how this site works nor free of traffic on someone else network. So every number here was recorded by the browser in the course of doing its job, which also means downlink and rtt are browser estimates, not measurements, and each one is labelled as such. One more thing has to be said plainly: navigator.connection does not exist in Firefox or Safari and has not for years, so the page says the browser does not provide it rather than showing a blank or a 0. Likewise, cross-origin resource sizes are unavailable by default (the other side did not send Timing-Allow-Origin); they count as 0 and are excluded from the totals, otherwise the total transfer would look absurdly small with no visible reason. Everything is read locally.
Features
- The current online state, every online/offline switch since the page loaded, and the totals
- ⚠️ States plainly that navigator.onLine only means an interface exists: on a Wi-Fi with no uplink it still reports online
- Effective type, estimated downlink, estimated round-trip time and data saver mode, each labelled as an estimate rather than a measurement
- ⚠️ Says so directly when Firefox or Safari does not provide connection, instead of showing a blank or a 0
- This page load phases: DNS, TCP, TLS, TTFB, content download, DOMContentLoaded and load
- Explains a dash in a phase (cached DNS, a reused connection, not https) rather than writing a 0
- Resources grouped by type with counts and byte totals, and a re-scan button since resources arrive over time
- ⚠️ Counts cross-origin entries with no size separately and excludes them from the totals, noting the total is always an undercount
- The slowest resources and a one-click copy of the whole snapshot; everything is read locally
How to use
- The online state, this page load phases and the resource stats are there as soon as the page loads
- To see the switch history, disconnect and reconnect: each one is logged in the online-state panel (in memory only, cleared on reload)
- If the connection panel says it is unavailable, the browser has not implemented connection; Chrome or Edge will show it
- Press Re-scan to refresh the resource list, and Copy to take the whole snapshot away
FAQ
- Why not add a speed test or a ping?
- Because that would put traffic on someone else network, and it is not how this site works. Everything here is information the browser already recorded: how long its own load took, which resources it fetched, and which network type it thinks it is on. For real bandwidth, use a dedicated speed test — that is not something this page pretends to be.
- Why is the downlink figure labelled an estimate?
- Because navigator.connection.downlink is inferred from past throughput rather than measured: it lags when the speed changes, and it is an estimate for a single connection. Treating it as a measurement leads to wrong conclusions, so its real nature is stated next to each value.
- Why does the total transfer size look so small?
- Because cross-origin resources do not expose their size by default: transferSize is 0 when the other side did not send Timing-Allow-Origin. This page lists those entries separately and excludes them from the total, so the total is necessarily an undercount. For real sizes, use the Network panel in developer tools.
- Why is there no connection data?
- Because navigator.connection is a non-standard interface that Firefox and Safari have long declined to implement. That is a browser choice, not a network problem — Chrome or Edge will show it.
Related tools
Your Browser Info
WebSee what your browser exposes to websites: user agent, screen, time zone, CPU cores, WebGL renderer and feature probes — all read locally, never sent.
Bandwidth and Download Time
ConvertConvert bandwidth to real download speed and time: why 500M gives 62.5MB/s, how much protocol overhead costs, and how long a file takes.
User-Agent Parser
WebParse a user agent into browser, version, OS, device type and engine, and see which rules matched. Pattern matching only. Runs entirely in your browser.
Video to GIF
MediaTurn part of a video into a GIF with adjustable frame rate, width, colours and looping. Pick the range from the preview; nothing is uploaded.
Video Frame
MediaExport the exact frame at any moment, at the video's own resolution, as PNG, JPEG or WebP. Sharper than a screenshot: no controls, no display scaling.
Audio to WAV
MediaConvert MP3 / M4A / FLAC and more to WAV, with an optional sample rate (16k speech, 48k video), mono downmix and peak normalisation. All in the browser.