Manifest position 403 · CrUX rank bucket 1000
https://pt.pornhub.com
Coverage complete
Coverage-complete audit of the age gate, homepage/content state, listing/category deep links, video detail, login dialog, and error route.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | DOM/CSS inspection found no color-scheme declaration or prefers-color-scheme rules; the emulated preference capture is visually identical to the default. F2 low: The site uses a fixed dark palette rather than declaring support for the user’s color-scheme preference. |
respect-user-preferencesrespects-reduced-motion | pass | high | Preference screenshot and animation probe found zero active document animations in the entry/home state. |
respect-user-preferencesrespects-contrast | pass | high | Increased-contrast capture retained clear white/orange text and control boundaries on black surfaces; Lighthouse contrast passed. |
implement-natural-interactionsview-transitions | issues | high | The CSS/DOM feature probe found no authored view-transition names or transition rules around modal and route changes. F3 low: Route and state changes do not use an intentional View Transition treatment. |
implement-natural-interactionsscroll-driven-animations | pass | high | DOM/CSS inspection found no custom scroll animation or main-thread scroll animation to degrade interaction. |
implement-natural-interactionsphysical-gestures | pass | high | Sampled content uses native page scrolling and conventional links/buttons; no custom pointermove gesture interception was found. |
provide-guided-navigationscroll-state-aware-chrome | pass | high | The sampled listing uses persistent top navigation and native scrolling without obscuring the current content during the tested state. |
provide-guided-navigationanchored-positioning | not-applicable | high | No tooltip, contextual menu, or edge-sensitive anchored overlay was present on the sampled public surfaces. |
provide-guided-navigationdirects-attention | pass | high | The age gate gives the required decision a prominent heading and two explicit, high-contrast actions; the content view uses labelled primary navigation. |
maximize-content-reduce-noiseno-intrusive-interruptions | pass | high | The blocking age verification is legally/core-purpose necessary and provides explicit enter/exit choices; cookie controls include essential-only selection. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | DOM inspection shows custom age/cookie modal wrappers; no native dialog element was used for these blocking surfaces. F4 medium: Mandatory overlays are implemented as large custom modal structures instead of native dialog primitives. |
maximize-content-reduce-noisereduced-chrome | issues | high | The post-gate HAR recorded 101 third-party requests and 2.30MB of third-party transfer, while the content probe found 156 visible interactive elements. F5 medium: Advertising and third-party chrome consume a disproportionate share of the browsing surface and payload. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | issues | high | The 360x800 screenshot clips the logo, heading, notice link, body copy, and second decision button beyond the right viewport edge. F1 high: The mandatory age-verification entry does not reflow at a 360px viewport. |
adapt-to-the-form-factorcomponent-level-responsiveness | issues | high | The mobile capture is a clipped 780px-style surface at 360px, and the CSS probe found no container queries. F6 high: Components rely on page-level fixed sizing rather than adapting within narrow containers. |
adapt-to-the-form-factorinput-modality-aware | issues | high | The focus probe reported outline:none for the first cookie links and primary nav links; multiple targets were only 15-16px high. F7 high: Many keyboard focus states are absent and several interactive text targets are too short. |
support-core-task-successclear-purpose-and-primary-action | pass | high | The first viewport states “Este é um site adulto” and exposes explicit adult/under-18 actions; post-gate navigation labels the primary content sections. |
support-core-task-successprimary-flow-completion | issues | high | Probes starting at /video and /categories ended at https://pt.pornhub.com/ after confirming age, rather than restoring the requested route. F8 high: First-visit age confirmation loses listing and category deep links. |
support-core-task-successclear-system-state-and-recovery | issues | high | The unknown-route probe returned homepage content and navigation with no 404 heading, explanation, or targeted recovery action. F9 medium: Unknown routes silently recover to homepage content without identifying the error. |
be-fast-and-stablegood-core-web-vitals | issues | high | The DevTools trace measured FCP at 2.86s and LCP at 6.17s; Lighthouse performance scored 0.52. F10 high: Largest Contentful Paint is far outside the good threshold. |
be-fast-and-stablevisual-stability | pass | high | The 360px layout observer measured CLS 0 with no recorded layout shifts. |
be-fast-and-stableefficient-main-thread | pass | high | The DevTools trace recorded zero long tasks and 0ms total blocking time in the captured load window. |
be-fast-and-stableefficient-resource-delivery | issues | high | HAR recorded 172 requests and 5.79MB transferred, including seven parser-blocking stylesheets plus synchronous parser-inserted script candidates. F11 high: Resource delivery is heavy and includes a broad render-blocking dependency set. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | Lighthouse estimated 288KiB unused JavaScript and 74KiB unused CSS; HAR recorded 40 scripts and 11 stylesheets. F12 medium: Substantial JavaScript and CSS ship unused on the entry path. |
be-inclusivenames-roles-labels | issues | high | axe-core found 30 serious frame-title violations after age confirmation. F13 high: Advertising iframes lack accessible names. |
be-inclusivesufficient-contrast | pass | high | Lighthouse color-contrast passed and preference screenshots preserve high-contrast text/control boundaries. |
be-inclusivestructure-and-focus | issues | high | axe found 116 nodes outside landmarks; the homepage has no H1, and the focus probe found outline:none on primary nav links. F14 high: The document lacks robust landmarks and visible focus across the main navigation. |
be-inclusivelegible-text | pass | high | Entry copy is large, plain, and high contrast at desktop; body and heading text remain readable despite the separate narrow-layout clipping issue. |
be-inclusivezoom-reflow-targets-and-media | issues | high | The detail probe found a controlled video element with zero <track> caption/subtitle resources. F30 high: The sampled video has no caption track. |
follow-best-practicesno-console-errors | issues | high | Lighthouse errors-in-console failed and reported one logged browser error. F15 medium: The page logs browser console errors. |
follow-best-practicessound-document-and-assets | pass | high | DOM and Lighthouse confirmed HTML doctype, charset, correct image aspect ratios, and appropriately resolved rendered images. |
follow-best-practicesbrowser-platform-hygiene | issues | high | Lighthouse reported two deprecation warnings, one Inspector issue, and four back/forward cache failure reasons. F16 medium: Deprecated APIs, DevTools issues, and bfcache blockers remain. |
be-discoverabletitle-and-description | issues | high | The homepage and sampled detail both reported the generic title “Pornhub”; the detail lacked a page-specific meta description. F17 high: Page titles and descriptions do not identify the current content. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | Lighthouse found 18 non-crawlable links and 4,071 robots.txt errors; direct /robots.txt redirected to the homepage. Raw/rendered content overlap was only 28%. F18 high: Crawler-facing links and robots signals are broken. |
be-discoverablecanonical-and-indexing-signals | issues | high | The detail probe declared the homepage canonical and noindex,nofollow; /sitemap.xml returned 404. F19 high: Canonical and indexing signals collapse distinct content to the homepage. |
be-discoverablestructured-and-shareable-metadata | issues | high | The sampled detail had no JSON-LD and no Open Graph tags despite having a visible H1 and playable media. F20 medium: Video details lack structured and social metadata. |
be-private-and-securesecure-transport-and-headers | issues | high | Headers lacked CSP, nosniff, Referrer-Policy, and Permissions-Policy. Cookie audit found rp without Secure and all seven cookies using SameSite=None. F21 high: The security policy baseline is incomplete and one cookie is insecure. |
be-private-and-securedata-minimisation-and-third-parties | issues | high | Tracker probe found 11 third-party origins including GTM and DoubleClick; HAR attributed 101 requests and 2.30MB to third parties. F22 high: The initial experience sends a large amount of data to advertising and analytics origins. |
be-private-and-securein-context-permissions-and-modern-auth | issues | high | The login probe found email/current-password autofill and social buttons, but no WebAuthn/passkey capability. F23 low: The public login flow exposes password and social login but no passkey option. |
be-private-and-securedefensive-browser-policies | issues | high | Headers lacked CSP, nosniff, Referrer-Policy, and Permissions-Policy. Cookie audit found rp without Secure and all seven cookies using SameSite=None. F21 high: The security policy baseline is incomplete and one cookie is insecure. |
be-resilientprogressive-enhancement | issues | high | Discoverability comparison found only 28% of rendered content words in raw HTML; the crawler and browser views differ materially. F24 medium: Core post-age content depends heavily on JavaScript. |
be-resilientresilient-runtime-behaviour | issues | high | Probes starting at /video and /categories ended at https://pt.pornhub.com/ after confirming age, rather than restoring the requested route. F8 high: First-visit age confirmation loses listing and category deep links. |
be-resilientoffline-and-installable | not-applicable | high | Offline installation is not a reasonable expectation for this streaming/ad-supported public site; no manifest or service worker registration was present. |
be-resilientnetwork-and-http-failure-states | issues | high | A nonexistent route produced homepage content instead of a localized failure state or retry/recovery message. F25 medium: HTTP/network failure recovery is not represented clearly. |
be-internationalisedlang-dir-and-logical-properties | issues | high | The document correctly uses lang=pt, but has no dir attribute and the source probe found no logical margin/padding/inset properties. F26 low: The localized layout does not show bidirectional-ready CSS practices. |
be-internationalisedlocale-aware-data | not-applicable | high | The sampled public pages contained durations and count abbreviations but no dates, currencies, calendars, or locale-sensitive form data requiring Intl formatting. |
be-internationalisedtime-zone-correctness | not-applicable | high | No scheduled event or time-zone-dependent data appeared on the sampled public routes. |
be-trustworthyno-dark-patterns | pass | high | The age gate offers explicit enter and exit actions, and cookie consent offers both all and essential-only options without confirmshaming. |
be-trustworthyhumane-error-handling | not-applicable | high | No user-editable validation flow was present in the sampled public journey; search is optional and the login flow was inspected without submitting credentials. |
be-trustworthytrustworthy-input-assistance | not-applicable | high | No address, payment, or signup form was available; the sampled login correctly used email and current-password autocomplete. |
be-trustworthysafe-commercial-and-account-flows | not-applicable | high | No checkout or subscription flow was entered; the public login dialog clearly disclosed regional registration unavailability and account terms. |
be-sustainableoptimised-assets | issues | high | Image probe found 33 images without srcset, 25 legacy-format images, three without dimensions, and two below-fold images not lazy loaded. F27 medium: Image delivery lacks responsive sources and modern formats. |
be-sustainableno-wasteful-work | pass | high | The trace found no long tasks or continuing main-thread blocking in the captured post-load window. |
be-sustainablethird-party-and-media-budget | issues | high | HAR transferred 5.79MB, including 2.30MB third-party data and 1.53MB images; 101 of 172 requests were third party. F28 high: The third-party and media budget is excessive for the entry journey. |
be-agent-readystructured-agent-capabilities | not-applicable | high | No developer-declared agent-facing intent exists for this age-gated media site, so WebMCP capabilities are contextual and not required. |
be-agent-readyon-device-inference | not-applicable | high | No user task on the sampled age-gated media surfaces calls for on-device language-model or summarization features. |
be-memory-efficientno-leak-under-repeated-interaction | pass | high | After ten language-control toggles, heap self size decreased by 85,859 bytes; node count rose only 0.44%, with no monotonic retained-size signal. |
be-memory-efficientbounded-footprint | pass | high | Baseline heap summary was 38.6MB self size and 587,689 nodes for a script/ad-heavy media homepage; large but bounded in the sampled state. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | high | The repeated-interaction heap remained size-stable (38.58MB to 38.49MB); no growing retained-size pattern supported detached DOM or unbounded listener accumulation. |
Provenance
Canonical report: results/atomic/reports/0403-pt_pornhub_com.json
Report SHA-256: 259bdb9ce3749a3e3f26939d4cf8468332ff602e055767a250572533df9fb612
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/pt_pornhub_com/2026-07-20T13-13-20-846Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/pt_pornhub_com/2026-07-20T13-13-20-846Z
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.