
I-PR AVIF Converter converts your new and existing images to AVIF directly on your server and serves them everywhere on the page. No cloud service, no API key, no monthly credits, no image limits.
AVIF files are typically 40-70% smaller than JPEG at the same visual quality. Smaller images mean a faster Largest Contentful Paint (LCP), better Core Web Vitals and less bandwidth.
Most image optimizers only replace images inside post content. I-PR AVIF Converter rewrites the whole page, so AVIF is also served for images in your theme header and footer, in Custom HTML blocks and widgets, in page builder templates, in custom fields and in Elementor section backgrounds.
Real production results
Measured on live sites running on Italian shared hosting (Aruba and Serverplan):
- dermopigmentazioneroma.it: 904 images, 721 MB saved (-68%), Mobile PageSpeed 80/100
- mangiaroma.com: 1,213 images, 804 MB saved (-70%), Desktop PageSpeed 97/100
- artmerlino.it: 371 images, 167 MB saved (-64%)
- apicolturalapegaia.it: 1,069 images, 135 MB saved (-69%)
- fnahospitalityroma.it: 432 images, 83 MB saved (-43%)
AVIF on every image of the page
- Gutenberg and the classic editor: image blocks, galleries, featured images.
- Hand-written HTML: Custom HTML blocks, HTML widgets, theme templates, header and footer. Absolute, relative (
/wp-content/uploads/...), protocol-relative, www and non-www URLs are all recognised. - Elementor: Image, Gallery, Text Editor and HTML widgets, gallery lightboxes, and section and container background images (desktop, tablet, mobile and hover). Backgrounds use CSS
image-set(), so browsers without AVIF support keep the original image. - Inline backgrounds:
background-imagein style attributes. - Lightboxes: Elementor, WordPress, Fancybox and
data-lightboxlinks open the AVIF full-size image.
Only the image tag is touched: it is wrapped in a <picture> element and the original <img> stays as the fallback. Scripts, SVG and the rest of your markup are left exactly as they are.
<picture>
<source srcset="image.avif" type="image/avif">
<img src="image.jpg" alt="...">
</picture>
How it works
- When you upload an image, the original and all its thumbnails are queued for conversion.
- A background job converts the queue with WP-Cron, with a fallback for hosts where WP-Cron is disabled. Page loads are never blocked.
- The Bulk Scanner converts the images already in your Media Library.
- Images found in your pages that are not converted yet, for example files uploaded via FTP, are queued automatically.
- Visitors with a modern browser get AVIF, everyone else gets the original.
Your original files are never modified unless you explicitly enable “Delete originals”.
Built for shared hosting
- No cloud dependency. Conversion runs on your server with Imagick or GD. No accounts, no usage limits, no recurring costs.
- Adaptive batches. The plugin measures how fast your server converts images and adjusts the batch size automatically, so it does not cause timeouts.
- Memory guard. Before each image the plugin estimates the RAM it needs and postpones the image if memory is short. No fatal errors.
- Circuit breaker. If Imagick keeps failing, the plugin switches to GD and retries Imagick later on its own.
- Quarantine. Images that fail three times are set aside, and you can retry them from the dashboard.
Safe by design
- Smart skips. Animated GIFs and JPEG images with an HDR gain map (UltraHDR, Apple Adaptive HDR) are not converted, because AVIF would lose the animation or the HDR.
- CMYK handling. Print-ready CMYK JPEGs are converted to sRGB first, so colours are not inverted.
- One-click revert. “Delete generated images” removes every AVIF and WebP file the plugin created, without touching the originals and without uninstalling.
- Per-image control. Add
class="ipr-avif-skip"to any image to keep it as it is, or add?ipr-avif=offto a URL to preview the page without AVIF. - Skip patterns. Exclude files or folders with wildcards, for example
logos/*.png. - WordPress 7.1 ready. Compatible with client-side media processing.
- Clean uninstall. Removing the plugin deletes its table, options and scheduled jobs.
Dashboard and CDN
A stats page shows converted files, savings, failure rate and a performance score. After each batch the plugin can purge Cloudflare and notify WP Rocket, LiteSpeed Cache and W3 Total Cache, and it regenerates Elementor CSS automatically.
Requirements
At least one AVIF encoder on the server:
- Imagick 7.0.25 or newer with libheif and AV1 support, or
- PHP 8.1 or newer with GD compiled with libavif (
imageavif()available).
The settings page shows which encoder is available on your server. Optional WebP copies can be generated as an extra fallback.
External Services
This plugin optionally communicates with the Cloudflare API (api.cloudflare.com) to purge CDN cache after batch image conversion.
This feature is disabled by default and only activates if you explicitly enable “Cloudflare CDN Integration” in the plugin settings and provide your own Cloudflare Zone ID and API Token.
No data is sent to Cloudflare unless this feature is manually configured. The only data transmitted are the public URLs of newly converted AVIF images, which Cloudflare needs to purge from its cache.
- Cloudflare service: https://www.cloudflare.com
- Cloudflare Terms of Service: https://www.cloudflare.com/terms/
- Cloudflare Privacy Policy: https://www.cloudflare.com/privacypolicy/
All image conversion is performed locally on your server. No images or personal data are ever sent to external services.
Screenshots

Main settings page: encoder status, quality, batch size, skip patterns.

Telemetry dashboard: conversion rate, compression chart, failure rate.

Performance score panel: Core Web Vitals proxy metrics.

Revert action: "Delete generated images" removes all AVIF and WebP files and keeps the originals.