User Experience Performance Single Region Diagnostic Results

Webpage: https://www.jeng-yuan.com

Device: Desktop Computer

Region: United States West (Oregon)

Single Region Score

50
Page Performance Needs Improvement
A total of 26 improvements can achieve a higher score
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].

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

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.

`<frame>` or `<iframe>` elements do not have a title

Screen reader users rely on frame titles to describe the contents of frames. [Learn more about frame titles].

Third parties

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

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

Reduce initial server response time

Keep the server response time for the main document short because all other requests depend on it. [Learn more about the Time to First Byte metric].

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

Screen readers require list items (`

  • `) to be contained within a parent `
  • Avoid large layout shifts

    These are the largest layout shifts observed on the page. Each table item represents a single layout shift, and shows the element that shifted the most. Below each item are possible root causes that led to the layout shift. Some of these layout shifts may not be included in the CLS metric value due to [windowing]. [Learn how to improve CLS]

    Minify JavaScript

    Minifying JavaScript files can reduce payload sizes and script parse time. [Learn how to minify JavaScript].

    Largest Contentful Paint image was lazily loaded

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

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

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

    Largest Contentful Paint element

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

    Properly size images

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

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

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

    robots.txt is not valid

    If your robots.txt file is malformed, crawlers may not be able to understand how you want your website to be crawled or indexed. [Learn more about robots.txt].

    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.

    LCP request discovery

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

    Speed Index

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

    Minify CSS

    Minifying CSS files can reduce network payload sizes. [Learn how to minify CSS].

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

    Uses deprecated APIs

    Deprecated APIs will eventually be removed from the browser. [Learn more about deprecated APIs].

    Preload Largest Contentful Paint image

    If the LCP element is dynamically added to the page, you should preload the image in order to improve LCP. [Learn more about preloading LCP elements].

    Show All