User Experience Performance Single Region Diagnostic Results

Webpage: https://www.apco.co.th

Device: Desktop Computer

Region: Japan (Tokyo)

Single Region Score

54
Page Performance Needs Improvement
A total of 36 improvements can achieve a higher score
Avoid multiple page redirects

Redirects introduce additional delays before the page can be loaded. [Learn how to avoid page redirects].

Eliminate render-blocking resources

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].

Image elements have `[alt]` attributes that are redundant text.

Informative elements should aim for short, descriptive alternative text. Alternative text that is exactly the same as the text adjacent to the link or image is potentially confusing for screen reader users, because the text will be read twice. [Learn more about the `alt` attribute].

LCP request discovery

Optimize LCP by making the LCP image [discoverable] from the HTML immediately, and [avoiding lazy-loading]

Reduce unused CSS

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].

Third parties

Third party code can significantly impact load performance. [Reduce and defer loading of third party code] to prioritize your page's content.

Avoid an excessive DOM size

A large DOM will increase memory usage, cause longer [style calculations], and produce costly [layout reflows]. [Learn how to avoid an excessive DOM size].

Properly size images

Serve images that are appropriately-sized to save cellular data and improve load time. [Learn how to size images].

Buttons do not have an accessible name

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].

`[user-scalable="no"]` is used in the `<meta name="viewport">` element or the `[maximum-scale]` attribute is less than 5.

Disabling zooming is problematic for users with low vision who rely on screen magnification to properly see the contents of a web page. [Learn more about the viewport meta tag].

Serve images in next-gen formats

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].

Missing source maps for large first-party JavaScript

Source maps translate minified code to the original source code. This helps developers debug in production. In addition, Lighthouse is able to provide further insights. Consider deploying source maps to take advantage of these benefits. [Learn more about source maps].

Image elements do not have `[alt]` attributes

Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. [Learn more about the `alt` attribute].

Document request latency

Your first network request is the most important. Reduce its latency by avoiding redirects, ensuring a fast server response, and enabling text compression.

Defer offscreen images

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].

Render blocking requests

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.

Elements use prohibited ARIA attributes

Using ARIA attributes in roles where they are prohibited can mean that important information is not communicated to users of assistive technologies. [Learn more about prohibited ARIA roles].

Elements with an ARIA `[role]` that require children to contain a specific `[role]` are missing some or all of those required children.

Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. [Learn more about roles and required children elements].

Layout shift culprits

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.

Heading elements are not in a sequentially-descending order

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].

Links do not have descriptive text

Descriptive link text helps search engines understand your content. [Learn how to make links more accessible].

Speed Index

Speed Index shows how quickly the contents of a page are visibly populated. [Learn more about the Speed Index metric].

Improve image delivery

Reducing the download time of images can improve the perceived load time of the page and LCP. [Learn more about optimizing image size]

Links do not have a discernible name

Link text (and alternate text for images, when used as links) that is discernible, unique, and focusable improves the navigation experience for screen reader users. [Learn how to make links accessible].

Time to Interactive

Time to Interactive is the amount of time it takes for the page to become fully interactive. [Learn more about the Time to Interactive metric].

Elements with `role="dialog"` or `role="alertdialog"` do not have accessible names.

ARIA dialog elements without accessible names may prevent screen readers users from discerning the purpose of these elements. [Learn how to make ARIA dialog elements more accessible].

Largest Contentful Paint element

This is the largest contentful element painted within the viewport. [Learn more about the Largest Contentful Paint element]

Reduce unused JavaScript

Reduce unused JavaScript and defer loading scripts until they are required to decrease bytes consumed by network activity. [Learn how to reduce unused JavaScript].

Background and foreground colors do not have a sufficient contrast ratio.

Low-contrast text is difficult or impossible for many users to read. [Learn how to provide sufficient color contrast].

Minimize main-thread work

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]

`[role]`s are not contained by their required parent element

Some ARIA child roles must be contained by specific parent roles to properly perform their intended accessibility functions. [Learn more about ARIA roles and required parent element].

Efficiently encode images

Optimized images load faster and consume less cellular data. [Learn how to efficiently encode images].

Reduce JavaScript execution time

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].

Enable text compression

Text-based resources should be served with compression (gzip, deflate or brotli) to minimize total network bytes. [Learn more about text compression].

List items (`<li>`) are not contained within `<ul>`, `<ol>` or `<menu>` parent elements.

Screen readers require list items (`

  • `) to be contained within a parent `
  • Largest Contentful Paint

    Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric]

    Show All