1. Home
  2. Blog
  3. Performance Optimization

Don’t convert your entire WordPress media library to WebP

The default move is to convert the library. Install Imagify, ShortPixel or EWWW Image Optimizer. Open Bulk Optimize. Watch every JPEG in wp-content/uploads get a smaller sibling. The progress bar looks like performance work. It is pointed at the archive, not at the page.

Most uploads never appear on a live page. Drafts, unused product shots, old heroes, unpublished posts, thumbnail sizes generated because WordPress generates them. Converting those files still costs CPU, disk, and (on the cloud tools) credits. It does not, by itself, send the visitor a file that matches the slot on screen.

Lightify is built around the other job: convert what the page actually uses, on the fly, in the background, and serve WebP from cache. Originals stay where they are. Nothing gets re-uploaded.

The library is not the page

A Media Library is an archive. A page is a request.

WordPress stores the original, then writes a stack of cropped copies: thumbnail, medium, large, plus whatever the theme registered. Bulk converters walk that whole tree. That is a reasonable design if your goal is “every file on disk should be smaller.” It is a weak design if your goal is “this URL should paint fast,” because the visitor only downloads the URLs in the HTML.

Two things get lost when you treat the archive as the unit of work.

Unused files: an image that never makes it into a published template does not affect Largest Contentful Paint, no matter how well it was compressed.

Display size: converting a 2400px original to WebP still leaves you with a 2400px file if the layout is displaying it much smaller. Format and dimensions are different problems. The Lightify product page states the second one directly: a 2400px upload is resized to the size the page actually displays, then served as WebP. That is a page-time decision. A library sweep cannot finish it, because the sweep does not know the slot.

Treat images the way you already treat CSS and JavaScript

You already do not minify every stylesheet in every plugin folder. A performance plugin looks at what the page enqueues, then minifies, defers, delays, or drops unused CSS for that request. The unused file on disk is left alone.

Images should work the same way. The unit is the URL the response will emit, not the attachment in the library.

That is the comparison table line on the Lightify page, in plain language: Auto WebP on the fly, converted in the background. The conversion is not a one-time crawl of /uploads. It is work attached to what a live page needs, done off the visitor’s critical path, then reused.

Once a variant exists, later requests should not pay for it again. Serve the WebP from cache. Same idea as a warmed page cache: do the expensive bit once, then hand out a flat result.

What Lightify actually does to images

From the Lightify product page and the WordPress.org listing:

  • Auto WebP on the fly, converted in the background (Pro).
  • Originals are not replaced. The page’s phrase is “nothing re-uploaded.”
  • A 2400px upload is resized to display size rather than shipped at camera resolution.
  • Below-the-fold images, video and iframes lazy-load. The LCP image is the exception: preloaded, never lazy, so the hero is not competing with images the visitor has not scrolled to.
  • YouTube embeds can be swapped for a light preview placeholder (Pro) instead of pulling the full player up front.

The free plugin on WordPress.org already includes native lazy loading, the full-page cache, minification, deferred scripts, resource hints, bloat removal and a Core Web Vitals dashboard fed by real visitors. Pro is the heavier media and front-end layer: Auto WebP and precise sizing, critical image preloading, YouTube previews, unused CSS, delayed JavaScript, self-hosted third-party assets, speculative loading, scheduled database cleanup, and the action items on that dashboard.

How this differs from Imagify, ShortPixel and EWWW

Imagify, ShortPixel and EWWW Image Optimizer are good at the library job. That is the job they were designed for.

You point them at the Media Library (and, with EWWW, often at theme folders and other paths). They compress what is already on disk. They generate WebP, and in Imagify and ShortPixel’s case AVIF as well. New uploads get the same pass. ShortPixel and Imagify typically do that in the cloud against a quota. EWWW can do it locally on the server. None of that is a knock. If you need every attachment smaller at rest, a library optimizer is the right shape of tool.

The gap is the page.

A bulk pass cannot know that this template displays the hero at a fraction of the original width. It cannot skip product photos that never appear on a live category page. It also does not cache the HTML, minify the CSS, or delay the JS that sits next to those images. That is why people pair WP Rocket (or similar) with ShortPixel or Imagify: caching plugin plus image service. Two subscriptions, two dashboards, two things that can fight over lazy loading.

Lightify’s bet is that image conversion belongs with the rest of the request: same plugin that caches the page, minifies what the page actually enqueued, and reads LCP from real visitors instead of a separate PageSpeed tab. You still should not run two full-page caches at once. If you already have WP Rocket, LiteSpeed Cache, or W3 Total Cache doing that layer, turn that cache off before you turn Lightify’s on. Cart, checkout and account pages are excluded from the page cache automatically.

Images should not be a second vendor

If you already pay for a cache plugin and an image optimizer, you are paying twice for adjacent work. Lightify puts both in one plugin, then puts that plugin on the same licence as the rest of the suite.

Lightify is one of five Pro plugins on a DaftPlug membership. One licence unlocks Lightify (performance), Progressify (PWA), Generatify (AI), Rankify (SEO and GEO) and Snapshotify (backups). Plans differ only by site count: Pro $37.99/year for 1 site, Pro Plus $74.99/year for 5, Pro Max $138.99/year for 100. Features are identical on all three. New plugins shipped while you are subscribed are included. Checkout is Freemius. Fourteen-day money-back.

Install Lightify free from WordPress.org. That is the same plugin, with Pro features locked rather than removed. Rankify is not on WordPress.org yet, so do not search the directory for it. Start Rankify from its product page when you want that half of the membership.

You do not need a converted archive. You need the images on the page, in the size the layout uses, as WebP, from cache. Convert that, and leave the rest of the library alone.