WordPress image optimization plugin setup using LiteSpeed and EWWW.

WordPress Image Optimization Plugin, One Free Plugin Fix in 5 Steps

When I started optimizing my site, I realized I needed a reliable wordpress image optimization plugin setup. LiteSpeed alone wasn’t compressing several images, WebP failed to generate, and PageSpeed stayed low until I paired it with EWWW Image Optimizer — the moment I understood I needed a stable wordpress image optimization plugin workflow instead of relying on a single tool.


I tried LiteSpeed’s built-in image optimization first. It failed. Several images never optimized, WebP generation got stuck, and PageSpeed stayed mediocre on mobile. Instead of deleting LiteSpeed (because I still needed its caching), I installed EWWW Image Optimizer to handle only image compression. After configuring both plugins to avoid conflicts (some settings ON, others OFF), PageSpeed jumped to 94 on mobile and 96–100 on desktop. Here’s exactly what I did, why LiteSpeed wasn’t enough, and how EWWW saved the day.


Why LiteSpeed Failed as a WordPress Image Optimization Plugin

You know that moment when your website finally “looks cute”… and then Google PageSpeed slaps you with a slow score?
That was me.

I had LiteSpeed Cache installed already, so in theory, I didn’t need any other wordpress image optimization plugin. LiteSpeed promises WebP, compression, placeholders… everything. So I trusted it as my main wordpress image optimization plugin solution — until it started failing silently.

But here’s the issue:

  • Some images were never optimized
  • WebP generation got stuck
  • The queue froze
  • The status kept saying “processing” forever
  • The PageSpeed waterfall STILL showed heavy PNGs
  • Mobile score refused to go beyond 80–88

If LiteSpeed was supposed to do everything… why were my images still heavy?

Spoiler: LiteSpeed is amazing, but its image optimization service depends on external servers that get overloaded. And when they get overloaded, your queue sits there doing nothing.

That’s when I realized I needed a separate, reliable wordpress image optimization plugin that didn’t depend on someone else’s remote server — something that could actually finish the job without getting stuck


❗ You need to understand that LiteSpeed is NOT just a plugin — and definitely not a full wordpress image optimization plugin by itself.

LiteSpeed Cache controls:

  • Server cache
  • CSS and JS optimization
  • Image lazy load
  • Minification
  • CDN control
  • WebP rewriting
  • Database control
  • Heartbeat control
  • Object Cache
  • Browser Cache

This means LiteSpeed is handling all your site’s caching.

If you remove it, your website could:

  • Become slower
  • Lose the PageSpeed you already have
  • Load CSS more slowly
  • Lose lazy load
  • Stop caching pages
  • Completely change performance

This doesn’t mean you can’t remove it…
it just means:

👉 You need to replace it with another caching system.

IF YOU WANT TO REMOVE LITESPEED, YOU MUST INSTALL ANOTHER CACHE PLUGIN

The two best replacements:

  1. WP Super Cache (free, stable, simple)
  2. WP Fastest Cache (the free version works well)

Both work fine on Hostinger.

But note:

None are as powerful as LiteSpeed on a LiteSpeed server.

Your server is LiteSpeed, so LSCACHE was built specifically for it.


Step 1 — Trying LiteSpeed First (and Why It Didn’t Work)

Before installing anything else, I wanted to do things “right.”

Here’s what I turned ON in LiteSpeed’s Image Optimization panel:

  • Optimize Images → ON
  • Optimize WebP → ON
  • Generate WebP for Media → ON
  • Lazy Load → ON
  • Add Missing Sizes → ON

And here’s what LiteSpeed reported after “processing”:

  • Some images optimized
  • Others skipped
  • Others stuck
  • Queue inconsistencies
  • No WebP created for several new uploads
  • Status kept looping

Visually inside WordPress, some thumbnails WERE optimized… others stayed at huge sizes.

And PageSpeed confirmed it:

