Manifest position 559 · CrUX rank bucket 1000
https://fast.com
Coverage complete
Atomic coverage complete across the single-page speed-test tool and its details/settings interaction surface.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | The dark-mode screenshot is visually identical to the light capture, and the DOM CSS sets html/body background-color:white with no dark media rule or color-scheme declaration. F01 medium: The interface is hard-coded to a light theme. |
respect-user-preferencesrespects-reduced-motion | issues | high | Under prefers-reduced-motion: reduce, the evaluate probe still found uil-ring-anim running infinitely with a 1000 ms duration. F02 medium: The loading spinner keeps rotating when reduced motion is requested. |
respect-user-preferencesrespects-contrast | pass | high | High-contrast screenshot keeps the result, controls, logo and links visually distinguishable; Lighthouse contrast audit passes. |
implement-natural-interactionsview-transitions | issues | high | DOM/CSS shows hidden panels toggled with display:none/block and no view-transition-name or document.startViewTransition use. F03 low: Details, settings and help swap abruptly through display changes. |
implement-natural-interactionsscroll-driven-animations | not-applicable | high | No scroll-linked animation exists on this compact single-screen tool. |
implement-natural-interactionsphysical-gestures | not-applicable | high | The tool exposes no swipe, drag, carousel or other gesture-driven interaction. |
provide-guided-navigationscroll-state-aware-chrome | not-applicable | high | The primary tool is a single-viewport result surface with no meaningful scrolling chrome. |
provide-guided-navigationanchored-positioning | issues | high | DOM/CSS shows .dropdown-content position:absolute; right:0 with no popover, anchor-name, position-anchor or position-try fallback. F04 low: The language menu is a manually positioned custom overlay. |
provide-guided-navigationdirects-attention | pass | high | The changing speed number, adjacent progress control and compact visual hierarchy keep attention on the active measurement. |
maximize-content-reduce-noiseno-intrusive-interruptions | pass | high | Initial screenshots show only the speed test with no modal, consent wall, ad or obscuring banner. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | The document probe found zero dialog/popover elements and three custom overlay/disclosure containers. F05 medium: Dropdown, settings and help disclosures use generic divs and manual visibility toggles. |
maximize-content-reduce-noisereduced-chrome | pass | high | Desktop and mobile captures devote nearly the entire viewport to the result and contain no advertising or decorative application frame. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | issues | high | At a requested 360x800 viewport, layout reported innerWidth/clientWidth 980 and hasViewportMeta:false; the mobile screenshot shows small scaled header controls. F06 high: The page omits the viewport meta tag, so mobile browsers render a 980 CSS-pixel desktop viewport and scale it down. |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | high | The captured CSS uses @media (orientation: portrait) and vh/vw sizing but contains no container-type or @container rules for reused controls/panels. F07 low: Responsive behavior is tied only to viewport orientation and global media rules. |
adapt-to-the-form-factorinput-modality-aware | issues | high | The 360px capture is a scaled 980px layout; focus probes report outline:none on Show more info, Settings, Save, Cancel and all settings inputs. F08 high: Visible controls are too small on mobile and custom controls lack a visible focus treatment. |
support-core-task-successclear-purpose-and-primary-action | pass | high | Title, FAST logo and automatically starting measurement make the purpose and next action immediately clear. |
support-core-task-successprimary-flow-completion | pass | high | Repeated live captures produced numeric Mbps results without account walls or manual setup. |
support-core-task-successclear-system-state-and-recovery | pass | high | The DOM exposes progress, pause/play/restart states and specific unstable/no-connection messages; the core control remains available. |
be-fast-and-stablegood-core-web-vitals | pass | medium | Lighthouse LCP was 2.4 s and CLS 0.019; CDP trace LCP/FCP was 541 ms. No field INP was available. |
be-fast-and-stablevisual-stability | pass | high | Mobile layout observer measured CLS 0.006 and Lighthouse measured 0.019, both in the good range. |
be-fast-and-stableefficient-main-thread | issues | high | Lighthouse measured 640 ms Total Blocking Time (score 0.46), although the unthrottled CDP trace saw no long tasks; the throttled mobile result establishes a risk on slower devices. F09 high: Mobile Lighthouse observed substantial main-thread blocking. |
be-fast-and-stableefficient-resource-delivery | pass | high | HAR totals only 85 KB transferred, reports useful cache headers and no redirects/HTTP errors; two tiny stylesheets are the only confirmed render-blocking resources. |
be-fast-and-stabletrim-unused-and-duplicate-code | pass | high | The application ships one 27 KB script and two small stylesheets; HAR/Lighthouse provide no evidence of large duplicate or legacy bundles. |
be-inclusivenames-roles-labels | issues | high | Lighthouse identifies Help, Facebook and Twitter links without discernible names; the document probe finds no labels for min/max connection and duration inputs. F10 high: Several icon links and numeric settings fields lack accessible names or associated labels. |
be-inclusivesufficient-contrast | pass | high | Lighthouse color-contrast audit passes and the high-contrast capture remains readable. |
be-inclusivestructure-and-focus | issues | high | The document probe found zero h1/h2/h3 elements and outline:none on the main disclosure, settings controls and inputs. F11 high: The page has no heading structure and key custom controls suppress focus outlines. |
be-inclusivelegible-text | pass | high | The primary result is large, unclipped and visually dominant in desktop and mobile captures; explanatory text uses a conventional readable face. |
be-inclusivezoom-reflow-targets-and-media | issues | high | At a requested 360x800 viewport, layout reported innerWidth/clientWidth 980 and hasViewportMeta:false; the mobile screenshot shows small scaled header controls. F06 high: The page omits the viewport meta tag, so mobile browsers render a 980 CSS-pixel desktop viewport and scale it down. F08 high: Visible controls are too small on mobile and custom controls lack a visible focus treatment. |
follow-best-practicesno-console-errors | pass | high | Lighthouse reports no browser errors logged to the console. |
follow-best-practicessound-document-and-assets | pass | high | DOM has an HTML doctype and UTF-8 charset; imagery is SVG/CSS and the image audit found no img sizing/aspect issues. |
follow-best-practicesbrowser-platform-hygiene | pass | high | Lighthouse reports no DevTools inspector issues and confirms BFCache eligibility; no prompt-on-load or paste-prevention behavior was observed. |
be-discoverabletitle-and-description | pass | high | DOM and raw HTML both include a descriptive title and meta description. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | robots.txt allows crawling and links use hrefs, but the DOM has no viewport meta and a requested 360px viewport renders at 980 CSS pixels. F16 medium: The page is crawlable but not correctly configured for mobile rendering. |
be-discoverablecanonical-and-indexing-signals | pass | high | Main response is 200 with canonical URL, extensive hreflang alternatives, and robots.txt allows indexing. |
be-discoverablestructured-and-shareable-metadata | pass | high | The simple utility provides matching Open Graph and Twitter title, description and image metadata; entity-specific JSON-LD is not necessary. |
be-private-and-securesecure-transport-and-headers | issues | high | The headers primitive confirms HTTPS and HSTS but no Content-Security-Policy and no X-Content-Type-Options. F12 high: Important security headers are absent. |
be-private-and-securedata-minimisation-and-third-parties | pass | high | No cookies, known trackers or exposed secrets were found; third-party requests are Netflix/Fast speed-test infrastructure necessary to the measurement. |
be-private-and-securein-context-permissions-and-modern-auth | pass | high | No permission prompt or authentication flow exists; no unrelated privileged API request was observed. |
be-private-and-securedefensive-browser-policies | issues | high | The headers primitive found no X-Frame-Options or CSP frame-ancestors, Referrer-Policy, or Permissions-Policy. F13 medium: Clickjacking, referrer and permissions defenses are not declared. |
be-resilientprogressive-enhancement | pass | high | Raw HTML returns descriptive/help content with 100% rendered-word coverage; the actual bandwidth measurement necessarily requires script and network. |
be-resilientresilient-runtime-behaviour | pass | high | The compact surface completed repeated measurements without clipped visible overlays or runtime errors; BFCache is eligible. |
be-resilientoffline-and-installable | not-applicable | high | A live bandwidth measurement is intrinsically online-only; the favicon manifest is not an app manifest and no offline flow is expected. |
be-resilientnetwork-and-http-failure-states | pass | high | Authored DOM contains distinct unstable-connection and no-connection messages plus a reusable play/restart control. |
be-internationalisedlang-dir-and-logical-properties | issues | high | Lighthouse fails html-has-lang; the probe reports html.lang empty while body uses a nonstandard language="en" attribute. Captured CSS uses left/right margins, floats and positioning rather than logical properties. F14 high: The document language is not exposed on the root element and layout CSS relies heavily on physical directions. |
be-internationalisedlocale-aware-data | not-applicable | high | The page renders no dates, currencies, locale-sensitive numbers or calendar data. |
be-internationalisedtime-zone-correctness | not-applicable | high | The page contains no events, dates or time-zone-sensitive data. |
be-trustworthyno-dark-patterns | pass | high | Screenshots and network evidence show an ad-free tool with no consent wall, upsell, forced continuity or disguised action. |
be-trustworthyhumane-error-handling | issues | high | The settings DOM exposes min/max numeric inputs without labels, aria-describedby or a visible/announced validation message container. F15 medium: Settings number fields provide bounds but no associated guidance or accessible validation surface. |
be-trustworthytrustworthy-input-assistance | not-applicable | high | The settings contain only bounded test-configuration numbers/checkboxes; address, payment and identity autofill do not apply. |
be-trustworthysafe-commercial-and-account-flows | not-applicable | high | There is no checkout, subscription, authentication or account-management flow. |
be-sustainableoptimised-assets | pass | high | Only 3.2 KB of image transfer was observed and brand imagery is SVG/CSS; image audit found no raster waste. |
be-sustainableno-wasteful-work | pass | high | The 58 measurement fetches are proportionate to the explicit speed-test task; no unrelated analytics or idle background work was observed. |
be-sustainablethird-party-and-media-budget | pass | high | No audio/video or trackers load; third-party traffic is the measurement itself and total transferred bytes during capture were 85 KB. |
be-agent-readystructured-agent-capabilities | not-applicable | high | This small public diagnostic does not declare an agent-facing intent; emerging WebMCP capability is an opportunity, not an obligation. |
be-agent-readyon-device-inference | not-applicable | high | The deterministic network measurement has no useful language-model or summarisation task. |
be-memory-efficientno-leak-under-repeated-interaction | pass | high | After ten details/settings/cancel cycles, heap summary decreased from 2,351,591 to 2,032,939 self-size bytes and node count from 61,641 to 46,050; no retained-growth signal appeared. |
be-memory-efficientbounded-footprint | pass | high | Both heap summaries are about 2.0-2.35 MB self size with 46k-62k nodes, proportionate to the small application. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | high | Before/after summaries show no Detached* constructor among top populations and no total node/closure growth after repeated interaction. |
Provenance
Canonical report: results/atomic/reports/0559-fast_com.json
Report SHA-256: 4d5aa9f4dd4c5d3a010efe8d8647ef2dedefb356b1ce26d3ba94127ba7d41cac
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/fast_com/2026-07-21T14-01-38-933Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/fast_com/2026-07-21T14-01-38-933Z
Catalog SHA-256: sha256:78ccfdb2d483f4c57d9dafed80fd86c6265585a56457c8dcfddc254b80fb44d7
Raw screenshots, HARs, traces, heaps, and other browser artifacts are retained at the local evidence root and intentionally are not committed. Artifact paths in the canonical report are relative to that root.