WordPress OSINT, maintenance or security needs? Reach out!
TLDWP

Plugin: shortpixel-adaptive-images (Used by 1,795 domains)

ShortPixel Adaptive Images – WebP, AVIF, CDN, Image Optimization

👤 ShortPixel 📦 v3.11.2 🔗 Plugin Homepage

An easy-to-use plugin that lets you solve any problems with images and improve your website’s Core Web Vitals in a minute.

Imagine if you could solve all your website’s image-related problems and increase pagespeed and performance with a simple click, would not that be great?
Usually, images are the biggest resource on a web page. With just one click, ShortPixel Adaptive Images replaces all the pictures on your website with properly sized, smartly-cropped and optimized images and uploads them to ShortPixel’s global CDN.
And for even more Google love, the plugin delivers next-gen WebP or AVIF images to the right browsers auto-magically! 🙂

Using ShortPixel Adaptive Images also helps with Core Web Vitals (CWV)‘s Largest Contentful Paint (LCP), First Input Delay (FID) and Cumulative Layout Shift (CLS).
This is an important SEO factor that Google uses to rank pages. The smaller the CWV values are, the better for your website.

Do I need this plugin?

If you have a WordPress website with images, the answer is most likely yes!
Have you ever tested your website with tools like PageSpeed Insights or GTmetrix and received complaints that the images are not the right size or are too big? Or that you should be using “next gen” images like WebP or AVIF? Or that the website should “defer offscreen images”?
ShortPixel Adaptive Images comes to the rescue and solves the problems with images on your website in no time.
In addition to images, CSS, JS and font files are also minimized and delivered from our global CDN.

What are the benefits?

What are the features?

  • new! you can now set your custom domain to serve images or JSS/CSS files, e.g. cdn.example.com. Read more here.
  • new, lightweight, pure JavaScript Adaptive Images Engine (jQuery no longer required)
  • same visual quality, but smaller images thanks to ShortPixel algorithms
  • smart cropping – see an example
  • serve only images of appropriate size, depending on the viewport of the visitor
  • lazy load support with adjustable threshold; browser native lazy loading support is also available
  • automatically serves WebP and AVIF images to browsers that support this format. Animated GIFs are also supported and can will converted to animated WebP and animated AVIF!
  • caching and serving from a global CDN for images as well as CSS, JS and fonts
  • CSS/JS files are minimized automatically
  • all major image galleries, sliders and page builders are supported
  • onboarding wizard with a tool that suggests the best settings for each website
  • support for low quality image placeholders (LQIP)
  • support for JPEG, PNG, GIF, TIFF, BMP
  • no need for a separate AVIF or WebP converter plugin, the original images are automatically converted to WebP or AVIF
  • adjustable size breakpoints when resizing images
  • possibility to disable plugin functionality for logged in users
  • multiple types of exclusions available, including and advanced Image Checker Tool
  • Easy and Advanced mode for settings with a variety of settings for an increased flexibility of the plugin functionality

Do I need an account to test this plugin?

No, just install it and activate it on your WordPress website. You will then automatically receive 500 MB of CDN traffic every month. That’s about 500 visits/month!

How much does it cost?

When using ShortPixel Adaptive Images, only CDN traffic is counted if you choose to use our CDN. With the free plan, you get 100 credits for image optimization, which is equivalent to 500 MB of CDN traffic or about 500 visits/month. Paid plans start at $4.99 and are available as both one-time and monthly plans.
Even better, if you already use ShortPixel Image Optimizer, you can use the same credits for ShortPixel Adaptive Images!

How does it work?

Different visitors have different devices (laptop, mobile phone, tablet), each with its own screen resolution. ShortPixel AI takes into account the resolution of the device and then provides the right size image for each placeholder.
Let us take a web page with a single image of 640×480 pixels.
When viewed from a laptop, the image retains its 640×480 pixel size, but is optimized and delivered from our CDN.
When the same web page is viewed from a mobile phone, the image (for example) is resized to 300×225 pixels, optimized, and delivered via our CDN.
In this way, neither time nor bandwidth is wasted for visitors.

