Webpage: https://www.loyal.sg
Device: Desktop Computer
Region: Ireland (Dublin)
Single Region Score
Some third-party embeds can be lazy loaded. Consider replacing them with a facade until they are required. [Learn how to defer third-parties with a facade].
Third-party code can significantly impact load performance. Limit the number of redundant third-party providers and try to load third-party code after your page has primarily finished loading. [Learn how to minimize third-party impact].
Descriptive link text helps search engines understand your content. [Learn how to make links more accessible].
Reduce unused rules from stylesheets and defer CSS not used for above-the-fold content to decrease bytes consumed by network activity. [Learn how to reduce unused CSS].
A large DOM will increase memory usage, cause longer [style calculations], and produce costly [layout reflows]. [Learn how to avoid an excessive DOM size].
When a toggle field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about toggle fields].
Chrome is moving towards a new experience that allows users to choose to browse without third-party cookies. [Learn more about third-party cookies].
Focusable descendents within an `[aria-hidden="true"]` element prevent those interactive elements from being available to users of assistive technologies like screen readers. [Learn how `aria-hidden` affects focusable elements].
Consider reducing the time spent parsing, compiling, and executing JS. You may find delivering smaller JS payloads helps with this. [Learn how to reduce Javascript execution time].
Third party code can significantly impact load performance. [Reduce and defer loading of third party code] to prioritize your page's content.
Each ARIA `role` supports a specific subset of `aria-*` attributes. Mismatching these invalidates the `aria-*` attributes. [Learn how to match ARIA attributes to their roles].
Issues logged to the `Issues` panel in Chrome Devtools indicate unresolved problems. They can come from network request failures, insufficient security controls, and other browser concerns. Open up the Issues panel in Chrome DevTools for more details on each issue.
Optimized images load faster and consume less cellular data. [Learn how to efficiently encode images].
Image formats like WebP and AVIF often provide better compression than PNG or JPEG, which means faster downloads and less data consumption. [Learn more about modern image formats].
Consider lazy-loading offscreen and hidden images after all critical resources have finished loading to lower time to interactive. [Learn how to defer offscreen images].
Layout shifts occur when elements move absent any user interaction. [Investigate the causes of layout shifts], such as elements being added, removed, or their fonts changing as the page loads.
Screen readers have a specific way of announcing lists. Ensuring proper list structure aids screen reader output. [Learn more about proper list structure].
When a button doesn't have an accessible name, screen readers announce it as "button", making it unusable for users who rely on screen readers. [Learn how to make buttons more accessible].
Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more about roles and required children elements].
Image display dimensions should match natural aspect ratio. [Learn more about image aspect ratio].
This is the largest contentful element painted within the viewport. [Learn more about the Largest Contentful Paint element]
Errors logged to the console indicate unresolved problems. They can come from network request failures and other browser concerns. [Learn more about this errors in console diagnostic audit]
Minifying JavaScript files can reduce payload sizes and script parse time. [Learn how to minify JavaScript].
Form elements without effective labels can create frustrating experiences for screen reader users. [Learn more about the `select` element].
Resources are blocking the first paint of your page. Consider delivering critical JS/CSS inline and deferring all non-critical JS/styles. [Learn how to eliminate render-blocking resources].
Consider reducing the time spent parsing, compiling and executing JS. You may find delivering smaller JS payloads helps with this. [Learn how to minimize main-thread work]
When an input field doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. [Learn more about input field labels].
Optimize LCP by making the LCP image [discoverable] from the HTML immediately, and [avoiding lazy-loading]
Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript].
Serve images that are appropriately-sized to save cellular data and improve load time. [Learn how to size images].
Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. [Learn more about touch targets].
Meta descriptions may be included in search results to concisely summarize page content. [Learn more about the meta description].
Labels ensure that form controls are announced properly by assistive technologies, like screen readers. [Learn more about form element labels].