Performance6 min read·Updated

Lazy Loading WebP Images Without Breaking LCP

Convert the gallery to WebP, then lazy-load everything **except** the LCP image. Native `loading="lazy"` is enough; you rarely need a JS lazy library in 2026.

Lazy is a below-the-fold tool

If the image can appear in the first viewport on a phone, it is not lazy. Convert it, preload it, fetchpriority=high. Convert the rest and lazy-load those.

Why it matters

  • JS lazy-loaders hide LCP from the browser.
  • Light WebP files make lazy less critical — but still useful on long pages.
  • CLS happens when width/height are missing, not because of WebP.

How to do it

  1. Convert the page images to WebP.
  2. Mark hero: no lazy, maybe preload.
  3. Mark the rest: loading=lazy decoding=async.

Settings that work

Always set width and height (or aspect-ratio) on every img.

Convert a batch in your browser. Nothing is uploaded.

Put it into practice

Convert your images to WebP right now, free and privately in your browser.

Open the converter

Frequently asked questions

No. Same attributes. Smaller files just complete faster when they do load.

WordPress core already lazy-loads. Do not add two systems.

Keep reading

Performance6 min read

Fix image LCP

If LCP is a photo or PNG, convert it to WebP at the rendered width, preload it, and stop lazy-loading the hero.

Read more
Workflow6 min read

Blog images to WebP

How to bulk convert article photos and UI screenshots to WebP with different quality for each type.

Read more
Tutorial8 min read

WebP for WordPress

Step-by-step guide to converting and uploading WebP images to WordPress, fixing upload errors, handling fallbacks and speeding up your site without extra plugins.

Read more