Other plugins by ShortPixel:

Get in touch!

WP CLI commands

Use the following WP CLI commands to clear the CSS cache and the Low Quality Image Placeholders:
wp shortpixel clear_css
wp shortpixel clear_lqips

For developers

If there are main images in the Media Library that end with the usual thumbnail size suffix (e.g. -100×100), please set this in wp-config.php:

define('SPAI_FILENAME_RESOLUTION_UNSAFE', true);

If you need to do post-processing in JavaScript after the image/tag has been updated by ShortPixel AI, you can add a callback like this:

jQuery( document ).ready(function() {
    ShortPixelAI.registerCallback('element-updated', function(elm){
        // elm is the jQuery object, elm[0] is the tag
        console.log("element updated: " + elm.prop('nodeName'));
        });
});

To change the original URL of the image that is detected by ShortPixel, use this filter that receives the original URL:

add_filter('shortpixel/ai/originalUrl', 'my_function');

To return your own custom URL for each language domain for the same website (single plugin installation), use this filter:
add_filter(‘shortpixel/ai/cdnUrl’, function($cdn_url) {
switch($_SERVER[‘HTTP_HOST’]) { //this is the domain name without protocol
case ‘mydomain.com’: //that’s your main domain
return “https://images.mydomain.com/spai”;

    case 'mydomain.fr': //that's your french language domain
        return "https://images.mydomain.fr/spai";

    default:
        return $cdn_url;
}

});

Sometimes when the option to crop images is enabled, SPAI thinks it is not safe to crop an image, but you want to crop it anyway. Please add this attribute to force cropping:

ShortPixel Adaptive Images triggers a JS event after the initial processing of the HTML page in the browser: spai-body-handled, an event after each processed DOM mutation when at least one URL has been replaced: spai-block-handled and an event after the URL of each element has its URL updated lazily ( entering the viewport): spai-element-handled

To exclude certain images, you can also add the following attributes within the ‘IMG’ tag to the markup:

     --> this will completely exclude from processing the image which has this attribute;
     --> this will exclude the image from being lazy-loaded by the plugin;
     --> this will prevent the image from being resized by the plugin.

For adding custom replacement rules use:

add_filter('shortpixel/ai/customRules', 'my_function');

The function is given an array and should append ShortPixel\AI\TagRule instances to the given array , as in the example below.
A real-world example of custom image attributes, a custom srcset, and a custom JSON data attribute:

add_filter('shortpixel/ai/customRules', 'spai_to_iconic');
function spai_to_iconic($tagRules) {
    //lazy-loaded data-iconic-woothumbs-src attribute
    $tagRules[] = new ShortPixel\AI\TagRule('img', 'data-iconic-woothumbs-src');
    //eager attribute
    $tagRules[] = new ShortPixel\AI\TagRule('img', 'data-large_image', false, false, false, false, true);
    //lazy srcset style attribute.
    $tagRules[] = new ShortPixel\AI\TagRule('img', 'srcset', false, false, false, false, false,
                    'srcset', 'replace_custom_srcset');
    $tagRules[] = new ShortPixel\AI\TagRule('div', 'data-default', 'iconic-woothumbs-all-images-wrap', false, false, false, false,
                        'srcset', 'replace_custom_json_attr');
    return $tagRules;
}

The parameters of the rule are, in this order:
* tagName – the tag name
* attribute to be replaced
* classFilter – only elements having the class, default false
* attrFilter – only elements having the attribute, default false
* attrValFilter only elements having the attribute with the specified value, default false
* mergeAttr – advanced usage (see code), default false
* eager – if true the image is replaced server-side, otherwise is lazy-loaded
* type – advanced usage (see code), default is ‘url’, can also be ‘srcset’ if it has a srcset or json structure
* callback – advanced usage (see code), default false. Needs to be ‘replace_custom_srcset’ if the type is srcset, or ‘replace_custom_json_attr’ if the type is json
* quickMatch – advanced usage (see code), default false
* frontEager -advanced usage (see code), default false

