Image Optimization.
Unoptimized images are the #1 cause of slow page loads
What does this check test?
This check evaluates whether images are properly optimized for web delivery. Optimization includes serving correctly sized images (not downloading a 4000px image to display at 400px), using modern compression, applying appropriate quality settings, and using responsive images for different screen sizes. The HTTP Archive reports that images account for roughly 50% of a typical page's total bytes. Unoptimized images are the single most common performance problem on the web and often the easiest to fix.
Why does it matter?
Images are typically the heaviest resources on a page. A single unoptimized hero image can be 2-5MB — larger than all other page resources combined. This wastes bandwidth, delays LCP (since the LCP element is often an image), and creates a poor experience on mobile networks. Properly optimized images can reduce page weight by 50-80% with no visible quality loss. Image optimization often provides the best return on investment of any performance optimization because the savings are so large.
Who is affected?
E-commerce sites with product catalogs, media-heavy content sites, portfolio and photography sites, and any site with user-uploaded content are most affected. Sites using CMS platforms that don't automatically optimize uploaded images (or have optimization disabled) are common offenders. Marketing landing pages with large hero images and background images are frequently impacted.
Where does this apply?
Check all `<img>` tags, CSS `background-image` properties, and `<picture>` elements. Common issues: images served at full camera resolution (4000x3000px) displayed at 400x300px, JPEG/PNG images that should be WebP/AVIF, images without width/height attributes causing layout shifts, and images above the fold that are lazy-loaded when they should be eagerly loaded. Use Chrome DevTools Network panel filtered to 'Img' to see image sizes and dimensions.
How to fix it
<img
srcset="hero-400.webp 400w, hero-800.webp 800w, hero-1200.webp 1200w"
sizes="(max-width: 600px) 400px, (max-width: 1200px) 800px, 1200px"
src="hero-800.webp"
alt="Hero"
width="1200" height="600"
/> <picture>
<source srcset="/img.avif" type="image/avif" />
<source srcset="/img.webp" type="image/webp" />
<img src="/img.jpg" alt="Description" width="800" height="600" />
</picture> References
- Optimize images — web.dev
- Responsive images — MDN
- Use WebP images — Chrome Developers
- Properly size images — Chrome Developers
AppVet checks Image Optimization automatically
Run a free performance scan and get a full report with actionable fixes, including a Fix with AI prompt you can paste into any coding tool.
Run Audit