HomeFix guides → Images using modern formats + sizing

tech

How to fix: Images using modern formats + sizing

Why this matters

Lighthouse rolls up image-related savings: WebP/AVIF conversion, responsive sizing, lazy-loading offscreen images. Images are typically the largest contributor to page weight and LCP — each fix lifts Core Web Vitals directly.

Background

Images are typically the largest contributor to page weight and LCP. Lighthouse rolls up image-related savings: WebP/AVIF conversion, responsive sizing, lazy-loading offscreen images. Each fix lifts LCP + CWV directly.

References

web.dev/fast · Image performance best practices

How to fix

Code snippet for each stack we cover. Pick the one matching your server / framework.

nginx
ngx_pagespeed module (deprecated) OR proxy images through Cloudflare Polish.
apache
Same — proxy through a CDN with image optimisation.
cloudflare
Polish (Pro plan) — auto-converts to WebP at the edge. Image Resizing for responsive variants. Mirage (mobile-only).
wordpress
ShortPixel / EWWW Image Optimizer for WebP conversion at upload. Lazy-load plugin (or native loading="lazy" attr on theme).
flask
Pillow / wand to convert to WebP at upload time. Serve with <picture> source srcset for browser-aware delivery. loading="lazy" on below-fold.
express
Same — sharp library for processing, <picture> for delivery.
rails
active_storage_variants + image_processing gem; image_tag supports loading: :lazy.

Verify it's working

https://pagespeed.web.dev/ — the 'Opportunities' section should show 0 for 'Serve images in next-gen formats' and 'Defer offscreen images'.

Want to know if your site has this issue?

Run a free 53-check audit — security, GDPR, NIS2, and technical SEO.

Audit my site →