After LiteSpeed only:

  • Mobile: 84–88
  • Desktop: 91–93
  • FCP + LCP had no improvement
  • Total page weight barely changed

So LiteSpeed wasn’t doing the job “completely,” even if the settings were correct.


When using another plugin can be helpful

  • If LiteSpeed Cache can’t properly process your older images (due to errors, broken paths, permissions, etc.)
  • If your media library has hundreds or thousands of images and you need to regenerate sizes/thumbnails first
  • If your theme requires different sizes, or you switched themes — which can break previous image sizes
  • If you want to regenerate thumbnails so your site uses the correct image dimensions

⚠️ But careful: there are warnings when combining optimization plugins

If you use two image optimization or compression plugins at the same time, it can cause conflicts, errors, or failed processing.

In general, it’s best to stick to a single optimization tool: either LiteSpeed or another plugin — but not both at the same time.

LiteSpeed Cache comes built into Hostinger, but the plugin I needed for handling images had to meet a few conditions — and still be free: 🧐

  • No touching DNS
  • No configuring a CDN
  • No QUIC.cloud
  • No weird setups

Just install it and done. 😉

How EWWW Became My WordPress Image Optimization Plugin Fix

The Decision: Why I Added EWWW Instead of Removing LiteSpeed

OPCIÓN 1: EWWW Image Optimizer (GRATIS Y COMPATIBLE CON LITESPEED)

Works perfectly with Hostinger + LiteSpeed
✔ Optimizes both new and old images
✔ Automatically generates WebP
✔ Doesn’t require advanced configuration
✔ Doesn’t rely on QUIC.cloud (GOODBYE PROBLEMS)

Here’s the trick most beginners miss:

👉 LiteSpeed handles caching and performance.
👉 EWWW handles image compression locally, without remote servers.

If I removed LiteSpeed, I would lose caching, HTML minification, JS optimization, and the whole performance powerhouse.

So the smart move was:

Keep LiteSpeed for caching + minify

Use EWWW only for image optimization

This combination is actually used by many pros.

🟡 IMPORTANT NOTE

Before installing any plugin:

👉 Disable ONLY the Image Optimization section in LiteSpeed — do not uninstall LiteSpeed entirely.

This prevents conflicts.

LiteSpeed Cache → Image Optimization→ Settings

Auto Request Cron → OFF

Optimize Original Images → OFF

Remove Original Backups → OFF

Optimize Losslessly → OFF

Optimize Image Sizes → OFF

Preserve EXIF/XMP → OFF

WebP → OFF

AVIF → OFF

Done — LiteSpeed won’t touch your images.


Step 3 — Installing EWWW Image Optimizer (The Right Way)

WHAT TO SELECT ON THIS SCREEN
Check these two options:

✔ Speed up your site
✔ Save storage space

And at the bottom select:

✔ Stick with free mode for now

This tells the plugin:

  • Optimize images
  • Reduce file size
  • Don’t use the paid plan
  • Keep everything local and free

💡 Why set it up this way?

Because:

  • “Speed up your site” enables compression and WebP
  • “Save storage space” turns on local optimization
  • “Stick with free mode for now” prevents it from sending you to their paid CDN

This lets you optimize ALL your old images with no limits.

EWWW works completely free when configured in local mode.

When you install EWWW, it immediately asks:

“Do you want to use the built-in image optimization or install the EWWW API?”

I chose:

Local optimization only (FREE)
No API key
Keep backups OFF
Metadata removal ON
WebP conversion ON

Inside the settings:

What we turned ON

  • Remove metadata
  • Convert to WebP
  • Auto-scale large images
  • Lazy load OFF (because LiteSpeed already handles it)
  • Background optimization ON

What we turned OFF

  • JS lazy loading (LiteSpeed handles it)
  • CSS lazy loading (LiteSpeed also handles it)
  • Any conflicting lazy load options

Then I clicked:

Bulk Optimize → Scan for Unoptimized Images → Optimize All

And this time…
NO QUEUE FREEZING.
NO SKIPPED IMAGES.
NO INCONSISTENCY.

