Beskriuwing
Spinix Image Optimization makes your images smaller and your pages faster, right on your own server. Every image is compressed and served as WebP whenever that makes it smaller, the first images on each page load right away while the rest are lazy-loaded, and the hero image gets priority. Your original files are never changed.
Spinix Image Optimization is developed and maintained by Spinix Technologies Ltd, a UK company.
It fixes these PageSpeed Insights warnings:
- Serve images in next-gen formats. Every JPEG and PNG is converted to WebP (the original is kept in the rare case it is already smaller).
- Efficiently encode images / Increase the compression factor. Smart compression finds the right quality for each image automatically.
- Largest Contentful Paint image was lazily loaded. The first images on a page are never lazy-loaded, and the hero image gets
fetchpriority="high". - LCP request discovery / fetchpriority=high should be applied. When the hero is a CSS background image (for example an Elementor section background), it is preloaded in the page head with high priority, so the browser finds it right away.
- Image elements do not have explicit width and height. Missing dimensions are added to prevent layout shift.
Your originals are safe
All optimized files are written to a separate folder, spinix-webp, inside your uploads folder. Your original uploads are never changed. Switch delivery off, pause, deactivate or delete the plugin, and your site goes straight back to the original images.
Fast
Images are encoded directly with GD or Imagick (whichever your server has). Each image is read once, the right quality is found in memory before anything is written, and the bulk optimizer processes several images in parallel. Progress, time per image and images per minute are shown live on the dashboard.
Features
- Automatic optimization of every new upload
- Background bulk optimization of your existing library, starting the moment you activate the plugin
- Three compression levels: Smart (recommended), Smallest files and Best quality
- PageSpeed-safe compression that stays above a safe quality floor
- WebP delivery with
<picture>tags (automatic fallback) or direct URL replacement - WebP for CSS background images, including page builder CSS files (Elementor and others)
- Smart lazy loading that never delays the first images on the page
- Hero image priority for a better LCP: automatic on every page, works for normal images and background images, with an optional manual choice per page
- Missing width and height added to prevent layout shift (CLS)
- Works with page caching plugins and CDNs (no server rewrite rules required)
- Plays well with WP Rocket, Elementor and other plugins that also lazy-load or prioritize images: you choose which plugin does it, so nothing is done twice
- Images list with status, savings, time taken and the reason for any image that could not be optimized
- Media Library column with savings per image, optimize again or serve the original
- Exclusions by file name, class or folder
- Pause and resume, plus a choice to keep or delete all data when you deactivate
- WP-CLI:
wp spinix-images optimize,wp spinix-images status,wp spinix-images reset
External services
This plugin does not connect to any external service. All images are processed on your own server, nothing is sent anywhere and nothing is tracked.
The dashboard has a “Test on PageSpeed” button. Only when you click it, a new browser tab opens Google PageSpeed Insights (https://pagespeed.web.dev/) with your site’s home page address, so that you can test your site there. Google’s terms: https://policies.google.com/terms, privacy policy: https://policies.google.com/privacy.
Source code
All JavaScript and CSS in this plugin is the original, unminified source code. There are no build tools, no compiled files and no third-party libraries.
Skermôfbyldings






Ynstallaasje
- Install the plugin from Plugins Add New (search for “Spinix Image Optimization”) or upload the ZIP file, then activate it.
- Open Spinix Image Optimization in the admin menu.
- Your existing images are optimized in the background right away. New uploads are optimized automatically.
Your server needs WebP support in the GD or Imagick PHP extension. The Tools tab shows whether it is available.
FAQ
-
What happens to my images if I remove the plugin?
-
Nothing. Your original images are never modified. Optimized copies live in the
spinix-webpfolder inside your uploads folder. When you delete the plugin, that folder and all plugin settings are removed (you can turn this off under Settings When you uninstall). -
My server says WebP is not supported
-
Ask your hosting company to enable WebP support in the GD or Imagick PHP extension. Most hosts can switch it on in a minute. The Tools tab shows exactly what is missing.
-
Does it work with caching plugins and CDNs?
-
Yes. The WebP markup is written into the page itself, so cached pages and CDNs serve it like any other HTML. Clear your page cache after the first bulk optimization.
-
Another plugin also lazy-loads images or prioritizes the hero image. Is that a problem?
-
No. Spinix Image Optimization detects WP Rocket, Elementor, Perfmatters, FlyingPress, Autoptimize, LiteSpeed Cache and other common plugins and lets you choose which plugin handles lazy loading and the hero image, so nothing is done twice.
-
Can I use it together with another image optimizer?
-
Two image optimizers on one site convert and rewrite the same images and break each other. Spinix Image Optimization therefore asks you to deactivate the other optimizer first, and pauses itself if one is activated later.
-
How does hero image priority work? Automatic or manual?
-
Automatic (the default, on every page): Spinix looks below your site header and takes the first large image or background image. A normal image gets
fetchpriority="high"and is never lazy-loaded. A background image (Elementor, other page builders, inline styles) is preloaded in the page head withfetchpriority="high", with a separate image for phones and tablets if your design uses one. Only this image gets priority, so other images no longer compete with it.Manual (optional, per page): if PageSpeed Insights shows another image as the “Largest Contentful Paint element”, open that page in the editor and use the Spinix hero image box in the sidebar. Choose the right image, or switch hero priority off for that page. Pages you do not change stay automatic.
You can see what Spinix chose at the end of the page source:
<!-- ... hero image = ... -->. -
How can I compare a page with and without optimization?
-
Add
?spinix_io=offto the end of any page address. That page is then shown without Spinix Image Optimization. -
Why are some images not served as WebP?
-
Spinix serves a WebP version only when it is really smaller than the original. Most photos become 40-80% smaller, but a few images do not: very small icons, simple graphics with only a few colours, or JPEGs that were already compressed very hard. For these, the WebP would be the same size or even bigger, and simple graphics can lose sharpness. Spinix therefore keeps serving the original, which is already the smallest file, and shows “Already optimal · Original kept”.
This does not cost you anything in PageSpeed Insights. Google only flags an image (“Improve image delivery” / “Serve images in next-gen formats”) when converting it would save a meaningful number of bytes, so an image that WebP cannot make smaller is not flagged.
-
Which images are optimized?
-
JPEG, PNG and WebP images in the Media Library, including all sizes WordPress creates. GIF files are left as they are so animations are kept, and SVG files are left untouched.
-
Does Spinix Image Optimization send my data anywhere?
-
No. All images are optimized on your own server. The plugin does not contact any external service, does not track you and collects no data. The “Test on PageSpeed” button only opens Google PageSpeed Insights in a new browser tab with your home page address when you click it.
-
Are there hooks for developers?
-
spinix_io_webp_quality(int 1-100) – WebP quality.spinix_io_target_bytes_per_pixel(float, default 0.085) – target for PageSpeed-safe compression.spinix_io_mime_types(array) – image types to optimize.spinix_io_exclude_image(bool, string $tag) – leave an image untouched.spinix_io_process_page(bool) – skip optimization on a page.spinix_io_optimize_inline(bool) – return false to optimize uploads in the background instead of during the upload.spinix_io_fast_encoder(bool) – return false to always use the WordPress image editor.spinix_io_cron_time_budget(int seconds) – work per background run.spinix_io_write_htaccess(bool) – return false to skip the .htaccess file with cache headers in thespinix-webpfolder.spinix_io_lookup_unknown_images(bool) – find images without awp-image-IDclass by their file name.spinix_io_hero(array $choice, int $post_id) – change the hero choice of a page:array( 'mode' => 'auto'|'image'|'off', 'id' => attachment ID ).spinix_io_optimized(action, int $id, array $data) – after an image was optimized.spinix_io_before_optimize(action, int $id) – before an image is optimized.spinix_io_image_row(array $row, int $id),spinix_io_media_status_html(string $html, int $id) – extend the Images list and the Media Library column.spinix_io_admin_settings(array),spinix_io_settings_saved(action, array $input) – add settings to the Settings tab (saved with the same Save button).spinix_io_admin_tabs,spinix_io_admin_panels,spinix_io_admin_dashboard,spinix_io_admin_settings_sections,spinix_io_admin_tools,spinix_io_admin_checklist(actions) – add parts to the screen. In JavaScript,window.spinixIooffersaddFilter( 'hero' | 'rowFormats' | 'rowActions', fn )andon( 'render' | 'rows' | 'row' | 'saved' | 'response', fn ).
Resinsjes
D’r binne gjin resinsjes foar dizze plugin.
Meiwurkers & amp; Untwikkelders
“Spinix Image Optimization” is iepen boarne software. De folgjende minsken hawwe bydroegen oan dizze plugin.
MeiwurkersOersette “Spinix Image Optimization” yn jo taal.
Ynteressearre yn ûntwikkeling?
Blêdzje troch de koade , besjoch de SVN-repository , of abonnearje op it ûntwikkelingslogboek troch RSS .
Feroaringslog
1.1.0
- New: hooks for add-ons, so extensions (such as Spinix Image Optimization Pro) appear on the same screen, in the same tabs and with the same Save button.
- New: a “Pro” tab that explains what the optional Pro add-on adds. It disappears when Pro is installed. Nothing in the free plugin is locked or limited.
- New: a one-time, dismissible review request on the plugin’s own screen after it has optimized your images for a week.
1.0.0
- Initial release.
- Compression and WebP conversion of every new upload and of the existing library, with originals kept untouched. A WebP is served only when it is smaller than the original.
- Fast direct encoder (GD or Imagick) with in-memory quality search, and parallel bulk optimization with a live speed timer.
- WebP delivery with
<picture>tags or direct URL swap, including CSS background images and page builder CSS files. - Hero image priority for a better LCP: automatic detection below the site header for normal images and background images (Elementor and other page builders), preloaded per device, plus a “Spinix hero image” box in the page editor to choose the hero image yourself or switch it off for a page.
- Smart lazy loading and missing width/height for better Core Web Vitals.
- Detection of other image optimizers and of plugins that also lazy-load or prioritize images.
- Images list, Media Library column, exclusions, pause/resume, WP-CLI commands.