In the same manner if you need a rule to be applied only on the front-end (javascript) you can use the following filter:

add_filter('shortpixel/ai/customFrontendRules', 'my_function');

This rule will only be applied by the New JS Engine (so you need to have the option enabled) and is useful if you have content that is rendered by JavaScript and you need the replacement to be made after the content is rendered.

DomainExposuresHeadersLast Checked
s*r*n*s*c*a*s.com F 2026-04-21 17:26:23
m*t*l*a*t*c*e*e.com F 2026-04-21 17:23:50
c*b*n*t*s*c*n*e*l.com (WP 6.9.4) 🔓 F 2026-04-21 16:52:55
o*t*e*t*l*w*i*m.com F 2026-04-21 15:48:02
o*t*e*t*l*w.com F 2026-04-21 15:48:02
f*n*p*t*p*.com (WP 6.9.4) D 2026-04-21 15:40:18
y*u*h*g*i*i*g*h*n*e.com D 2026-04-21 15:14:14
d*c*a*i.com F 2026-04-21 14:46:22
t*o*o*s.com C 2026-04-21 14:12:49
t*o*s*o*e*o*y*o*y.com (WP 6.9.4) F 2026-04-21 13:25:03
f*n*c*r*p*.com (WP 6.9.4) D 2026-04-21 12:48:44
d*a*n*p*o*o*r*p*y.com (WP 6.8.3) 🔓 F 2026-04-21 10:44:45
b*t*s*o*b*s*n*s*.com (WP 5.8.13) ⚠️ F 2026-04-21 09:38:47
a*i*o*a*d*i*t*o*.com F 2026-04-21 09:36:17
m*r*y*o*l*c*o*.com (WP 5.4.19) ⚠️ F 2026-04-21 09:32:13
o*i*g*r*o*.com (WP 6.9.4) F 2026-04-21 06:40:06
k*d*c*p*o*u*t*o*s.com F 2026-04-21 04:58:43
a*i*a*d*a*h*l.com A 2026-04-21 04:18:51
j*h*w*l*o*r*.powerathletehq.com F 2026-04-21 03:47:10
y*s*i*t*l*a.com F 2026-04-21 03:36:33
r*v*r*i*e*a*e*r*c*.com D 2026-04-21 03:27:49
t*a*g*f*e*n*l*e.com (WP 6.7.5) F 2026-04-21 03:17:59
o*i*n*p*r*o*e.com (WP 6.0.11) ⚠️ F 2026-04-21 02:55:54
y*r*b*r*s*o*k.com (WP 6.9.4) D 2026-04-21 02:40:31
r*v*r*a*k.com F 2026-04-21 02:20:02
r*v*r*n*r*i*r*s*a*r*n*.com (WP 6.9.4) F 2026-04-21 01:19:32
s*o*y*o*d*.com (WP 6.9.4) D 2026-04-21 00:27:30
e*d*.pe (WP 4.9.4) ⚠️ F 2026-04-21 00:01:40
t*e*i*t*d*o*e.co.uk F 2026-04-20 23:40:12
s*o*m*a*a*e.com F 2026-04-20 23:27:16
f*g*a*i*e*.com (WP 6.9.4) F 2026-04-20 20:29:22
t*r*e*i*g*r*.com F 2026-04-20 19:50:23
h*v*m*s*a*a*.com F 2026-04-20 19:39:50
w*b*2.it (WP 5.7.15) ⚠️ F 2026-04-20 19:25:09
n*p*a*a*q*a.it D 2026-04-20 19:25:08
m*t*n*-*a*t*n*e*o.it D 2026-04-20 19:25:08
m*d*a*a*.it D 2026-04-20 19:25:08
r*s*t*l*f*c*m*u*i*y*u*p*r*.com F 2026-04-20 19:06:24
g*l*s*o*.nl (WP 6.9.4) F 2026-04-20 18:08:20
k*t*y*c*r*o*l.com D 2026-04-20 17:49:33
m*n*a*i*.com 🔓 D 2026-04-20 17:29:58
o*a*g*t*n*o*f*e.com D 2026-04-20 16:21:03
s*o*x*m*o*l*n*.com (WP 6.9.4) F 2026-04-20 15:43:29
o*a*g*u*a*-*a*f*e.com D 2026-04-20 14:37:23
o*a*g*u*a*-*o*f*e.com D 2026-04-20 14:37:23
b*y*a*b*o*.com (WP 6.9.4) F 2026-04-20 14:12:59
t*m*o*f*r*n*e.org (WP 6.6.1) F 2026-04-20 12:57:52
t*n*h*p*e*s.com F 2026-04-20 11:49:28
f*.matomo.org C 2026-04-20 10:39:09
t*l*o*f*.com F 2026-04-20 08:41:38
t*l*o*f.com F 2026-04-20 08:41:38
f*3*.com (WP 6.9.4) D 2026-04-20 08:37:28
m*l*n*a*e*t*t.com F 2026-04-20 08:04:11
b*s*u*d*o*g*n*c*.com F 2026-04-20 07:56:54
o*t*c*n*o*r*n*.com F 2026-04-20 06:13:31
b*s*n*s*n*t*o*k*n*w*r*s*o*.com F 2026-04-20 06:03:05
o*t*c*a*d*r*a*a.com F 2026-04-20 05:50:08
o*t*c*-*n*o*r*n*.com F 2026-04-20 05:47:21
h*-*o*t*a*e*v*r*l*i*h.de (WP 6.9) F 2026-04-20 04:51:47
h*r*y*t*n.com F 2026-04-20 02:57:18
o*i*p*o*u*t*o*s.com F 2026-04-20 02:28:15
k*n*e*f*h*r*d*i*z*t*s*.com (WP 6.1.1) ⚠️ F 2026-04-20 02:20:17
f*r*c*i*f*a*c*r*s*r*.com (WP 6.9.4) F 2026-04-20 01:03:11
s*e*n*a*d*r*e*j*e*.com F 2026-04-20 00:22:21
r*c*s*i*e*.com (WP 6.9.4) D 2026-04-19 23:12:47
j*b*r*i*i*g*u*.com F 2026-04-19 22:10:44
k*m*r*p*i*t*n*.com F 2026-04-19 22:07:57
t*l*t*m*e*s.ca (WP 6.9.4) D 2026-04-19 21:37:40
f*r*i*a*d*e*i*h*r.com F 2026-04-19 21:29:34
m*t*m*t*r*y*l*s*p*i*.com (WP 6.2) ⚠️ F 2026-04-19 20:50:42
o*e*a*m*o*d*n*s.com F 2026-04-19 20:47:10
r*c*a*d*u*t*n*e*i*n.com (WP 6.9.4) D 2026-04-19 20:44:00
a*u*r*u*f*i*n*.com (WP 6.9.4) F 2026-04-19 20:24:48
r*c*a*d*a*k*o*-*l*s*.com F 2026-04-19 19:57:42
r*c*a*d*a*i*p*o*o*r*p*y.com (WP 6.9.4) F 2026-04-19 19:40:52
f*n*e*a*d*o*e*o.com F 2026-04-19 18:23:27
f*n*e*i*t*i*u*o*s*l.com (WP 5.5.18) ⚠️ F 2026-04-19 18:12:04
t*b*t*o*u*.travel F 2026-04-19 17:15:10
d*s*g*f*s*t*a*k.com F 2026-04-19 15:42:11
o*t*e*h*n*c*l.com F 2026-04-19 14:14:53
e*f.vc B 2026-04-19 13:58:20
f*l*p*w*l*.com (WP 6.9.4) F 2026-04-19 13:39:07
h*l*i*r*v*s*o*.com F 2026-04-19 13:25:25
c*n*t*2*.wpengine.com F 2026-04-19 12:49:08
j*s*n*e*o*s.com (WP 6.8.1) F 2026-04-19 12:43:27
s*e*a*i*j*r*e.com (WP 5.8.13) ⚠️ F 2026-04-19 12:24:34
k*d*c*p*p*o*u*t*o*s.com F 2026-04-19 12:15:26
a*p*i*e*e*t*.com (WP 6.8.2) C 2026-04-19 11:18:55
a*p*i*.com (WP 6.8.2) C 2026-04-19 11:18:55
d*s*r*p*i*e*e*e*r*h.com (WP 6.9.4) F 2026-04-19 09:25:24
a*p*i*d*m*r*v*s*t*o*k*1*.com F 2026-04-19 07:54:07
v*v*n*r*o*i*.com (WP 6.9.4) F 2026-04-19 06:49:03
b*i*d*n*s*c*r*t*.com B 2026-04-19 06:35:43
o*l*n*s*n*i*g*e*s*n*c*.com (WP 6.4.8) ⚠️ F 2026-04-19 05:47:54
m*e*c*e*t*v*.com (WP 6.8.1) F 2026-04-19 02:39:47
e*o*e*e*g*.in (WP 6.9.4) D 2026-04-19 01:34:44
t*u*t*d*o*l.com (WP 6.9.4) F 2026-04-19 00:44:40
n*s*.org C 2026-04-19 00:12:50
a*o*k*t*u*o*d*e*s*s.com F 2026-04-18 23:12:43
t*u*s*r*d*e.com (WP 6.8.1) F 2026-04-18 23:04:26

