Choose what you share
Running a test sends transfer traffic directly to Cloudflare. The website uses Cloudflare hosting and its network metadata to show an approximate network context. Opening the interactive map loads normal map tiles from OpenStreetMap; map data and code are not requested on the initial test screen. Those providers process network connections under their own policies. See Cloudflare's speed-test notice, Cloudflare privacy policy and OpenStreetMap privacy policy.
The browser shows a checked sharing choice beneath Run test. Starting captures that choice for this exact attempt. With sharing checked, a completed test automatically creates a publication session and submits a public copy. Uncheck before starting to keep the result on this device. Canceled or failed measurements create no publication session or submission. The website requests no device location and makes no startup IP-context lookup. Explicit public exploration can request a sourced IP context. A remembered choice from an older page is ignored. No measurement or sharing preference is stored in browser storage. There are no advertising or analytics scripts and no account is required.
Public data
A public result includes speed and HTTP latency metrics, runtime, test profile, your network-type claim, the UTC day, and Cloudflare's observed ASN organization and country hint. A VPN, proxy, or hosted agent can change which network this describes. Optional network details separate the device link from the Internet service. A browser-reported device link can be used when available. You can supply or correct the link, Internet service, negotiated Wi-Fi standard, and band. Each known field includes its source as user supplied, browser reported, or system observed. These are submitter observations, not server verification. Unknown fields are omitted. Wi-Fi through a cellular router can be Wi-Fi with a 4G/LTE or 5G Internet service. Details are captured at test start. Later edits apply only to the next test. Public result links show these observations and their sources. Coarse client_context can also include browser-reported OS, device type and browser family, or system-observed OS, runtime architecture and Node.js version. The CLI accepts an evidenced device type. Unknown fields are omitted; raw user-agent strings and hardware models are never included. --no-network-detection disables automatic CLI context collection. These facts can be identifying when combined with an area and network.
A checked browser run uses the later publication-session IP area, a 0.25-degree cell. The IP area can describe a VPN or proxy. An unavailable area adds no map point. The browser never requests device-location permission. The private reading keeps its original location of none. Publication-session hints stay separate from facts captured at measurement time and may describe a different route. Completed results and JSON downloads remain available while sharing is pending. Changing the checkbox after starting affects only the next test. Recovery of an uncertain publication reuses the original result identity and submission. The service publishes grid centers, not exact coordinates. An area combined with a network and date may still identify someone.
Stored and transient data
Our results database stores no IP address, IP hash, exact GPS, raw user-agent string, referrer, hostname, or arbitrary notes. Requests still pass through Cloudflare infrastructure, which processes connection metadata. An IP is used transiently for per-request rate limits and, until expiry, legacy credential verification. New ten-minute credentials are bearer tokens, so a changing outbound address does not invalidate them. Signed ASN and IP-area hints describe session issuance and can differ from the measured path. Application request logging is disabled.
Community results are publicly readable and may be copied by others. Public results remain until an operator-reviewed retention or removal action. This early service limits publication volume and storage instead of silently deleting older readings. Private results can be downloaded locally without publishing. A pending or unknown saved publication may already be public.
For support or an operator-reviewed removal request, open a support issue with the public result ID. Do not post credentials, private files, an IP address or exact location. Removing our copy cannot remove copies already made by others.
Optional everyday helper
The separately enabled helper observes its execution computer, including a cloud host. It sends small HTTPS probes and private completed-day quality reports. Optional counters describe only the explicitly selected host interface. The helper does not read prompts, browsing content or file contents as measurement inputs. Private observation, interface counters, macOS login continuation and public reuse require explicitly described permission. One consent can cover selected scopes together; it never enables an unselected scope.
Separate public permission allows future eligible grouped successful HTTPS timing summaries with sourced network, coarse-area and observation-period context. Interface traffic is excluded. Permission begins on the next server UTC day and ends exclusively within the installation reporting authority. The grant receipt supplies the actual dates. Public snapshots expire 90 days after promotion. Acknowledged withdrawal makes affected snapshots unavailable from this service; later cleanup deletes snapshot bodies. Downloaded copies cannot be recalled. Pending withdrawal blocks fresh private delivery until acknowledgment. Public commands preserve private observation settings, but starting an owner may perform previously authorized work. They do not install login startup. Production gates default closed.
Everyday retention differs from one-off results. The active local helper keeps up to 60 sealed minute windows plus its unfinished window, and up to seven queued or current report days. Stop suspends collection; uninstall retains private evidence and recovery files rather than deleting them. Server private reports have a 35-day cleanup policy. Server cleanup protects reports needed by pending public captures, and withdrawal tombstones and membership evidence can remain after snapshot bodies expire. The 90-day snapshot period is not a promise that all local or server data disappears. See the packaged skill and helper plans for choices and recovery.
Public observation limits
Opening public observations requests exact coarse filters and historical aggregate snapshots. It does not submit your private measurement. Search-area choices are separate from recorded measurement location and publication area. The geographic map and accessible table show aggregate cells; country summaries have no centroid. Pages contain up to 50 groups and show whole-filter test and group totals separately. Continuations keep the same dataset and filters until expiry. Stale or sparse evidence stays labelled. Sharing does not refresh aggregates automatically. These observations cannot rank your personal result or establish retail provider availability. Ordinary lookups send no publication token, private result or exact position. Map tiles and optional API reads stop during timed tests.