Manifest position 761 · CrUX rank bucket 1000
https://id.xhamster.com
Coverage complete
Coverage-complete audit across six representative paths. The legal age-verification step was inspected but not completed with personal identity.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | The page is permanently dark but declares computed color-scheme: normal and contains no authored preference-driven theme; dark emulation produces the same fixed palette rather than honoring the system choice. F01 medium: Theme is hard-coded instead of preference-driven |
respect-user-preferencesrespects-reduced-motion | issues | high | With prefers-reduced-motion: reduce active, the probe still found eight running animations of 2000 ms and no matching reduced-motion CSS rule. F02 medium: Animations continue under reduced-motion |
respect-user-preferencesrespects-contrast | issues | high | Lighthouse reports failed color-contrast and link-in-text-block audits; high-contrast emulation does not expose an authored forced-colors/prefers-contrast treatment. F03 high: Contrast and high-contrast support are incomplete |
implement-natural-interactionsview-transitions | issues | high | Rendered CSS inspection found no authored view-transition rules; navigation among the MPA home, category, signup and detail routes uses abrupt document swaps. F04 low: Route changes are abrupt |
implement-natural-interactionsscroll-driven-animations | not-applicable | high | No parallax, scrollytelling, reveal-on-scroll, or other scroll-linked effect was observed on the representative routes. |
implement-natural-interactionsphysical-gestures | pass | high | Browsing uses native document scrolling and real anchors; no custom pointermove gesture layer that fights scrolling was found. |
provide-guided-navigationscroll-state-aware-chrome | issues | high | The long home and category pages retain a large static header/sidebar; CSS inspection found no scroll-state container query or scroll progress treatment. F05 low: Long pages provide no scroll-aware navigation feedback |
provide-guided-navigationanchored-positioning | not-applicable | high | No tooltip, contextual popover, or edge-positioned menu was opened or present on the representative paths. |
provide-guided-navigationdirects-attention | pass | high | Descriptive headings, real links, the persistent category navigation, and clear detail-page title preserve location and direct attention across tested routes. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | The initial desktop screenshot is dominated by a cookie overlay that obscures the content grid before interaction. F06 high: Cookie consent obscures core content on load |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | The signup modal is an ad-hoc div with role=dialog rather than a native dialog, and the cookie overlay appears without dialog/popover semantics in the captured DOM state. F07 medium: Overlays rely on custom dialog construction |
maximize-content-reduce-noisereduced-chrome | issues | high | At 360 px, the fixed 180 px sidebar, desktop header, and age-verification banner consume most of the visible viewport while content is clipped to the right. F08 high: Desktop chrome overwhelms mobile content |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | issues | high | The mobile layout primitive measured scrollWidth 1036 px against a 360 px visual viewport, 676 px overflow; screenshots show content and signup dialog clipped off-screen. F09 critical: The site renders a desktop canvas on mobile |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | high | CSS inspection found no @container rules, and the same sidebar, grid, and modal retain desktop dimensions in the 360 px captures. F10 high: Components do not adapt to their available space |
adapt-to-the-form-factorinput-modality-aware | issues | high | The focus probe found focused inputs/buttons with outline-style none; Lighthouse also failed target-size, and many navigation targets are only 30–32 px tall. F11 high: Keyboard focus and touch targets are inadequate |
support-core-task-successclear-purpose-and-primary-action | pass | high | Home, category, signup and video-detail pages have descriptive titles and prominent primary content/actions; the first content grid and video title make purpose clear despite layout defects. |
support-core-task-successprimary-flow-completion | pass | high | The tested browse flow reached home, category listing, a video detail page, and the clearly explained age-verification start state without a dead end; account creation exposed Google, X, and email routes. |
support-core-task-successclear-system-state-and-recovery | pass | high | A deliberately invalid route rendered a localized “Halaman tidak ditemukan” state with a home recovery link and popular-content alternatives instead of a blank shell. |
be-fast-and-stablegood-core-web-vitals | issues | high | Desktop trace LCP was 1.10 s and CLS 0.0049, but Lighthouse mobile LCP was 3.9 s, outside the good <=2.5 s threshold; TBT was 95 ms. F12 high: Mobile LCP misses the good threshold |
be-fast-and-stablevisual-stability | pass | high | The layout observer measured CLS 0.0049 on desktop and 0 on mobile during the observation windows, both comfortably in the good range. |
be-fast-and-stableefficient-main-thread | pass | high | The trace recorded two long tasks, 133.83 ms longest and 95.23 ms total blocking time; this is bounded and below the 200 ms Lighthouse good TBT range. |
be-fast-and-stableefficient-resource-delivery | issues | high | HAR captured 144 requests and 1.70 MB transferred, including 11 stylesheets, parser-blocking stylesheet candidates and one uncompressed 9.8 KB text response. F13 medium: The critical delivery path is request-heavy |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | The initial page shipped 62 scripts totaling about 1.00 MB; the largest index bundle alone transferred 400 KB and Google sign-in loaded 98 KB before signup intent. F14 high: Startup JavaScript is disproportionately heavy |
be-inclusivenames-roles-labels | issues | high | Lighthouse failed button-name, label-content-name-mismatch, list semantics, and accessibility-tree audits; the email step also exposes duplicate email inputs without programmatic labels. F15 high: Controls and structure have accessibility naming failures |
be-inclusivesufficient-contrast | issues | high | Lighthouse failed color-contrast and link-in-text-block checks on the audited home page. F16 high: Text and links fail contrast requirements |
be-inclusivestructure-and-focus | issues | high | The focus walk shows focused search, login, and other buttons with no outline; signup starts at h3 without a page h1 and Lighthouse reports malformed accessibility structure. F17 high: Focus visibility and heading structure are unreliable |
be-inclusivelegible-text | issues | high | At 360 px, headings, dialog copy and media controls are clipped beyond the viewport, preventing complete reading even though font sizes themselves are reasonable. F18 high: Clipping makes text unreadable on mobile |
be-inclusivezoom-reflow-targets-and-media | issues | high | Lighthouse failed meta-viewport and target-size audits; the 360 px screenshots demonstrate failed reflow with 676 px horizontal overflow. F19 critical: Zoom/reflow and target sizing fail the mobile accessibility bar |
follow-best-practicesno-console-errors | pass | high | Lighthouse best-practices scored 1.0 and reported no console-error failure; the platform probe captured no window errors. |
follow-best-practicessound-document-and-assets | issues | high | The document has HTML doctype and UTF-8, but image inspection found 29 of 36 images without explicit dimensions, 12 oversized, and one missing alt. F20 medium: Image markup is incompletely sized and optimized |
follow-best-practicesbrowser-platform-hygiene | pass | high | Lighthouse best-practices scored 1.0; scripts are mostly deferred, no paste prevention was found, and no permission prompt appeared on load. |
be-discoverabletitle-and-description | pass | high | Home, category, signup, detail and 404 routes expose localized descriptive titles; public content routes include meta descriptions. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | Links use real hrefs and robots permits public content, but the page is not mobile-friendly: 676 px overflow at a 360 px viewport and Lighthouse flags viewport configuration. F21 high: Mobile indexing receives a non-mobile layout |
be-discoverablecanonical-and-indexing-signals | issues | high | Canonical URLs are present, but /sitemap.xml returned 404 and localized routes expose zero hreflang links despite a large language selector. F22 medium: Sitemap and localization indexing signals are incomplete |
be-discoverablestructured-and-shareable-metadata | issues | high | The video detail provides Open Graph tags but no JSON-LD VideoObject; home and category provide neither Open Graph metadata nor structured entity data. F23 medium: Rich entity and share metadata are incomplete |
be-private-and-securesecure-transport-and-headers | issues | high | HTTPS and HSTS are present, but CSP is limited to frame-ancestors; x_csrf_token and settings cookies lack Secure, and settings uses SameSite=None. F24 high: Cookie and CSP defenses are incomplete |
be-private-and-securedata-minimisation-and-third-parties | issues | high | The load contacted 13 third-party origins; 117 requests and 1.59 MB were classified third-party, including collector and advertising/recommendation endpoints before explicit intent. F25 high: Third-party collection dominates initial load |
be-private-and-securein-context-permissions-and-modern-auth | issues | high | No permission prompt fired on load, but signup offers Google, X, email and password only; no WebAuthn/passkey capability was exposed on the tested account flow. F26 medium: Authentication lacks a phishing-resistant passkey option |
be-private-and-securedefensive-browser-policies | issues | high | HSTS and clickjacking controls are present, but X-Content-Type-Options and Referrer-Policy are absent; Permissions-Policy only covers two client-hint features and CSP lacks script restrictions. F27 high: Several browser-enforced defenses are missing |
be-resilientprogressive-enhancement | pass | high | Discoverability comparison found 86% rendered-word coverage in raw HTML, with title, h1 and description present and no empty JS shell. |
be-resilientresilient-runtime-behaviour | issues | high | The signup dialog and content grid are positioned on a 1036 px desktop canvas and are visibly cut off at the 360 px viewport edge. F28 high: Critical modal UI is cut off at narrow widths |
be-resilientoffline-and-installable | pass | high | The page links a manifest with icons/start_url, has an active service worker, and exposes an xh-offline-cache cache. |
be-resilientnetwork-and-http-failure-states | pass | high | A missing route renders a localized recovery explanation, a home link, and useful alternative content rather than a blank or infinite loading state. |
be-internationalisedlang-dir-and-logical-properties | pass | high | The Indonesian experience declares html lang=id and presents a broad localized-language selector; tested text direction is correctly LTR for Indonesian. |
be-internationalisedlocale-aware-data | not-applicable | high | No date, currency, duration formatting, or locale-sensitive numeric input was present in the representative public states. |
be-internationalisedtime-zone-correctness | not-applicable | high | No scheduled event, stored timestamp, recurring interval, or cross-time-zone workflow was present. |
be-trustworthyno-dark-patterns | issues | high | The initial consent overlay blocks content, while the persistent banner asks Indonesian users to verify age “according to UK law”; this jurisdiction/context mismatch can mislead users about why verification is required. F29 medium: Consent and age-verification context is confusing |
be-trustworthyhumane-error-handling | issues | high | The signup email state contains duplicate email inputs, no associated email label, required=false, and a placeholder-only required cue; errors cannot be announced reliably from this markup. F30 high: Signup field semantics undermine humane validation |
be-trustworthytrustworthy-input-assistance | issues | high | The signup email input explicitly uses autocomplete=off; the password uses new-password correctly, but the email field suppresses standard autofill assistance. F31 medium: Signup disables email autofill |
be-trustworthysafe-commercial-and-account-flows | issues | high | The signup disclosure states personal data will be public and shared for partner services, yet the flow offers password/social login without a passkey and the mobile dialog is clipped, making commitments hard to review. F32 high: Account commitments are difficult to review safely on mobile |
be-sustainableoptimised-assets | issues | high | Image audit found 12 oversized images, 16 legacy-format results, 29 missing dimensions and three without responsive srcset. F33 medium: Image delivery wastes bytes and layout metadata |
be-sustainableno-wasteful-work | issues | high | The home load performs 144 requests and starts recommendation, advertising, identity and analytics work before related user intent; eight animations remain running. F34 high: Non-core work starts eagerly |
be-sustainablethird-party-and-media-budget | issues | high | Third parties account for 117 requests and 1.59 MB of the 1.70 MB transfer, while Google identity is loaded on the browsing homepage before signup. F35 high: Third-party cost is disproportionate to first-view value |
be-agent-readystructured-agent-capabilities | not-applicable | high | No WebMCP or agent-facing tool registration is exposed. |
be-agent-readyon-device-inference | not-applicable | high | No on-device language-model or summarizer use case is present in the tested browsing and account states. |
be-memory-efficientno-leak-under-repeated-interaction | issues | medium | After ten bottom/top scroll cycles, same-session metrics grew from 23.29 MB to 25.00 MB, DOM nodes from 1811 to 1936 and active animations from 8 to 12; separate heap summaries also grew by 1.05 MB and 19,427 nodes. F36 medium: Repeated scrolling retains additional page state |
be-memory-efficientbounded-footprint | issues | medium | The baseline V8 heap summary contains 683,189 heap nodes, 3.20 million edges and 36.6 MB self size for a listing page before media playback. F37 medium: Baseline heap footprint is heavy for the initial listing |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | medium | Neither heap summary listed Detached* constructors among the largest retained groups; the observed growth is reported separately, but direct detached-DOM evidence was not found. |
Provenance
Canonical report: results/atomic/reports/0761-id_xhamster_com.json
Report SHA-256: 97bc73015b3985ca8f808854a41a15028776e67177403c53ed6c86008e4fcb34
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/id_xhamster_com/2026-07-22T21-39-25-383Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/id_xhamster_com/2026-07-22T21-39-25-383Z
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.