Top 50 Plugins

Plugin Count
elementor 2,445,231
contact-form-7 2,220,648
elementor-pro 1,379,303
woocommerce 1,143,781
revslider 827,215
js_composer 544,092
jetpack 487,323
wp-rocket 398,176
essential-addons-for-elementor-lite 370,785
header-footer-elementor 313,894
gutenberg-core 296,525
elementskit-lite 293,768
gravityforms 290,665
instagram-feed 283,026
google-analytics-for-wordpress 279,675
complianz-gdpr 275,213
google-site-kit 272,661
cookie-law-info 268,923
sitepress-multilingual-cms 240,854
bluehost-wordpress-plugin 225,598
wpforms-lite 217,902
astra-sites 210,379
litespeed-cache 192,054
gtranslate 165,117
gutenberg 161,373
cookie-notice 157,748
coblocks 155,492
the-events-calendar 140,489
popup-maker 132,457
astra-addon 120,870
bb-plugin 119,992
premium-addons-for-elementor 119,619
LayerSlider 117,351
mailchimp-for-wp 116,139
wp-smushit 115,765
tablepress 113,804
creame-whatsapp-me 105,288
duracelltomi-google-tag-manager 104,768
woocommerce-gateway-stripe 101,920
cleantalk-spam-protect 101,079
pro-elements 100,842
custom-fonts 100,795
akismet 99,711
click-to-chat-for-whatsapp 98,839
honeypot 98,360
smart-slider-3 96,900
megamenu 96,800
fusion-builder 95,419
pixelyoursite 94,312
formidable 91,967

Top 50 Themes

Theme Count
hello-elementor 791,754
Divi 651,874
astra 638,423
pub 198,997
generatepress 148,539
flatsome 148,049
Avada 145,070
h4 118,235
oceanwp 108,498
kadence 96,892
enfold 84,042
salient 81,017
bb-theme 76,055
twentytwentyfour 74,028
blocksy 70,940
twentytwentyfive 69,005
cocoon-master 68,877
betheme 66,038
twentyseventeen 65,444
dt-the7 54,654
woodmart 52,853
neve 47,768
twentytwentyone 41,438
bridge 40,735
Avada-Child-Theme 38,554
swell 36,756
gox 36,222
twentytwenty 36,033
lightning 35,692
twentytwentythree 33,905
bricks 29,400
Impreza 29,371
Newspaper 26,799
twentytwentytwo 26,445
epik-redesign 23,066
pro 21,916
storefront 21,852
extendable 21,847
uncode 21,553
twentysixteen 21,239
yith-wonder 20,232
sydney 19,913
themify-ultra 18,862
Total 17,795
twentyfifteen 16,937
porto 16,182
hestia 15,701
yootheme 14,811
thrive-theme 14,743
twentynineteen 14,661