verklein.nu
WordPress pluginComing soon to WordPress.org

Free WordPress plugin

Your media library in WebP or AVIF.

Convert every JPG and PNG on your own server: the original, every size WordPress makes of it and the URLs in your database. With backups and one-click restore.

Coming soon to WordPress.org Read the documentation
  • Free and open source (GPL)
  • WordPress 6.7+ and PHP 7.4+
  • No account, API key or limit

Coming soon to the WordPress.org plugin directory. Made by BijBijker.

25–35%smaller than JPG with WebP
Every sizeoriginal, thumbnails and URLs
1 clickto put everything back
0external services or limits

Two sides, set up separately

What is already on your site is converted once. New uploads take care of themselves after that.

Once

Existing images

A wizard takes you through four steps: choose, a before/after example on your own photo, then the whole library in one run. With pause and resume, and everything can be undone.

How to convert the library

Ongoing

New uploads

One switch, and every new JPG or PNG becomes WebP or AVIF while it is uploaded. Large photos from your phone can be scaled down at the same time. Also in the block editor, page builders and WooCommerce.

How to set up uploads

How it works

  1. 1

    Install

    Activate the plugin and check in the system check whether your server can create WebP and AVIF.

  2. 2

    Try

    Pick a level and compare before and after on an image from your own library.

  3. 3

    Convert

    One click for the whole library. The plugin writes the files, updates the URLs and clears the caches.

  4. 4

    Check

    Look at your site. Happy? Clean up the backups after a few weeks.

Replace, or next to the original

You choose how visitors get the new files. You can always switch later.

Least disk space

Replace

  • The WebP or AVIF version takes the place of the JPG or PNG
  • URLs in the database are updated, old URLs redirect (301)
  • Original goes to a protected backup folder

Recommended for WebP

Works in every browser

Next to the original

  • The original and the database stay untouched
  • A copy next to it (photo.jpg.webp), served through <picture>
  • Older browsers automatically get the JPG or PNG

Recommended for AVIF

Why this plugin

Faster pages

At the same visual quality, WebP and AVIF are usually a lot smaller than JPG and PNG. Fewer kilobytes, faster pages, less data for your visitors.

Everything at once

Not just the main file, but every thumbnail and intermediate size too, plus the URLs in your posts, pages and page builders.

Always reversible

By default the originals go to a protected backup folder. Restore puts files, attachment data and URLs back exactly as they were.

On your own server

No external service, no account, no API key and no monthly quota. Your images never leave your server.

No broken pages

The old files stay until the database points at the new ones. Even a long or interrupted run leaves no gaps on your pages.

Blog or web shop

Short background batches with pause and resume, WP-CLI for thousands of images, and support for multisite, WPML and Polylang.

All features

Open a topic for all the details.

ConvertingJPG and PNG to WebP or AVIF, from the best source and never compressed twice.8 items
  • JPG and PNG to WebP or AVIF. WebP to AVIF and the other way round as well, if you want (on by default).
  • Every registered size is made directly from the best source: the full-size original upload (not the -scaled copy), the edited version if you cropped the image in WordPress, or the backup if it was converted before. Nothing is compressed twice.
  • EXIF rotation is applied, CMYK becomes RGB and the colour profile is kept. EXIF, GPS and XMP data are removed by default.
  • Clashing names (photo.jpg and photo.png in the same folder) get a unique name, such as photo-1.webp.
  • If the result is not smaller, the original stays. If anything goes wrong, the image is put back exactly as it was.
  • SVG is skipped, and so are the site icon and the WooCommerce e-mail header image, because many e-mail clients do not show WebP or AVIF. GIF (animated too) can become WebP, and PDFs can be compressed (see below).
  • Existing images are left alone until you click start. Convert with the wizard on the plugin page, the Convert button per image (in the column and row actions of the list view, in the attachment details and in the media modal), the Convert to WEBP (or AVIF) bulk action, or from the notice about images that are not converted yet. You can dismiss that notice.
  • Exclude or restore images one by one or with a bulk action in the Media Library.
Keep the format, only compressJPG stays JPG and PNG stays PNG, only smaller. No change to URLs or the database.4 items
  • Rather not use WebP? Choose Keep the format, only compress: JPG stays JPG and PNG stays PNG, only smaller. File names, URLs and the database do not change; the originals go to the backup folder.
  • Progressive JPGs, optimised Huffman tables, PNG to 256 colours (lossy, like pngquant) and PNG photos without transparency to JPG when that is smaller.
  • Compression levels Lossy, Glossy and Lossless, or your own quality per format. The example shows the three levels side by side on an image from your own library.
  • GIF to WebP, animations included, and PDF compression with Ghostscript: the images in the PDF go to 72, 150 or 300 dpi, text stays text.
Exclusions and sizesSkip types, folders, sizes, periods or thumbnail sizes.3 items
  • Skip file types, names and folders (with wildcards or regular expressions), files above or below a certain size, an upload period or images attached to certain post types.
  • Per thumbnail size: do not compress it, or stop WordPress from creating it at all.
  • In the fallback mode you choose which images and post types get no <picture>.
Quality and effortQuality per format, effort and a before/after preview.5 items
  • Quality from 1 to 100, separately for WebP (default 75) and AVIF (default 60).
  • Effort from 0 (fastest) to 9 (smallest file), default 5. Works with Imagick.
  • PNG can go to lossless WebP, for logos and illustrations with sharp edges.
  • An adjustable threshold for big images, instead of the WordPress default of 2560 pixels.
  • The before/after preview with quality slider shows the difference on an image from your own library.
