Mismatched aspect ratios
Your photographer shot some products vertical, some horizontal. Your product cards now sit at three different heights. The grid looks broken.
Most image plugins crop your products to fit a grid. Perfect Image
Resize pads them to a uniform canvas instead, then serves AVIF and
WebP via <picture> — locally, with no cloud upload,
no per-image quotas, and your originals untouched.
Every store hits the same set of problems with product imagery. None of the existing plugins solve the right one.
Your photographer shot some products vertical, some horizontal. Your product cards now sit at three different heights. The grid looks broken.
WooCommerce themes solve the symmetry problem by cropping. The crop walks off the product. Customers see half a bottle, two-thirds of a watch face.
Smush, ShortPixel, Imagify compress your images. None of them uniformize them. Compression is not the same problem.
Every step runs on your server. No image leaves your hosting environment, no token is required, no credit is spent.
uploads/. Derivatives stored at uploads/pir-derivatives/. Restore at any time with wp pir restore-originals. Each one is a substantive piece of the product — not a feature bullet — and each one matters for a different kind of store.
The core promise. Pad to canvas instead of crop. Configurable background
(solid colour, default white; transparent for PNG outputs). Optionally
apply the trim to the original file with an automatic backup, reversible
via wp pir restore-originals.
AVIF + WebP + JPEG fallback via the <picture>
element with multi-width srcset and type attributes.
No Vary: Accept hacks that break page caches.
No cloud dependency. No per-image credits.
Built-in Cloudflare Image Transformations integration when your plan supports it. PIR detects availability via a probe HEAD request and switches delivery automatically. Bunny and imgproxy adapters on the roadmap. The plugin works fully without any CDN — the CDN layer is acceleration, not requirement.
What you actually get when you install Perfect Image Resize. Every line below is a feature shipped today, not a roadmap promise.
type attribute. No Vary: Accept. health, stats, regenerate, derivatives, doctor, purge-cache, restore-originals. fetchpriority="high" from the WordPress Performance Lab. big_image_size_threshold from Settings. We are not the cheapest. We are not the most installed. We do one thing very well — uniformize WooCommerce product images without cropping — and we do it without holding your data hostage.
| Capability | Perfect Image Resize | Smart Image Resize | ShortPixel | Imagify | Smush |
|---|---|---|---|---|---|
| Uniformize product images without crop | — | — | — | ||
| Modify original file with backup + restore | — | n/a | n/a | n/a | |
| AVIF in free tier | capped 150 | — | — | — | |
| Local processing, no cloud upload | — | — | — | ||
| No monthly quotas or credits | — | — | — | ||
<picture> with multi-width srcset | — | — | — | ||
| Page-builder support (Bricks / Elementor / Oxygen) out of box | — | — | — | — | |
| WP-CLI surface | — | — | — | — | |
| Annual licensing, no SaaS lock-in | also lifetime | mixed | mixed | mixed | |
| Modern PHP stack (PSR-4, tests, 8.2+) | — | — | — | — |
All paid tiers include all Pro features. Tiers differ only in how many sites you can activate on, and in support priority.
Renewals at 30–40% off from your second year. 14-day refund window. Annual licensing with full source code access. Sold worldwide via Lemon Squeezy as Merchant of Record. Prices in USD.
Free is genuinely useful. Paid is for scale.
| Capability | Free (WP.org) | Paid (any tier) |
|---|---|---|
| Full uniformization pipeline (trim + pad + scale) | ||
AVIF + WebP + JPEG with <picture> | ||
| Apply trim to original file with automatic backup | ||
| Manual bulk regenerate | ||
| Scheduled bulk + error recovery at scale | — | |
WP-CLI: health, stats, regenerate, derivatives | ||
WP-CLI: doctor, purge-cache, migrate-from-sir, reset | — | |
| Theme / page-builder rewriter (Bricks / Elementor / Oxygen) | ||
| Per-size config (uniform / proportional / skip) | ||
| Per-size granular config (per-aspect-ratio override) | — | |
| Cloudflare CDN delivery | Detection only | Active delivery |
| Bunny + imgproxy adapters | — | on roadmap |
| Media Audit + Cleanup (orphans, trash log) | — | |
| Multi-site licensing | — | |
| Priority email support + beta access | — |
The free version is genuinely useful for a single store. The paid versions add automation, scale, CDN delivery, and the advanced WP-CLI surface that agencies and platform operators need.
Get Perfect Image Resize FreeUpdates arrive automatically through your WordPress admin for as long as your licence is active.
Complete checkout at Lemon Squeezy. Your licence key arrives by email within 60 seconds.
Upload the plugin zip via WordPress admin (Plugins → Add new → Upload) or via WP-CLI:
$ wp plugin install perfect-image-resize.zip --activate
Paste your licence key in Perfect Image → Settings → Licence. The plugin verifies with Lemon Squeezy and unlocks paid features.
If yours isn't here, write to info@australcode.io. We answer email.
Yes. Perfect Image Resize handles both uniformization (which they don't do) and format conversion to AVIF + WebP (which they do, but with cloud dependencies and quotas). If you have one of those installed, disable it before activating PIR. They will conflict over the wp_get_attachment_image filter.
Yes. PIR has a dedicated output buffer rewriter (free tier) that intercepts the page-builder's rendered HTML and replaces <img> tags with <picture> elements. Tested with Bricks 2.x, Elementor 3.x, and Oxygen 4.x.
Only if you explicitly enable the "Apply trim to original" setting. When enabled, PIR creates a pristine backup in uploads/pir-backups/ before any modification, and provides wp pir restore-originals to revert at any time. Default behaviour: originals are untouched, derivatives are generated separately.
PIR detects Polish on activation via a probe HEAD request and shows an admin warning, because Polish re-encodes the AVIF / WebP that PIR has already generated optimally. You can disable Polish for the wp-content directory in your Cloudflare dashboard or accept the double-encoding cost.
The free version is the full uniformization pipeline. No image cap, no daily quota, no nag screens. The paid version adds scale features (scheduled bulk, CDN delivery, Media Audit, full WP-CLI), not the core promise. We sell to people who need scale, not to people who hit a deliberate limit.
Originals are untouched. Derivatives in uploads/pir-derivatives/ can be left in place (no harm) or cleaned via wp pir purge-cache --all before uninstall.
Yes.
No. 100% local processing. The optional Cloudflare CDN integration uses your Cloudflare zone, not ours.
PHP 8.2+, WordPress 6.5+. Imagick 3.4.4+ is preferred for AVIF support; GD is a supported fallback for sites where Imagick isn't installed.
14 days, no questions asked. Email info@australcode.io with your order number and we issue the refund through Lemon Squeezy within 24 hours.