ShortPixel Image Optimizer 6.5.0

Does ShortPixel Image Optimizer work with WordPress 6.9.4 and PHP 8.1.12? A smoke test was performed on .

Summary

Errors
2PHP fatal errors
No JavaScript exceptions
All test pages loaded successfully
No resource errors
Performance

Memory usage: 307.06 KiB
The average PHP memory usage increased by this amount after activating by the plugin.

Page speed impact: insignificant.
The plugin didn't make the site noticeably slower.

Environment
WordPress version6.9.4
PHP version8.1.12
MySQL version10.6.10
PHP memory limit512M
Plugin Info
Last updated
Active installs 300,000+
WordPress.org page https://wordpress.org/plugins/shortpixel-image-optimiser/
Badges

WordPress compatibility badge PHP compatibility badge

Get badge code

Pages 5

ShortPixel Settings ‹ Test site — WordPress

Page screenshot: ShortPixel Settings ‹ Test site — WordPress
URL /wp-admin/options-general.php?page=wp-shortpixel-settings
Requested URL /wp-admin/plugins.php?action=activate&plugin=shortpixel-image-optimiser%2Fwp-shortpixel.php&plugin_status=all&paged=1&s&_wpnonce=8badd2a3d5
Aspect after-activation
HTTP status 200
Load time 1.845 s
Memory usage N/A
JS errors None
Resource errors None

Media → Custom Media

Page screenshot: Media → Custom Media
URL /wp-admin/upload.php?page=wp-short-pixel-custom
Aspect menu-item
HTTP status 200
Load time 0.383 s
Memory usage 3.96 MiB
JS errors None
Resource errors None

Media → Bulk ShortPixel

Page screenshot: Media → Bulk ShortPixel
URL /wp-admin/upload.php?page=wp-short-pixel-bulk
Aspect menu-item
HTTP status 200
Load time 0.483 s
Memory usage 5.21 MiB
JS errors None
Resource errors None

Settings → ShortPixel

Page screenshot: Settings → ShortPixel
URL /wp-admin/options-general.php?page=wp-shortpixel-settings
Aspect menu-item
HTTP status 200
Load time 0.391 s
Memory usage N/A
JS errors None
Resource errors None

Test site – Just another WordPress site

Page screenshot: Test site – Just another WordPress site
URL /
Aspect front-page
HTTP status 200
Load time 0.183 s
Memory usage 4.31 MiB
JS errors None
Resource errors None

Benchmark

URL Load time Memory usage
Inactive Active Change Inactive Active Change
/wp-admin/index.php0.361 s0.472 s+0.111 s3.78 MiB4.1 MiB+ 334.23 KiB
/wp-admin/edit.php0.336 s0.339 s+0.003 s3.78 MiB4.11 MiB+ 330.35 KiB
/wp-admin/post-new.php0.807 s0.884 s+0.077 s6.31 MiB6.61 MiB+ 311.14 KiB
/wp-admin/upload.php0.420 s0.424 s+0.004 s3.74 MiB4.33 MiB+ 607.48 KiB
/wp-admin/options-writing.php0.314 s0.301 s-0.013 s3.71 MiB3.96 MiB+ 251.71 KiB
/wp-admin/media-new.php0.493 s0.544 s+0.051 s3.7 MiB3.96 MiB+ 267.68 KiB
/wp-admin/edit-tags.php?taxonomy=category0.301 s0.295 s-0.006 s3.72 MiB3.98 MiB+ 270.68 KiB
/wp-admin/post-new.php?post_type=page0.794 s0.667 s-0.127 s6.3 MiB6.59 MiB+ 304.63 KiB
/wp-admin/options-discussion.php0.311 s0.335 s+0.024 s3.71 MiB3.96 MiB+ 248.22 KiB
/wp-admin/edit-comments.php0.303 s0.309 s+0.006 s3.73 MiB3.98 MiB+ 247.81 KiB
/0.253 s0.178 s-0.075 s4.11 MiB4.31 MiB+ 203.73 KiB
Average 0.427 s0.432 s+0.005 s4.24 MiB4.53 MiB+ 307.06 KiB

Code Statistics

Note: Third-party libraries and minified JS/CSS files are excluded from these statistics where possible, so the numbers you see here may be lower than those reported by other tools.