New uploadsConvert and scale down automatically while uploading.2 items
  • Convert new uploads automatically, optionally to a different format or quality than the library. This is on by default. You switch it off on the New uploads tab. Sites that used an earlier version keep their setting.
  • Scale uploads down to a maximum width and height (off by default, 2560 × 2560 pixels) before WordPress stores them, so the original in your media library is smaller too. The aspect ratio is kept and animated images are left alone. You can also refuse uploads that are too large.
  • A maximum file size per image (for example 1 MB) and a lower upload limit for all files. The page shows what PHP on your server allows.
URLs in your database (replace mode)Exactly the converted URLs, also in page builders and serialized data.8 items
  • Only the URLs of files that were actually converted are changed, and only on your own domain (home URL, site URL, uploads URL and relative paths). Add a CDN or an old domain with a filter.
  • Posts and pages (block editor and classic editor), widgets, menus, theme and Customizer settings, custom fields and the tables of other plugins that use the WordPress prefix.
  • Serialized PHP data, JSON with escaped (also double-escaped) slashes, URL-encoded links and base64 blocks, as stored by Elementor, Beaver Builder, Oxygen, Bricks, WPBakery and Avada, are updated safely.
  • Old sizes that are no longer in the image data and image editor versions get the closest new size.
  • Log and statistics tables are skipped, and so are the tables of newsletter plugins (MailPoet, FluentCRM, The Newsletter Plugin, Mailster, Newsletter Glue), so old e-mails keep working.
  • Old JPG and PNG URLs can redirect (301) to the new file, for links from other sites, newsletters and Google Images. This works when your web server passes requests for missing files to WordPress.
  • A safety net on the page itself: old image URLs that are still in the HTML (in your theme, a cache or added by a plugin) are replaced when the page is shown. Only your theme’s CSS files are not changed; the 301 covers those.
  • Repair broken image URLs: URLs that point to a missing file are matched to the existing file with the same name in another format.
Backups and restoreProtected backups, one-click restore, reports and export.7 items
  • Originals go to a backup folder with a random name, in the same year/month structure. Or you leave them in place, or delete them.
  • The backup folder is closed to visitors on Apache and LiteSpeed. For nginx the rule is on the System & help tab, and the System check tests whether the folder is closed.
  • Restore puts back the original files, the attachment data and the URLs, for everything or only the IDs you choose.
  • Delete the backups once you are happy: all of them, those older than a number of days, per image, or automatically after a set number of days. After that, restoring is no longer possible.
  • Smart backup: keep only the original; the sizes are made again when you restore. Saves a lot of disk space.
  • A report after every bulk task on the plugin page and in a dashboard widget, and by e-mail if you like.
  • Export and import the settings as a JSON file, to use the same settings on several sites.
Large librariesSmall batches, pause and resume, caches cleared afterwards.4 items
  • The task runs in short batches (20 seconds per request by default), so you will not hit time limits.
  • Pause, resume and stop at any moment: an image is either fully converted or not touched at all. Close the page and the task carries on through WP-Cron. When less than 200 MB of disk space is left, the task pauses by itself.
  • Live progress and a log, plus a list of skipped and failed images with the reason.
  • When it is done, the plugin clears the object cache, the CSS cache of Elementor, Beaver Builder, Divi and Avada, and well-known page caches such as WP Rocket, LiteSpeed Cache, W3 Total Cache, WP Super Cache, SiteGround Optimizer, Autoptimize and those of WP Engine and Kinsta.
Multilingual, multisite and WooCommerceWPML, Polylang, multisite and WooCommerce.3 items
  • WPML and Polylang translations of the same image are updated along with it.
  • On multisite every site has its own menu, settings, backups and URL map. In Network Admin you convert every site in one go, exclude sites and copy settings to other sites. WP-CLI can do it too.
  • WooCommerce product images are converted like any other media. The WooCommerce e-mail header image is left as it is.
Media in the cloudWarns about WP Offload Media, Media Cloud and WP-Stateless.1 item
  • If you use WP Offload Media, Media Cloud or WP-Stateless, the plugin warns you and asks for confirmation before it starts. Only files that are still on your server can be converted, and the plugin does not upload the new files to the cloud.
System checkTests formats, memory, disk space and conflicting plugins.3 items
  • WebP and AVIF support, Imagick and ImageMagick version, PHP memory and time limit, free disk space, write access to the uploads folder and WP-Cron.
  • Plugins that also convert or rewrite images, such as Converter for Media, WebP Express, EWWW, ShortPixel, Imagify, Smush, Optimole and Performance Lab, and the WebP replacement in LiteSpeed Cache.
  • A test of whether your server delivers .webp and .avif files with the right type, with a button that adds the MIME types to .htaccess on Apache.
PrivacyEverything on your own server. No data leaves it.2 items
  • Everything happens on your own server. The plugin sends no images or data to verklein.nu or any other service, needs no account and tracks nothing.
  • The only HTTP request is a test from your server to its own uploads folder, in the System check.

Make your site lighter

Free, no account, and everything can be undone.

Coming soon to WordPress.org Quick start

Learn more

Rather not install a plugin? On verklein.nu you can resize and convert images and PDFs right in your browser.