EWWW ran everything locally, so it didn’t depend on remote queues.


Step 4 — Why We Didn’t Disable LiteSpeed’s Image Tools Completely

Because LiteSpeed still gives you:

  • Perfect caching
  • Minify CSS
  • Minify JS
  • HTML optimization
  • CDN compatibility
  • QUIC.cloud support
  • Advanced page optimization we actually used

You only disable LiteSpeed’s IMAGE optimization, not the performance engine.

So LiteSpeed stays ON.
EWWW handles images.
No conflict. No drama.


Step 5 — Re-Running PageSpeed (The Moment of Truth)

After everything:

Mobile before: 84–88

Mobile after: 94

Desktop before: 91–93

Desktop after: 96–100

Key improvements:

  • FCP dropped
  • LCP improved
  • Speed Index dropped from 2.6s to under 1s
  • Total page weight reduced
  • WebP delivered correctly
  • No broken layout from minification

This is the power of using the right WordPress image optimization plugin + correct settings.


Real Lessons (So You Don’t Suffer What I Suffered)

1. LiteSpeed is incredible, but its image queue FAILS when overloaded

No hate. It’s just reality.

2. EWWW works consistently because it optimizes images LOCALLY

No waiting for external servers.

3. Using both plugins together is not “too much,” it’s actually the perfect combo

One handles caching, the other handles images.

4. PageSpeed rewards optimized images more than almost anything else

Especially on mobile.


Final Thoughts — What Actually Works

If you have a WordPress site, the fastest, safest setup is:

✔ LiteSpeed Cache (caching + minify + critical CSS + async JS)

✔ EWWW Image Optimizer (WebP + compression + scaling)

This is the setup that finally made my site feel fast, stable, and clean.

What Caching & Minification Actually Do (and Why They Matter)

If you’re fixing images but ignoring caching and minification, you’re basically cleaning your kitchen while the oven is still on fire. Both things work together. Images are heavy, yes, but caching and minification control how fast the rest of your site loads.

Here’s the quick breakdown — without the boring developer speech.


🔹 What Is Caching (and Why You NEED It)

Caching means your server stops rebuilding your pages from zero every time someone visits.
Instead, LiteSpeed saves a ready-to-deliver version of your page.

So instead of:

“Wait, let me load every CSS, JS, image, query and rebuild the page…”

It becomes:

“Here, take this pre-built fast version.”

Why this matters:

  • It reduces server load
  • Pages load instantly on repeat views
  • Google PageSpeed gives you better FCP & LCP metrics
  • It prevents the site from feeling “heavy” on mobile

This is WHY removing LiteSpeed was never an option.
Caching is the real engine behind performance.


🔹 What Is Minification (and Why It Boosts Speed)

Minification is basically WordPress going:

“Let me remove all the useless spaces, comments, breaks and junk from your CSS and JS so these files load faster.”

When LiteSpeed minifies your files:

  • CSS becomes lighter
  • JS loads faster
  • Browser parses code with less effort
  • PageSpeed stops complaining about “unused CSS” and “render-blocking JS”

It doesn’t change your design.
It just removes dead weight.


🔹 Why LiteSpeed Handles Caching + Minification (Not EWWW)

Because:

✔ LiteSpeed touches HTML, CSS, JS, caching, critical CSS, defer JS, async loading…
✔ EWWW only touches images

They are not competitors — they complement each other.

EWWW optimizes your images.
LiteSpeed optimizes EVERYTHING ELSE.

And that’s why this combo worked in your real case:

  • LiteSpeed = performance engine
  • EWWW = image engine
  • No conflicts when configured correctly

This is the real reason your PageSpeed jumped to 94 mobile / 96–100 desktop.

Want Me to Break Down More WordPress Issues?

If you want me to keep testing, breaking, fixing, and documenting everything I learn, you can follow the next deep dive inside my Behind the Work section — where I show the real process, not the cute version.

Scroll to Top