Manifest position 176 · CrUX rank bucket 1000
https://duckduckgo.com
Partial after retries
56 of 58 checks were judged. Two journey checks were blocked by DuckDuckGo anti-bot challenges; there are no missing, unknown, duplicate, or not-run rows.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | pass | high | System light and dark screenshots show usable retinting; the root declares color-scheme and the explicit theme settings are also available. |
respect-user-preferencesrespects-reduced-motion | pass | high | Under prefers-reduced-motion: reduce, getAnimations() returned none and CSS contains global and component-specific reduction rules. |
respect-user-preferencesrespects-contrast | pass | high | Forced-colors/prefers-contrast screenshot retained readable text and visible controls; Lighthouse found no contrast failure. |
implement-natural-interactionsview-transitions | issues | high | The CSSOM probe found no view-transition rules and route changes use conventional navigation; no transition was visible in sampled states. F-13 low: No View Transition integration was found for state or route changes. |
implement-natural-interactionsscroll-driven-animations | not-applicable | high | No parallax, scrollytelling, entry reveal, or other scroll-linked animation was present on the sampled templates. |
implement-natural-interactionsphysical-gestures | pass | high | Sampled scrolling and controls use native scrolling, touch-action, and overscroll containment; no custom pointer-drag implementation was observed. |
provide-guided-navigationscroll-state-aware-chrome | not-applicable | high | No sticky or affixed chrome requiring a scroll-state reaction was present in the sampled homepage/privacy states. |
provide-guided-navigationanchored-positioning | not-applicable | high | No tooltip or edge-positioned transient overlay was exposed in the sampled states; the full-screen challenge is not an anchored overlay. |
provide-guided-navigationdirects-attention | pass | high | The first viewport provides a labelled scroll-down control, clear Search/Duck.ai state, and settings tabs with visible selected state. |
maximize-content-reduce-noiseno-intrusive-interruptions | pass | high | Homepage, settings, and privacy initial screenshots show content directly with no promotional interstitial or consent wall. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | The challenge DOM is a .anomaly-modal__mask/.modal div tree without <dialog>, role=dialog, aria-modal or an explicit accessible label. F-11 medium: The blocking anti-bot overlay is custom div markup rather than a semantic modal primitive. |
maximize-content-reduce-noisereduced-chrome | pass | high | First-viewport screenshots devote the composition to search/content with restrained navigation and no dense application frame. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | pass | high | At 360px the homepage reported scrollWidth=clientWidth=360; /privacy likewise reported 390px with no overflow. |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | high | A CSSOM probe found zero @container rules even though the homepage reuses search, cards, tabs and promotional modules at varied widths; viewport layouts themselves did reflow without overflow. F-12 low: No container-query adaptation was found in the homepage component styles. |
adapt-to-the-form-factorinput-modality-aware | issues | high | The focus/geometry probe measured the menu and search submit controls at 32×32 px, AI settings at 38×38 px, and toggle inner buttons at 18×18 px; focus indicators were generally present. F-16 medium: Several primary controls have sub-44px touch targets. |
support-core-task-successclear-purpose-and-primary-action | pass | high | Homepage heading, privacy promise, and prominent labelled search field make purpose and primary action immediately clear. |
support-core-task-successprimary-flow-completion | blocked | high | The submitted search loaded an external anti-bot image challenge. Selecting the visually identified duck tiles and submitting did not clear it, so end-to-end result completion could not be exercised. |
support-core-task-successclear-system-state-and-recovery | issues | high | Both JavaScript and HTML search paths stop at the visual duck puzzle. The JS state offers only Submit; the HTML fallback only offers an email code when images fail, not an immediate equivalent completion path. F-15 high: The bot-block state gives no accessible way to recover and complete search. |
be-fast-and-stablegood-core-web-vitals | issues | high | Lighthouse measured LCP at 6.2 s on the homepage and 7.9 s on the privacy page, both well outside the good threshold; performance scores were 69 and 73. F-02 high: Largest Contentful Paint is slow on both primary templates. |
be-fast-and-stablevisual-stability | pass | high | Observed homepage CLS was 0 and privacy CLS 0.0477, both in the good range; mobile screenshots show reserved stable layout. |
be-fast-and-stableefficient-main-thread | pass | high | Trace found one 193.7ms long task and 143.7ms TBT; Lighthouse TBT was 160ms homepage/110ms privacy, within the good lab threshold though improvable. |
be-fast-and-stableefficient-resource-delivery | issues | high | HAR captured 108 requests and 2,028,477 transferred bytes, including 8 parser-inserted very-high-priority stylesheets and 585,909 font bytes; Lighthouse flags render blocking on the privacy template. F-03 medium: The homepage has a heavy critical delivery path. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | Lighthouse estimates 117 KiB unused JavaScript and 21 KiB legacy JavaScript on the homepage, and 176 KiB unused plus 14 KiB legacy JavaScript on /privacy. F-04 medium: Substantial unused and legacy JavaScript ships on initial load. |
be-inclusivenames-roles-labels | issues | high | The search screenshot shows a required image-classification puzzle. The rendered DOM uses clickable div tiles with background images and no accessible names/roles; the HTML fallback uses images with alt=" ". Search could not be completed. F-01 high: The anti-bot challenge has no accessible non-visual completion path. |
be-inclusivesufficient-contrast | pass | high | Lighthouse accessibility was 98/100 homepage and 100/100 privacy with no contrast audit failure; visual checks remained legible in dark/light/forced colors. |
be-inclusivestructure-and-focus | issues | high | The DOM has two H1 elements and jumps from H3 to H6 ("Get our free browser today"); Lighthouse fails heading-order. F-06 medium: Homepage heading levels do not form a coherent hierarchy. |
be-inclusivelegible-text | pass | high | Homepage/settings/privacy screenshots show readable sizing, line length and spacing with no clipping at mobile width. |
be-inclusivezoom-reflow-targets-and-media | issues | high | Mobile layouts have no horizontal overflow and allow scaling, but the geometry probe finds multiple 18–38px controls on the primary homepage. F-17 medium: Touch target sizing falls short despite otherwise good mobile reflow. |
follow-best-practicesno-console-errors | pass | high | Lighthouse did not report console error or uncaught-exception failures on homepage or privacy. |
follow-best-practicessound-document-and-assets | issues | high | Lighthouse fails the image aspect-ratio audit. The image probe reports 51 of 67 images without both dimensions, although many are hidden/decorative and did not produce homepage CLS. F-05 medium: Some images are rendered with incorrect aspect ratios and weak sizing metadata. |
follow-best-practicesbrowser-platform-hygiene | pass | high | Lighthouse best-practices was 96/100 and 100/100; the only homepage failure was image aspect ratio, with no prompt-on-load, deprecation, or paste-prevention signal. |
be-discoverabletitle-and-description | pass | high | Homepage, settings and privacy DOM captures each contain descriptive titles and meta descriptions. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | Lighthouse SEO reports 8 links with non-descriptive text. F-07 low: Several homepage links do not provide descriptive link text. |
be-discoverablecanonical-and-indexing-signals | issues | high | The fetched sitemap includes lastmod 2025-03-282 for /about and an extra closing </url> around /pro, making indexing signals unreliable. F-10 low: The published sitemap contains malformed and mistyped entries. |
be-discoverablestructured-and-shareable-metadata | pass | high | Homepage, settings and privacy DOM include matching Open Graph title, description, URL and image metadata. |
be-private-and-securesecure-transport-and-headers | issues | high | The headers primitive confirms HTTPS, HSTS, nosniff and frame protections, but script-src includes unsafe-inline and unsafe-eval, weakening XSS mitigation. F-08 medium: The CSP permits both unsafe-inline and unsafe-eval for scripts. |
be-private-and-securedata-minimisation-and-third-parties | pass | high | Tracker probe found no known trackers, zero cookies, and HAR attributed only 4,951 bytes to third-party origin improving.duckduckgo.com. |
be-private-and-securein-context-permissions-and-modern-auth | pass | high | Permissions remained in prompt state and no geolocation/notification prompt appeared on load; no password authentication was present in sampled scope. |
be-private-and-securedefensive-browser-policies | issues | high | HSTS, X-Frame-Options, nosniff, Referrer-Policy and Permissions-Policy are present, but CSP allows unsafe-inline/unsafe-eval and no Trusted Types requirement was observed. F-18 medium: Strong baseline headers are undermined by permissive script execution policy. |
be-resilientprogressive-enhancement | issues | high | Discoverability measured only 2% raw-to-rendered content coverage and classified the homepage as a JS shell; /privacy reaches 100%, showing the content template can server-render. F-09 high: The homepage’s substantive content is largely unavailable without JavaScript. |
be-resilientresilient-runtime-behaviour | pass | high | The settings UI and anti-bot modal remained within mobile/desktop viewports, native controls retained state, and no runtime console failure was reported. |
be-resilientoffline-and-installable | not-applicable | high | DuckDuckGo search is intrinsically network-dependent; an installable/offline search application is not a reasonable expectation for this public web surface. |
be-resilientnetwork-and-http-failure-states | blocked | high | Attempts to reach search/result and unknown-route states were intercepted by the same anti-bot challenge, preventing observation of genuine result-network failure recovery. |
be-internationalisedlang-dir-and-logical-properties | pass | high | Pages declare specific language values (en-US/en-GB), settings expose region and display-language controls, and sampled LTR layouts/read order remained coherent. |
be-internationalisedlocale-aware-data | not-applicable | high | No user-facing dates, currencies, durations, or other locale-formatted data appeared on the sampled homepage, settings, privacy, or blocked search states. |
be-internationalisedtime-zone-correctness | not-applicable | high | No events, timestamps, scheduling, or time-zone-sensitive data appeared on the sampled templates. |
be-trustworthyno-dark-patterns | pass | high | No consent wall, forced continuity, disguised ad, preselected purchase, or confirmshaming appeared in homepage/settings/privacy states. |
be-trustworthyhumane-error-handling | pass | high | The primary search input is a labelled required native input, so empty submission uses browser validation after interaction rather than premature custom blame. |
be-trustworthytrustworthy-input-assistance | pass | high | The search field has an accessible label and appropriate text semantics; autocomplete=off is proportionate for a privacy search query rather than personal-data entry. |
be-trustworthysafe-commercial-and-account-flows | not-applicable | high | No checkout, subscription purchase, authentication, or account-management journey was entered in the representative public search/settings/privacy scope. |
be-sustainableoptimised-assets | issues | high | The homepage transfers 2.03 MB: 512 KB images, 586 KB fonts and 781 KB scripts. The image probe reports 63 below-fold images without lazy loading and 23 legacy-format images. F-14 medium: Initial resource weight is disproportionate for a search landing page. |
be-sustainableno-wasteful-work | pass | high | HAR shows a very small third-party footprint, no known trackers, no autoplay media, and only two XHR/fetch requests in the capture. |
be-sustainablethird-party-and-media-budget | issues | high | Fonts, images and scripts account for about 1.88 MB of 2.03 MB transferred; 63 below-fold images were present without lazy loading. Third-party transfer was low at 4,951 bytes. F-19 medium: Below-fold media and fonts consume most of the landing-page transfer budget up front. |
be-agent-readystructured-agent-capabilities | not-applicable | high | Agent-facing capabilities are emerging and optional; this public search/content scope does not declare an agent-tool integration intent. |
be-agent-readyon-device-inference | not-applicable | high | No page feature in the sampled scope calls for on-device inference; absence is not a failure for this emerging contextual check. |
be-memory-efficientno-leak-under-repeated-interaction | pass | medium | Baseline/post heap summaries around 10 repeated search-field input/focus cycles grew from 23.77MB to 24.42MB (2.7%); no unbounded growth is demonstrated in this bounded exercise. |
be-memory-efficientbounded-footprint | pass | high | Baseline heap was 23.77MB across 394,468 nodes, proportionate to the rich homepage though not minimal. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | medium | Heap summaries did not surface a top Detached* constructor and the repeated bounded interaction produced only modest aggregate growth; no accumulating listener/timer symptom was observed. |
Provenance
Canonical report: results/atomic/reports/0176-duckduckgo_com.json
Report SHA-256: d2fb0d759bf12166d96cb5b358dd448855aa3ab84a8a5f01ac798d2fd6932884
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/duckduckgo_com/2026-07-27T16-45-31-267Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/duckduckgo_com/2026-07-27T16-45-31-267Z
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.