Manifest position 396 · CrUX rank bucket 1000
https://www.bbc.co.uk
Coverage complete
Coverage-complete representative audit of seven public paths. Not covered: authenticated account settings, payment/subscription flows, playback after media start, personalized signed-in states, and every BBC product subdomain; these require credentials or represent separate product templates.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | The prefers-color-scheme: dark screenshot is visually identical to the light capture; the probe reports color-scheme "normal" and body background rgb(248, 248, 248). BBC-001 medium: The public homepage remains light when the system requests a dark colour scheme. |
respect-user-preferencesrespects-reduced-motion | issues | high | The emulated reduced-motion probe found sixteen running animations named animation-w6tfot, each with an 8,000 ms duration. BBC-002 medium: Long-running animations continue under prefers-reduced-motion: reduce. |
respect-user-preferencesrespects-contrast | pass | medium | Forced-colors/high-contrast screenshot keeps navigation, hero text, consent controls and focus boundaries visible. |
implement-natural-interactionsview-transitions | issues | medium | The platform probe found zero authored view-transition rules across accessible stylesheets on an interaction-rich homepage. BBC-003 low: State and route changes do not expose View Transition styling. |
implement-natural-interactionsscroll-driven-animations | not-applicable | high | No parallax, scrollytelling, entry reveal or other scroll-linked motion was observed on the representative templates, so there is no scroll-linked implementation to assess. |
implement-natural-interactionsphysical-gestures | pass | medium | Homepage media carousel exposes large native controls and a horizontal content sequence without evidence of custom pointer-only handling. |
provide-guided-navigationscroll-state-aware-chrome | pass | medium | Long-page screenshots show compact global chrome and no sticky element obscuring content; no JS-driven scroll-state malfunction was observed. |
provide-guided-navigationanchored-positioning | not-applicable | high | No tooltip or detached floating-menu use case was observed on the representative first-visit paths; fixed consent and modal surfaces are assessed under interruption and semantics. |
provide-guided-navigationdirects-attention | pass | medium | Global nav uses descriptive section labels, skip navigation and strong visible focus rings; search and article headings clearly establish destination context. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | Mobile captures show the fixed cookie banner occupying roughly the lower 40% of the viewport across templates; the article capture also shows a centered sign-in promotion layered above both article and cookie banner. BBC-004 high: First-visit overlays substantially obscure primary content on mobile. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | The overlay DOM probe found three DIV elements with role=dialog and aria-modal=true; no native dialog or popover elements were found on the representative news template. BBC-005 medium: Modal experiences are implemented as generic divs with ARIA rather than native dialog primitives. |
maximize-content-reduce-noisereduced-chrome | pass | medium | Despite dense editorial content, primary viewports prioritize headline, imagery and results; chrome is compact once the separately-reported first-visit overlays are excluded. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | pass | medium | At 360x800, layout metrics report scrollWidth 360, clientWidth 360 and horizontalOverflowPx 0 with viewport meta present. |
adapt-to-the-form-factorcomponent-level-responsiveness | pass | medium | The stylesheet probe found an authored container rule and mobile captures show distinct reflowed global navigation and cards. |
adapt-to-the-form-factorinput-modality-aware | pass | medium | Focus probe shows 2–3 px outlines on primary links and controls and main nav targets are at least 44 px high; mobile controls remain directly operable. |
support-core-task-successclear-purpose-and-primary-action | pass | medium | Homepage, News, Weather, Search and article captures each expose a descriptive H1/section title and an obvious content or search task. |
support-core-task-successprimary-flow-completion | pass | medium | The climate query loaded real topic/results content, article navigation reached a complete story, and Weather exposes location search without an account requirement. |
support-core-task-successclear-system-state-and-recovery | pass | medium | The invalid route produced a designed BBC error page with navigation rather than a blank shell; search results visibly echo the query. |
be-fast-and-stablegood-core-web-vitals | issues | high | Lighthouse measured LCP 3.7 s, TBT 1,350 ms, max potential FID 740 ms, and a performance score of 0.64; the trace independently recorded 309 ms TBT and a 189 ms longest task. BBC-006 high: Mobile lab loading and main-thread responsiveness miss the good performance range. |
be-fast-and-stablevisual-stability | pass | medium | Mobile layout observer recorded CLS 0 with no layout-shift entries; Lighthouse independently measured CLS 0. |
be-fast-and-stableefficient-main-thread | issues | high | Trace evidence contains three long tasks (189, 182, and 88 ms); Lighthouse reports 1,350 ms total blocking time and 14.3 s time to interactive. BBC-007 medium: Large script execution tasks block the main thread. |
be-fast-and-stableefficient-resource-delivery | issues | high | HAR recorded 97 requests and 1.40 MB transferred, including 67 scripts (698 KB); several high-priority parser-initiated bundles were listed, while DOM confirmation shows the core bundles are async modules, so the issue is breadth and cost rather than a claim that those modules block parsing. BBC-008 medium: The homepage has a broad startup dependency and script payload. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | HAR recorded 97 requests and 1.40 MB transferred, including 67 scripts (698 KB); several high-priority parser-initiated bundles were listed, while DOM confirmation shows the core bundles are async modules, so the issue is breadth and cost rather than a claim that those modules block parsing. BBC-008 medium: The homepage has a broad startup dependency and script payload. |
be-inclusivenames-roles-labels | pass | medium | Lighthouse accessibility scored 1.0; the search input has a programmatic label and meaningful editorial images expose alt text in the DOM/image audit. |
be-inclusivesufficient-contrast | pass | medium | Lighthouse accessibility scored 1.0 and forced-colors capture preserves legible text and controls across high-contrast hero and consent surfaces. |
be-inclusivestructure-and-focus | pass | medium | Pages expose one meaningful H1, skip navigation and ordered headings; active focus probe reports strong outlines on global nav and content controls. |
be-inclusivelegible-text | pass | medium | Desktop and mobile captures show readable Reith text, strong hierarchy and no clipping outside the separately reported overlays. |
be-inclusivezoom-reflow-targets-and-media | pass | medium | Viewport allows scaling, narrow layouts reflow without overflow, and primary controls sampled by the focus probe meet or exceed 44 px in at least one dimension. |
follow-best-practicesno-console-errors | pass | medium | Lighthouse did not fail its errors-in-console audit and completed without run warnings. |
follow-best-practicessound-document-and-assets | pass | medium | DOM probe reports HTML doctype, UTF-8 charset and correctly configured viewport; Lighthouse best-practices found no image aspect-ratio failure. |
follow-best-practicesbrowser-platform-hygiene | issues | high | Lighthouse best-practices scored 0.77 and the inspector-issues audit failed, despite the document otherwise using a valid doctype and charset. BBC-009 low: Chrome reports browser inspector issues on load. |
be-discoverabletitle-and-description | pass | medium | Homepage, News, article, Weather and Search probes expose descriptive titles and meta descriptions. |
be-discoverablecrawlable-and-mobile-friendly | pass | medium | Real href links, viewport metadata and descriptive nav/content labels are present; robots permits normal public indexing outside explicitly disallowed search routes. |
be-discoverablecanonical-and-indexing-signals | pass | medium | Homepage, News, article and Weather expose canonical URLs; robots lists multiple sitemaps and public routes returned successful content. Search correctly declares noindex. |
be-discoverablestructured-and-shareable-metadata | pass | medium | News and article probes each find JSON-LD plus Open Graph metadata that aligns with visible titles; homepage also provides share metadata via server HTML. |
be-private-and-securesecure-transport-and-headers | pass | medium | Page is HTTPS with CSP, HSTS preload, nosniff and secure cookies; secrets scan found no exposed credentials. The nonce/strict-dynamic CSP mitigates the reported unsafe-inline compatibility token. |
be-private-and-securedata-minimisation-and-third-parties | issues | high | The tracker capture observed 16 non-page origins and an active scorecardresearch tracker; the HAR attributes 95 of 97 requests and 1.28 MB to origins other than www.bbc.co.uk (including BBC-owned CDNs), and cookies include long-lived Chartbeat/analytics identifiers. BBC-010 high: Tracking and analytics requests run on a first visit while the banner says additional cookies are off by default. |
be-private-and-securein-context-permissions-and-modern-auth | issues | high | The live sign-in probe found a username form with correct autocomplete and no passkey or PublicKeyCredential affordance; the page text offers Continue with Google as the alternative. BBC-011 medium: The sign-in entry offers username/password or Google but no phishing-resistant passkey path. |
be-private-and-securedefensive-browser-policies | pass | medium | Headers include frame-ancestors none/X-Frame-Options DENY, strict referrer policy and a restrictive Permissions-Policy alongside HSTS. |
be-resilientprogressive-enhancement | pass | medium | Discoverability comparison reports 99% raw-HTML coverage on home and 97% on the article, with title, H1 and description available without JavaScript. |
be-resilientresilient-runtime-behaviour | pass | medium | Representative content, search and weather templates rendered complete mobile states; modal controls expose explicit close actions and no viewport-edge clipping was observed. |
be-resilientoffline-and-installable | not-applicable | high | BBC is primarily a live content and media service; installability exists via a manifest/service-worker signal, but a meaningful full offline flow is not expected for live weather, news and streaming content. |
be-resilientnetwork-and-http-failure-states | pass | medium | An invalid route renders a branded, navigable error state rather than a blank shell, and HAR recorded no HTTP errors on the primary homepage load. |
be-internationalisedlang-dir-and-logical-properties | pass | medium | Representative pages declare en-GB or en and maintain coherent reading order and mobile reflow; no bidi content was present that required explicit dir. |
be-internationalisedlocale-aware-data | pass | medium | Weather and editorial surfaces render UK-localized language and human-readable dates/conditions consistently with their declared English locale. |
be-internationalisedtime-zone-correctness | not-applicable | high | No scheduled event creation or time-zone-sensitive transactional flow was present in the selected public content, search, weather or sign-in paths. |
be-trustworthyno-dark-patterns | issues | high | The mobile article capture shows “Get the news, your way” as a centered modal over dimmed article content, with the already-large cookie decision surface still behind it. BBC-012 medium: An unsolicited personalization sign-in promotion interrupts article reading before the user asks to personalize. |
be-trustworthyhumane-error-handling | not-applicable | high | No user-authored validation flow could be completed without account credentials; public search accepts an empty/query string and the representative pages expose no required-data form. |
be-trustworthytrustworthy-input-assistance | pass | medium | Sign-in username uses autocomplete=username and an explicit label; search is labelled “Input your search term”. |
be-trustworthysafe-commercial-and-account-flows | not-applicable | high | No checkout, subscription purchase, cancellation or sensitive authenticated account-management flow is part of the public BBC paths audited. |
be-sustainableoptimised-assets | issues | high | The image audit found 6 images over twice their displayed dimensions and 11 below-fold images without lazy loading. The HAR confirms modern WebP delivery for sampled large images, so format is not the concern. BBC-013 medium: Several images are oversized or eagerly loaded below the fold. |
be-sustainableno-wasteful-work | issues | high | HAR recorded 67 scripts and multiple analytics origins; trace and layout evidence recorded repeated long tasks after content appeared. BBC-014 medium: The initial experience performs disproportionate background script and measurement work. |
be-sustainablethird-party-and-media-budget | issues | high | The tracker capture observed 16 non-page origins and an active scorecardresearch tracker; the HAR attributes 95 of 97 requests and 1.28 MB to origins other than www.bbc.co.uk (including BBC-owned CDNs), and cookies include long-lived Chartbeat/analytics identifiers. BBC-010 high: Tracking and analytics requests run on a first visit while the banner says additional cookies are off by default. BBC-014 medium: The initial experience performs disproportionate background script and measurement work. |
be-agent-readystructured-agent-capabilities | not-applicable | high | BBC robots.txt explicitly disallows agentic AI, AI-powered search, RAG and major AI crawlers; structured agent capabilities are intentionally outside the publisher’s declared policy. |
be-agent-readyon-device-inference | not-applicable | high | BBC robots policy and the observed public surfaces show no intended AI-assistance capability; on-device inference is an emerging optional opportunity, not required for this publishing service. |
be-memory-efficientno-leak-under-repeated-interaction | issues | low | After ten menu open/escape cycles, the heap summary grew from 689,702 nodes / 38.9 MB self-size to 887,218 nodes / 52.2 MB. Separate page processes add noise, so this is a low-confidence leak signal, not a proven retained path. BBC-015 medium: Repeated global-menu interaction correlates with substantial retained-heap growth and needs leak-trace confirmation. |
be-memory-efficientbounded-footprint | pass | medium | Baseline heap is 38.9 MB self-size for a very large media homepage; substantial but proportionate to the 100-image, component-rich page, with the interaction growth separately flagged. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | medium | Heap summaries do not surface Detached* among the top constructors; growth remains a low-confidence general signal handled by BBC-015 rather than proof of detached DOM/listener accumulation. |
Provenance
Canonical report: results/atomic/reports/0396-www_bbc_co_uk.json
Report SHA-256: dc482fd33886112fee81dac025b1a7b8a89586a8898f25242ef527019f9cfc41
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_bbc_co_uk/2026-07-20T11-57-55-367Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_bbc_co_uk/2026-07-20T11-57-55-367Z
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.