Webpage: https://ww2.scubapro.com
Device: Desktop Computer
Region: United States East (Virginia)
Single Region Score
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].
Properly ordered headings that do not skip levels convey the semantic structure of the page, making it easier to navigate and understand when using assistive technologies. [Learn more about heading order].
Above-the-fold images that are lazily loaded render later in the page lifecycle, which can delay the largest contentful paint. [Learn more about optimal lazy loading].
Descriptive link text helps search engines understand your content. [Learn how to make links more accessible].
Third party code can significantly impact load performance. [Reduce and defer loading of third party code] to prioritize your page's content.
Redirects introduce additional delays before the page can be loaded. [Learn how to avoid page redirects].
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]
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].
Low-contrast text is difficult or impossible for many users to read. [Learn how to provide sufficient color contrast].
Search engines may use `href` attributes on links to crawl websites. Ensure that the `href` attribute of anchor elements links to an appropriate destination, so more pages of the site can be discovered. [Learn how to make links crawlable]
Deprecated APIs will eventually be removed from the browser. [Learn more about deprecated APIs].
Many HTML elements can only be assigned certain ARIA roles. Using ARIA roles where they are not allowed can interfere with the accessibility of the web page. [Learn more about ARIA roles].
Your first network request is the most important. Reduce its latency by avoiding redirects, ensuring a fast server response, and enabling text compression.
Reducing the download time of images can improve the perceived load time of the page and LCP. [Learn more about optimizing image size]
Serve images that are appropriately-sized to save cellular data and improve load time. [Learn how to size images].
This is the largest contentful element painted within the viewport. [Learn more about the Largest Contentful Paint element]
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.
Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript].
Requests are blocking the page's initial render, which may delay LCP. [Deferring or inlining] can move these network requests out of the critical path.
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]
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].
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].
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].
Optimize LCP by making the LCP image [discoverable] from the HTML immediately, and [avoiding lazy-loading]