Last updated: 4 November 2026

The quickest way to convert images to WebP in WordPress is to let a plugin create a WebP copy of every image and thumbnail on your own server, then serve that copy to browsers that can read it. You keep your original JPG and PNG files as a fallback. The whole job takes a few minutes to set up and runs by itself after that.

That is the short answer. The longer answer matters because most people who "turn on WebP" never check whether visitors actually receive it. Below we walk through the full process the way we do it on client sites: check the server, convert, deliver, then verify.

Why WebP is worth the effort

WebP is a modern image format that usually produces noticeably smaller files than JPG or PNG at a similar visual quality. It supports transparency, so it can replace most PNG logos and graphics too. Every current major browser can display it.

Smaller images mean less data for each page view. On a fast office connection you might not feel the difference. On a mid-range phone using mobile data, you will. And since images are often the heaviest part of a page, they are usually the first thing speed tools complain about.

One honest note before we start. WebP will not rescue a slow host, a bloated theme or twenty tracking scripts. It fixes the image part of the problem. In our experience that part is often big enough to be worth fixing first, but it is one piece of a bigger picture.

What WordPress does on its own (and what it doesn't)

Since version 5.8, WordPress lets you upload WebP files straight into the Media Library. So you could, in theory, convert every photo on your laptop and upload the WebP version yourself.

In practice that falls apart quickly. A few reasons:

  • Your existing library stays untouched. Hundreds of old JPGs keep loading as JPGs.
  • Every upload creates several thumbnail sizes, and each one needs its own WebP copy.
  • Your writers, your client or your shop manager will forget. Someone always uploads a 6 MB photo straight from a phone.
  • Some places still prefer a classic format. Social networks, for example, can be fussy about the image used in a link preview.

So the sensible route is automatic conversion with the original kept safely alongside.

Before you start: a 2-minute checklist

A little preparation avoids most of the problems we see in support threads.

  1. Take a backup. Any good optimiser keeps backups of originals, but a full site backup before a bulk job is cheap insurance.
  2. Check your server's image library. WebP conversion on your own hosting needs PHP with Imagick or GD, and that library must have WebP support compiled in. Most modern hosts do. Some older shared plans don't.
  3. Record a "before" speed test. Run your home page and one image-heavy page (a gallery, a product category, a long blog post) through a speed test on mobile. Save the numbers. You will want them later.
  4. Know your cache setup. Note down every cache on your site: a caching plugin, a server cache, a CDN. You will clear all of them at the end.

How to convert images to WebP in WordPress, step by step

We will use PixelLite, our own lightweight image optimiser, as the example because we know exactly what it does. It does all the work on your own server, so no images are sent to an outside service and there are no image credits to buy.

Step 1: Install the free plugin

Download the free plugin zip from our download page. In WordPress, go to Plugins, then Add New, then Upload Plugin. Choose the zip, install it and activate it.

After activation, open the plugin's Dashboard. It shows what your server supports, so you will know straight away whether WebP is available. If it isn't, that is a hosting question, and a short message to your host usually sorts it out.

Step 2: Decide what to skip

Not every file should be touched. Maybe you have a folder of print-ready downloads, or a client logo that must stay pixel-perfect. The free version lets you skip files by name, folder or regular expression. Set those exclusions now, before the bulk run, rather than restoring files afterwards.

Step 3: Run the bulk optimisation

Start the one-click bulk optimisation for your Media Library. Two things surprise people here.

First, the count. If you think you have 300 images, the tool may report well over a thousand files. That's normal. WordPress saves several sizes of every upload, and each size gets its own WebP copy.

Second, the time. On an older blog or a big shop, the first run can take a while. Leave it running. New uploads are handled as they come in, so the long wait is a one-time thing.

A small detail we like: PixelLite never keeps a file that got bigger. Occasionally an already well-compressed image would grow when re-saved. In that case the smaller original simply stays.

Step 4: Turn on delivery

Creating WebP files is only half the job. The browser has to be handed them. The free plugin does this with a <picture> tag around images across the whole page, including theme images, page builder sections and WooCommerce product images. The browser picks WebP when it can and falls back to the original when it can't. This method works on Apache, Nginx and LiteSpeed, and behind a CDN.

Step 5: Clear every cache

This is the step most people skip, and it's the reason most "WebP isn't working" complaints exist. Clear your caching plugin, your server cache and your CDN cache. Then test in a private browser window.

How to check that WebP is really being served

Don't trust a green tick in a settings screen. Check the page itself.

  • Open a page in Chrome or Edge, right-click an image and choose Inspect. You should see a <picture> element with a WebP source inside.
  • Open the Network tab in developer tools, filter by images and reload. The Type column should say webp for most images.
  • Run your "after" speed test on the same pages you tested before, on mobile. Compare with your saved numbers.

Expect the mobile result to move more than desktop. A desktop score that was already high often barely changes, and that is fine.

Common problems and quick fixes

What you seeLikely causeWhat to try
Images still load as JPGA cache is serving the old pageClear plugin, server and CDN caches, then test in a private window
No WebP files were createdServer image library lacks WebP supportCheck the plugin Dashboard and ask your host to enable it
Background images unchangedThe image is set in CSS, not in an img tagUse server rules for delivery, or swap the background for an inline image
A slider or gallery looks oddA script expects a plain img tagExclude that folder or file, or try server rule delivery
Link previews show no imageThe share image points to a WebP fileKeep the share image as JPG or PNG; your originals are still there

Picture tag or server rules?

There are two common ways to deliver WebP. The picture tag method changes the page HTML so the browser chooses. Server rules keep the HTML the same and quietly swap the file when the browser says it accepts WebP.

Our take: start with the picture tag. It works on almost any hosting and is easy to undo. Move to server rules if you have lots of CSS background images, or a theme that doesn't play well with extra markup. PixelLite Pro adds .htaccess and Nginx delivery for exactly that case. If you go that way, make sure your CDN caches the two versions separately, or some visitors may get the wrong one.

Small habits that make WebP work better

A few habits stack nicely on top of conversion:

  • Resize before you compress. A 5000-pixel-wide photo shown at 800 pixels is wasteful in any format. Pro can auto-resize huge uploads so this happens without anyone thinking about it.
  • Don't lazy-load your main hero image. Lazy loading is great for images further down the page, but the first big image should load right away.
  • Give images a width and height. It stops the layout jumping as the page loads.
  • Keep alt text descriptive. A new format doesn't change your image SEO basics.

Think of a bakery site with a large banner, a travel blog with long photo galleries and a hardware shop with 2,000 product shots. The banner site needs the hero handled carefully. The travel blog benefits most from bulk conversion. The shop needs automatic handling of every new upload. Same tool, different priorities.

Free vs Pro: what you actually need

For most blogs and small business sites, the free plugin covers WebP completely: lossless compression, WebP copies of every image and thumbnail, whole-page delivery, bulk optimisation, backups and one-click restore.

Pro is a separate add-on that sits on top of the free plugin. It adds AVIF conversion, glossy and lossy compression, auto-resize for huge uploads, PNG to JPG and CMYK to RGB, animated GIF to animated WebP, theme and custom folder optimisation, background mode, WP-CLI commands, bulk restore, .htaccess and Nginx delivery, a 30-day savings report and settings export and import. It is worth it if you run a large library, a shop or several busy pages and want the extra savings without babysitting the process.

FAQ

Will converting to WebP delete my original images?

No. A WebP copy is created next to each original. With backups on, which is the default in PixelLite, you can restore any image whenever you like.

Do I need to change my old posts after converting?

No. You don't edit posts or swap image links by hand. The plugin handles delivery on the page, so old and new posts both benefit.

Does WebP help SEO?

Indirectly. Faster pages are a better experience, and page experience is one of many things search engines look at. WebP alone won't push a page up the rankings, but it removes a common speed problem.

Can I use WebP with a CDN?

Yes. The picture tag method works behind any CDN because the HTML itself lists both versions. Just clear the CDN cache after your first bulk run.

What happens if I stop using the plugin?

Your original images are still in place, so your site keeps working. If a Pro licence expires, Pro features pause and your already optimised images stay exactly as they are.

Ready to make your images lighter?

If you want WebP running on your own server without image credits or monthly limits, start with the free PixelLite download. When you need AVIF, auto-resize or server rule delivery, PixelLite Pro costs ₹999 a year or ₹149 a month in India, and $12 a year or $2 a month internationally, for one site with updates and support. You can see all our tools on the plugins page, and if you get stuck, just contact us.

And if your next job after speed is getting your site seen, our team also builds white hat guest post links. Have a look at our guest post packages.