PHP
JavaScript
CSS
Sass
Language % Lines of code Comment lines Files
PHP61.9%34,7094,018172
JavaScript13.2%7,39151419
CSS11.9%6,69811913
Sass9.7%5,45729935
SVG2.9%1,649470
Markdown0.2%11101
JSON0.2%8606
Total 56,101 4,954 316

PHP Code Analysis | More results »

Lines of code 29,887
Total complexity 6,306
Median class complexity 27.0
Median method complexity 2.0
Most complex class ShortPixel\Model\Image\MediaLibraryModel
Most complex function ShortPixel\Model\Image\MediaLibraryModel::checkLegacy()
Classes 124
Methods 1,539
Functions 1

Additions

Things that the plugin adds to the site. This section is not intended to be comprehensive. The test tool only looks for a few specific types of added content.

Database Tables 5

Options wp_options 5

User Metadata wp_usermeta 1

PHP Error Log 32 lines

[05-May-2026 12:58:53 UTC] PHP Fatal error:  Uncaught TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given in /wp-content/plugins/shortpixel-image-optimiser/class/view/settings/part-exclusions.php:35
Stack trace:
#0 /wp-content/plugins/shortpixel-image-optimiser/class/view/settings/part-exclusions.php(35): in_array()
#1 /wp-content/plugins/shortpixel-image-optimiser/class/ViewController.php(128): include('...')
#2 /wp-content/plugins/shortpixel-image-optimiser/class/view/view-settings.php(186): ShortPixel\ViewController->loadView()
#3 /wp-content/plugins/shortpixel-image-optimiser/class/ViewController.php(128): include('...')
#4 /wp-content/plugins/shortpixel-image-optimiser/class/Controller/View/SettingsViewController.php(573): ShortPixel\ViewController->loadView()
#5 /wp-content/plugins/shortpixel-image-optimiser/class/Controller/View/SettingsViewController.php(93): ShortPixel\Controller\View\SettingsViewController->load_settings()
#6 /wp-content/plugins/shortpixel-image-optimiser/shortpixel-plugin.php(750): ShortPixel\Controller\View\SettingsViewController->load()
#7 /wp-includes/class-wp-hook.php(341): ShortPixel\ShortPixelPlugin->route()
#8 /wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters()
#9 /wp-includes/plugin.php(522): WP_Hook->do_action()
#10 /wp-admin/admin.php(264): do_action()
#11 /wp-admin/options-general.php(10): require_once('...')
#12 {main}
  thrown in /wp-content/plugins/shortpixel-image-optimiser/class/view/settings/part-exclusions.php on line 35
[05-May-2026 12:58:56 UTC] PHP Fatal error:  Uncaught TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given in /wp-content/plugins/shortpixel-image-optimiser/class/view/settings/part-exclusions.php:35
Stack trace:
#0 /wp-content/plugins/shortpixel-image-optimiser/class/view/settings/part-exclusions.php(35): in_array()
#1 /wp-content/plugins/shortpixel-image-optimiser/class/ViewController.php(128): include('...')
#2 /wp-content/plugins/shortpixel-image-optimiser/class/view/view-settings.php(186): ShortPixel\ViewController->loadView()
#3 /wp-content/plugins/shortpixel-image-optimiser/class/ViewController.php(128): include('...')
#4 /wp-content/plugins/shortpixel-image-optimiser/class/Controller/View/SettingsViewController.php(573): ShortPixel\ViewController->loadView()
#5 /wp-content/plugins/shortpixel-image-optimiser/class/Controller/View/SettingsViewController.php(93): ShortPixel\Controller\View\SettingsViewController->load_settings()
#6 /wp-content/plugins/shortpixel-image-optimiser/shortpixel-plugin.php(750): ShortPixel\Controller\View\SettingsViewController->load()
#7 /wp-includes/class-wp-hook.php(341): ShortPixel\ShortPixelPlugin->route()
#8 /wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters()
#9 /wp-includes/plugin.php(522): WP_Hook->do_action()
#10 /wp-admin/admin.php(264): do_action()
#11 /wp-admin/options-general.php(10): require_once('...')
#12 {main}
  thrown in /wp-content/plugins/shortpixel-image-optimiser/class/view/settings/part-exclusions.php on line 35
See also: All tests for this plugin, How to Hide ShortPixel Image Optimizer Admin Menus