Manifest position 878 · CrUX rank bucket 1000
https://www.ixl.com
Coverage complete
The requested URL redirected by geography to https://uk.ixl.com/; five representative templates and an error state were audited.
All 58 atomic check outcomes
| Principle / check | Status | Confidence | Evidence or reason |
|---|---|---|---|
respect-user-preferencesrespects-color-scheme | issues | high | The dark-mode screenshot remains a bright green/white page, and the computed probe reports color-scheme: normal with no prefers-color-scheme rule. IXL-001 medium: The public experience stays light when the user requests dark mode. |
respect-user-preferencesrespects-reduced-motion | issues | high | CSS inspection found scroll-timeline rules but no prefers-reduced-motion rule; the reduced-motion probe confirmed the emulated preference was active. IXL-002 medium: Scroll-linked motion has no reduced-motion override. |
respect-user-preferencesrespects-contrast | pass | high | Forced-colours screenshot shows visible text, controls, borders and focus treatment. |
implement-natural-interactionsview-transitions | issues | medium | The cross-template DOM/CSS probe found no view-transition-name or View Transition declarations on any representative page. IXL-003 low: State and page changes do not use View Transitions. |
implement-natural-interactionsscroll-driven-animations | pass | high | CSS probe found three scroll-timeline rule groups, while the load trace showed only one 55 ms long task. |
implement-natural-interactionsphysical-gestures | pass | medium | CSS probe found scroll-snap and overscroll-behavior declarations; mobile layouts scroll naturally without overflow. |
provide-guided-navigationscroll-state-aware-chrome | pass | medium | Scroll-timeline CSS and persistent responsive navigation provide position-aware chrome on long pages. |
provide-guided-navigationanchored-positioning | pass | high | CSS inspection found nine anchor-positioning declarations, indicating overlays can use platform anchoring. |
provide-guided-navigationdirects-attention | pass | medium | Screenshots show clear headings, persistent navigation, visually distinct CTAs and directional cards across entry and diagnostic pages. |
maximize-content-reduce-noiseno-intrusive-interruptions | issues | high | Desktop and mobile screenshots show “First time here?” covering the hero or curriculum before any user action; the same interruption appears on the Year 3 listing. IXL-004 high: A first-visit signup modal obscures the primary content immediately on load. |
maximize-content-reduce-noisesemantic-dismissible-primitives | issues | high | The Year 3 DOM probe found no native dialog or popover but did find a DIV role=dialog, while the screenshot shows a modal overlay. IXL-005 medium: The repeated promotional modal is implemented as a custom role=dialog on curriculum pages. |
maximize-content-reduce-noisereduced-chrome | pass | medium | After the interruption, mobile screenshots devote the viewport to curriculum, pricing or diagnostic content with compact navigation. |
adapt-to-the-form-factorresponsive-no-horizontal-scroll | pass | high | All five 360x800 layout captures report horizontalOverflowPx 0 and a viewport meta tag. |
adapt-to-the-form-factorcomponent-level-responsiveness | pass | medium | The same header, cards and content sections visibly recompose at 360 px across five templates; no reused component was observed failing in a narrow container. |
adapt-to-the-form-factorinput-modality-aware | pass | medium | Programmatic focus produced a visible dotted outline and mobile screenshots show comfortably sized primary controls. |
support-core-task-successclear-purpose-and-primary-action | pass | high | First viewports clearly name personalised learning, pricing, sign-in and diagnostic purposes with prominent next actions. |
support-core-task-successprimary-flow-completion | pass | medium | Pricing exposes direct package subscription links and sign-in accepts submission; the audit stopped before purchase or use of credentials. |
support-core-task-successclear-system-state-and-recovery | pass | high | Empty sign-in submission announces “Please enter a username and password” and moves focus to username; the 404 explains failure and links home. |
be-fast-and-stablegood-core-web-vitals | issues | high | Lighthouse scored performance 0.56 with FCP 4.5 s, LCP 13.3 s and TBT 260 ms; the local trace measured LCP 1.0 s, showing network/device sensitivity. IXL-006 high: The throttled load is slow despite a fast unthrottled local trace. |
be-fast-and-stablevisual-stability | issues | high | The mobile layout observer recorded CLS 0.2145 at about 1.02 s, above the 0.1 good threshold. IXL-007 high: The family pricing page has a large mobile layout shift. |
be-fast-and-stableefficient-main-thread | pass | high | Unthrottled trace recorded one 55.55 ms task and only 5.55 ms total blocking time. |
be-fast-and-stableefficient-resource-delivery | issues | high | HAR and Lighthouse show a large dependency tree and slow throttled LCP despite useful successful delivery. IXL-006 high: The throttled load is slow despite a fast unthrottled local trace. IXL-008 medium: The homepage ships a large, script-heavy request set. |
be-fast-and-stabletrim-unused-and-duplicate-code | issues | high | The HAR recorded 110 requests and 2.12 MB transferred, including 65 scripts (1.41 MB), 14 stylesheets and five fonts; Lighthouse also reported forced reflow and dependency-tree issues. IXL-008 medium: The homepage ships a large, script-heavy request set. |
be-inclusivenames-roles-labels | issues | high | Lighthouse failed button-name and label-content-name-mismatch; the visible-controls probe also found an unnamed cookie-dismiss button. IXL-009 high: Some interactive controls lack usable accessible names. |
be-inclusivesufficient-contrast | issues | high | Lighthouse failed its color-contrast audit on the homepage; forced-colours remained readable, so the defect is in authored colours rather than complete high-contrast failure. IXL-010 medium: Some text and controls fail minimum colour contrast. |
be-inclusivestructure-and-focus | issues | high | Lighthouse failed heading-order; the DOM probe lists several H2 navigation headings before “IXL is personalised learning”. IXL-011 medium: Heading structure is not sequential and includes navigation headings before the page H1. |
be-inclusivelegible-text | pass | high | Desktop/mobile screenshots show readable line lengths, unclipped text and stable wrapping on all representative templates. |
be-inclusivezoom-reflow-targets-and-media | pass | medium | All tested templates reflow at 360 px without overflow; viewport scaling is not disabled and primary targets are adequately sized. |
follow-best-practicesno-console-errors | pass | high | Runtime probe observed no errors or unhandled rejections during a three-second post-load window. |
follow-best-practicessound-document-and-assets | issues | high | The image audit reported all 82 images without width/height attributes, eight below-fold images not lazy-loaded, and Lighthouse failed image-aspect-ratio. IXL-012 medium: Image markup lacks intrinsic dimensions and includes aspect-ratio defects. |
follow-best-practicesbrowser-platform-hygiene | pass | medium | Lighthouse best-practices score was 0.96; no notification/geolocation prompt or runtime exception appeared on load. |
be-discoverabletitle-and-description | pass | high | All five representative pages have specific titles and non-empty meta descriptions. |
be-discoverablecrawlable-and-mobile-friendly | issues | high | Discoverability measured only 18% rendered-word coverage in raw HTML and no raw H1; the crawler screenshot omits most plan and sales content. IXL-013 high: Most public pricing-page content is absent for non-JavaScript crawlers. |
be-discoverablecanonical-and-indexing-signals | issues | high | DOM probes found no canonical URL and no hreflang links on the UK homepage, curriculum, pricing, sign-in, or diagnostic pages; robots.txt and sitemap.xml were present. IXL-014 medium: Representative pages omit canonical and hreflang signals despite many localized editions. |
be-discoverablestructured-and-shareable-metadata | issues | high | The homepage probe found Open Graph tags but zero JSON-LD blocks; the pricing page alone contained one JSON-LD block. IXL-015 low: The organization homepage has social tags but no structured entity data. |
be-private-and-securesecure-transport-and-headers | issues | high | Two Google Analytics cookies were set without Secure, all 12 cookies used SameSite=None, and CSP permits unsafe-inline and unsafe-eval. HTTPS, HSTS and nosniff were present. IXL-016 high: Cookie and CSP policy leave avoidable security weaknesses. |
be-private-and-securedata-minimisation-and-third-parties | issues | high | Tracker evidence found six third-party origins and Google Analytics, Google Tag Manager, and region1 Google Analytics before user interaction. IXL-017 medium: Anonymous first load activates several analytics and tracking services. |
be-private-and-securein-context-permissions-and-modern-auth | issues | high | The sign-in DOM contains username and password fields with no WebAuthn/passkey affordance; no permission prompt fired on load. IXL-018 medium: The sign-in surface exposes password-only authentication. |
be-private-and-securedefensive-browser-policies | issues | high | HSTS, nosniff and frame protection are present, but Referrer-Policy and Permissions-Policy are absent and CSP allows unsafe-inline/eval. IXL-016 high: Cookie and CSP policy leave avoidable security weaknesses. |
be-resilientprogressive-enhancement | issues | high | Raw HTML preserved only 18% of rendered pricing-page words and omitted the H1, while homepage and curriculum raw coverage were 85%. IXL-019 medium: The core public pricing proposition depends heavily on JavaScript. |
be-resilientresilient-runtime-behaviour | pass | medium | Responsive menu/dialog surfaces remained within the viewport and no runtime errors were observed across representative loads. |
be-resilientoffline-and-installable | issues | high | The resilience probe found no manifest, no service-worker registrations and no Cache Storage entries. IXL-020 medium: The app-like learning service has no manifest, service worker, cache, or offline fallback. |
be-resilientnetwork-and-http-failure-states | pass | high | A deliberately invalid route renders a clear “Sorry, page not found” recovery page with a home link. |
be-internationalisedlang-dir-and-logical-properties | pass | high | The redirected UK edition declares lang=en-GB; CSS includes logical properties and the international edition chooser is present. |
be-internationalisedlocale-aware-data | pass | medium | The UK pricing page uses pounds and UK-localized copy consistently; no conflicting hand-formatted locale data was observed. |
be-internationalisedtime-zone-correctness | not-applicable | high | No dates, events, schedules or time-zone-sensitive data appear on the representative public pages. |
be-trustworthyno-dark-patterns | pass | medium | Pricing and package choices are visible, and the promotional modal offers neutral “Keep exploring” dismissal without confirmshaming. |
be-trustworthyhumane-error-handling | pass | high | Empty sign-in submission yields a concise alert and focuses the first field rather than blaming the user. |
be-trustworthytrustworthy-input-assistance | issues | high | Both username and password inputs have autocomplete=off rather than username and current-password. IXL-021 medium: The sign-in form disables autofill and omits standard autocomplete tokens. |
be-trustworthysafe-commercial-and-account-flows | pass | medium | Pricing clearly states the £7.99/month starting price and links each package directly to its subscription route; no disguised commitment was observed before checkout. |
be-sustainableoptimised-assets | issues | high | The image audit found eight images without srcset, eight below-fold images not lazy-loaded, five legacy-format assets, and 82 without intrinsic dimensions. IXL-022 medium: Responsive and below-fold image delivery leaves avoidable waste. |
be-sustainableno-wasteful-work | issues | high | The 110-request, 2.12 MB load includes 65 scripts and active analytics before interaction. IXL-008 medium: The homepage ships a large, script-heavy request set. IXL-017 medium: Anonymous first load activates several analytics and tracking services. |
be-sustainablethird-party-and-media-budget | issues | high | Six third-party origins and three known trackers load on the anonymous homepage. IXL-017 medium: Anonymous first load activates several analytics and tracking services. |
be-agent-readystructured-agent-capabilities | not-applicable | high | Agent-facing capabilities are emerging and no declared intent to expose WebMCP tools was found; absence is treated as an opportunity, not a failure. |
be-agent-readyon-device-inference | not-applicable | high | No public summarisation or language-model task was identified where on-device inference is required; this emerging check is not applicable. |
be-memory-efficientno-leak-under-repeated-interaction | pass | medium | After ten attempted menu open/close cycles, heap self-size rose 2.1% (25.64 MB to 26.19 MB), not evidence of unbounded retained growth. |
be-memory-efficientbounded-footprint | pass | medium | Baseline heap summary reports 25.64 MB self size for a visually rich, script-heavy page; proportionate though not minimal. |
be-memory-efficientno-detached-dom-or-unbounded-listeners | pass | low | Before/after summaries show closures nearly flat (25,804 to 25,848) and no Detached constructor among top retained constructors; no accumulating listener signal was observed. |
Provenance
Canonical report: results/atomic/reports/0878-www_ixl_com.json
Report SHA-256: e944bacb69f95a77697cf7f6065b89d72734f8b4f2ac0e6818e4830b0e3a02ca
Local retained report: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_ixl_com/2026-07-23T14-45-34-209Z/report.json
Local evidence root: runs/2026-07-17T17-27-24-856Z/atomic-reports/www_ixl_com/2026-07-23T14-45-34-209Z
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.