: For the Largest Contentful Paint (LCP) image—usually the main hero image—using decoding="async" can actually delay its appearance, potentially hurting your Core Web Vitals scores.
249: Decoding async, tree rings, and flexbox gap - CSS-Tricks <img decoding="async" class="alignleft" src="ht...
: It allows text and other non-image content to appear sooner, rather than waiting for large images to be fully processed. The Trade-off: LCP and "Popping" : For the Largest Contentful Paint (LCP) image—usually
The attribute decoding="async" in an tag is a performance-focused hint that tells the browser to decode image data off the main thread. This prevents the CPU-intensive process of converting a compressed file (like a JPEG) into raw pixels from blocking the rendering of other critical content, such as text or interactive elements. Why decoding="async" Matters This prevents the CPU-intensive process of converting a
While async decoding is generally a best practice for secondary images, it can occasionally backfire for critical "above-the-fold" content:
When a browser downloads an image, it must decode it before it can be displayed. By default, many browsers perform this synchronously, meaning they wait for the image to decode before showing the rest of the page content.