Manifest position 948 · CrUX rank bucket 1000
https://www.ikea.com
Coverage complete
Representative coverage included global editorial and UK commerce templates. Checkout, payment submission, account creation, and every country variant were excluded because they require commitments, credentials, or duplicate localized 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 remains white, the computed body surface is rgb(255, 254, 251), and the CSS probe found no prefers-color-scheme, light-dark(), or color-scheme support. F-001 medium: The global and commerce surfaces remain light when the user requests a dark colour scheme. |
respect-user-preferencesrespects-reduced-motion | pass | high | Emulated reduced-motion probes found 23 relevant CSS rules on the homepage; article autoplay was disabled, all videos were paused, and no animations ran. |
respect-user-preferencesrespects-contrast | pass | high | Forced/high-contrast CSS was present and Lighthouse found no color-contrast failures on either audited template. |
implement-natural-interactionsview-transitions | issues | high | CSS probes on the homepage, article, listing, and product found no view-transition rules or names. F-004 low: Page and route changes do not use View Transitions, so template changes are abrupt. |
implement-natural-interactionsscroll-driven-animations | pass | high | The global templates use animation-timeline/scroll-timeline CSS; no main-thread long tasks were observed during load. |
implement-natural-interactionsphysical-gestures | pass | high | CSS probes found scroll-snap and overscroll behavior on editorial and commerce surfaces, with reduced-motion behavior verified. |
provide-guided-navigationscroll-state-aware-chrome | pass | high | The fixed responsive header and scroll-timeline styles adapt navigation chrome to long pages. |
provide-guided-navigationanchored-positioning | issues | high | The listing accessibility probe found multiple role=tooltip elements while CSS inspection found no anchor-name, position-anchor, or position-try usage. F-005 low: The listing exposes tooltip overlays but does not use CSS anchor positioning or fallback positions. |
provide-guided-navigationdirects-attention | pass | high | Visible breadcrumbs, category carousels, directional controls, headings, and clear search result counts consistently orient the user. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | Initial desktop, listing, product, and 360x800 screenshots show the consent panel covering the main content. On mobile only the header and consent text/actions are visible. F-002 high: Cookie consent obscures the primary content on every first visit, consuming almost the entire mobile viewport. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | DOM probes across global and UK pages found a visible DIV role=dialog with no aria-modal and no native dialog element. F-003 medium: The consent modal is an ad-hoc div with role=dialog rather than the platform dialog primitive. |
maximize-content-reduce-noisereduced-chrome | pass | high | Once consent is set aside, first viewports prioritize imagery, product information, and primary actions with restrained borders. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | pass | high | At 360x800 the homepage and listing both reported scrollWidth equal to clientWidth (360px), viewport meta present, and zero horizontal overflow. |
adapt-to-the-form-factorcomponent-level-responsiveness | pass | high | CSS probes found container queries on article, listing, and product templates, and mobile screenshots show genuine component reflow. |
adapt-to-the-form-factorinput-modality-aware | issues | high | Lighthouse failed target-size on the global homepage. DOM probes found a 32x28 menu-adjacent button and many 40x40 commerce controls, below a 44x44 target. F-006 medium: Several interactive targets are smaller than the recommended touch target size. |
support-core-task-successclear-purpose-and-primary-action | pass | high | Homepage, listing, story, search, and product screenshots expose descriptive headings and clear next actions such as Go shopping, search, and Add to shopping bag. |
support-core-task-successprimary-flow-completion | pass | high | A direct search for chair returned 217 products with filters, prices and links; a representative product page exposed price, availability steps, quantity, and add-to-bag action. |
support-core-task-successclear-system-state-and-recovery | pass | high | Search reports result counts and the invalid-route test showed a clear “Page cannot be found” state with search and homepage recovery paths. |
be-fast-and-stablegood-core-web-vitals | issues | high | Mobile Lighthouse measured LCP at 7.0s on the homepage and 6.2s on the product page. A separate desktop trace measured 1.47s and 2.84s respectively, showing the mobile/throttled path is the risk. F-008 high: Largest Contentful Paint is slow on both the global homepage and product detail template. |
be-fast-and-stablevisual-stability | pass | high | Layout observers reported CLS 0 on homepage and listing; Lighthouse measured CLS 0 and 0.002 on homepage/product. |
be-fast-and-stableefficient-main-thread | pass | high | Both traces reported zero long tasks and zero total blocking time; Lighthouse also measured TBT 0ms. |
be-fast-and-stableefficient-resource-delivery | issues | high | The product HAR recorded 246 requests, including 134 scripts and 57 stylesheets, with 1.86MB transferred. Many parser-inserted, VeryHigh-priority stylesheets appear in the critical path; mobile LCP was 6.2s. F-009 high: The commerce product template has a highly fragmented critical resource graph. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | Lighthouse estimated 337KiB unused JavaScript and 135KiB unused CSS on the product page; individual bundles were 72% to 99% unused in the measured load. F-010 medium: The product template ships substantial unused JavaScript and CSS. |
be-inclusivenames-roles-labels | issues | high | Lighthouse found visible-label/accessibility-name mismatches on both global and product pages and two malformed list structures on the homepage; the global probe also identified an unnamed visible button. F-007 medium: Accessible names and list semantics are inconsistent on representative pages. |
be-inclusivesufficient-contrast | pass | high | Lighthouse found zero contrast failures on both tested templates and high-contrast emulation remained legible. |
be-inclusivestructure-and-focus | issues | high | Lighthouse found visible-label/accessibility-name mismatches on both global and product pages and two malformed list structures on the homepage; the global probe also identified an unnamed visible button. F-007 medium: Accessible names and list semantics are inconsistent on representative pages. |
be-inclusivelegible-text | pass | high | Desktop and mobile screenshots show readable type, stable wrapping, strong hierarchy, and no clipping or horizontal overflow. |
be-inclusivezoom-reflow-targets-and-media | issues | high | Lighthouse failed target-size on the global homepage. DOM probes found a 32x28 menu-adjacent button and many 40x40 commerce controls, below a 44x44 target. F-006 medium: Several interactive targets are smaller than the recommended touch target size. |
follow-best-practicesno-console-errors | issues | high | Lighthouse captured console.error: “[expt-store] exptSDK.init did not return a client” from zip-store-DdpxZMer.js. F-011 low: The product page logs an uncaught experiment-store initialization error. |
follow-best-practicessound-document-and-assets | issues | high | The images primitive found 15 of 26 product-page images without width/height attributes, including the primary product gallery images. F-012 medium: Many product images omit intrinsic width and height attributes. |
follow-best-practicesbrowser-platform-hygiene | issues | high | Lighthouse reported six source-map failures, including ratings/reviews and shopping-cart agent bundles. F-013 low: Large first-party scripts have missing or broken source maps. |
be-discoverabletitle-and-description | pass | high | Homepage, article, listing, and product probes all found unique descriptive titles and meta descriptions. |
be-discoverablecrawlable-and-mobile-friendly | pass | high | All inspected links had hrefs, viewport metadata was present, robots permits public pages, and Lighthouse SEO was 1.0 on the homepage. |
be-discoverablecanonical-and-indexing-signals | pass | high | Representative pages returned 200, declared index/follow and canonical URLs; the global page exposes extensive hreflang and robots points to a sitemap index. |
be-discoverablestructured-and-shareable-metadata | issues | high | The ASPUDDEN article has useful title, description, canonical and Open Graph image, but no JSON-LD and og:type is website rather than article. F-017 medium: Editorial articles lack article-specific structured data and identify themselves as generic websites in Open Graph. |
be-private-and-securesecure-transport-and-headers | issues | high | Headers include strong CSP, HSTS, and frame-ancestors, but omit X-Content-Type-Options, Referrer-Policy, and Permissions-Policy. The cookies primitive found OptanonConsent set without Secure. F-014 medium: Several browser-enforced security and privacy policies are absent, and one consent cookie is not Secure. |
be-private-and-securedata-minimisation-and-third-parties | pass | high | Before optional consent, the tracker probe found only two consent-management origins and no known tracker match; third-party transfer was 157KB on the homepage. |
be-private-and-securein-context-permissions-and-modern-auth | pass | high | Geolocation and notifications remained in prompt state rather than being requested on load. Login uses OAuth2 PKCE and defaults to an emailed one-time code rather than password-only authentication. |
be-private-and-securedefensive-browser-policies | issues | high | Headers include strong CSP, HSTS, and frame-ancestors, but omit X-Content-Type-Options, Referrer-Policy, and Permissions-Policy. The cookies primitive found OptanonConsent set without Secure. F-014 medium: Several browser-enforced security and privacy policies are absent, and one consent cookie is not Secure. |
be-resilientprogressive-enhancement | pass | high | Raw HTML retained 75% of homepage and 82% of product content; neither was a JS shell, with title and descriptions available without JS. |
be-resilientresilient-runtime-behaviour | pass | high | Long listing/product templates rendered without horizontal overflow or cut-off core controls; CSS includes container queries, scroll snap, overscroll and logical properties. |
be-resilientoffline-and-installable | issues | high | Homepage, listing, and product probes found no web app manifest and no controlling service worker. The commerce journey depends on networked fragments. F-015 medium: The app-like commerce experience is neither installable nor equipped with an offline fallback. |
be-resilientnetwork-and-http-failure-states | pass | high | The tested invalid route renders an explicit, actionable recovery page instead of a blank shell or infinite spinner. |
be-internationalisedlang-dir-and-logical-properties | pass | high | Pages declare en/en-GB and ltr correctly, global hreflang variants are extensive, and probes found logical CSS properties. |
be-internationalisedlocale-aware-data | pass | high | The UK product and search templates render locale-appropriate pounds, decimal prices and en-GB language while global hreflang routes expose localized alternatives. |
be-internationalisedtime-zone-correctness | not-applicable | high | The representative pages contain no event scheduling or time-zone-sensitive values to evaluate. |
be-trustworthyno-dark-patterns | pass | high | Consent offers equally prominent accept and reject actions; product price, previous price, discount, and availability requirements are explicit. |
be-trustworthyhumane-error-handling | pass | high | Search succeeds without unnecessary required fields, and the tested invalid route explains the problem without blame and offers recovery. |
be-trustworthytrustworthy-input-assistance | pass | high | The representative search field has a programmatic label, search input type, and predictable GET action; no paste prevention was observed. |
be-trustworthysafe-commercial-and-account-flows | pass | high | Product pricing, quantity, availability, returns reassurance, and add-to-bag are visible; account login uses a one-time-code default and OAuth2 PKCE. |
be-sustainableoptimised-assets | issues | high | The images primitive classified 39 of 40 images as JPG/PNG/GIF, found seven below-fold images without lazy loading and six oversized images. Lighthouse measured a 2.51MiB page load. F-016 medium: The global editorial homepage relies heavily on legacy image formats and eagerly starts some below-fold media. |
be-sustainableno-wasteful-work | pass | high | Despite asset issues, traces found no long tasks or ongoing main-thread blocking, and third-party activity before consent was limited to consent management. |
be-sustainablethird-party-and-media-budget | issues | high | The images primitive classified 39 of 40 images as JPG/PNG/GIF, found seven below-fold images without lazy loading and six oversized images. Lighthouse measured a 2.51MiB page load. F-016 medium: The global editorial homepage relies heavily on legacy image formats and eagerly starts some below-fold media. |
be-agent-readystructured-agent-capabilities | not-applicable | high | No declared agent-facing scope was found; this emerging WebMCP capability is an opportunity, not a requirement for the inspected public pages. |
be-agent-readyon-device-inference | not-applicable | high | The inspected retail and editorial tasks do not require on-device generative inference; absence is not a user-facing failure. |
be-memory-efficientno-leak-under-repeated-interaction | pass | high | After ten full listing scroll cycles, heap self-size rose only 108,228 bytes (0.3%); object, array, and closure counts decreased rather than accumulating. |
be-memory-efficientbounded-footprint | pass | high | The content-heavy listing retained about 35.3MB in the heap summary, proportionate to its 103-image, multi-section template. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | high | The post-interaction summary showed only +252 nodes, lower object/array/closure populations, and no Detached* constructor among top retained constructors. |
Provenance
Canonical report: results/atomic/reports/0948-www_ikea_com.json
Report SHA-256: 522905614737d93ef70c5ca120811ae39daab5fcf61a9553128c55513320b851
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_ikea_com/2026-07-24T01-56-41-278Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_ikea_com/2026-07-24T01-56-41-278Z
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.