ShortPixel Image Optimizer


A freeemium easy to use, comprehensive, stable and frequently updated image optimization plugin supported by the friendly team that created it. πŸ™‚

Increase your website’s SEO ranking, number of visitors and ultimately your sales by optimizing any image or PDF document on your website.
ShortPixel is an easy to use, lightweight, install-and-forget-about-it image optimization plugin that can compress all your past images and PDF documents with a single click. New images are automatically resized/rescaled and optimized on the fly, in the background.

This plugin uses minimal resources and works well with any shared, cloud, VPS or dedicated web hosting. It can optimize any image you have on your website even the images that aren’t listed in Media Library like those in galleries like NextGEN or added directly via FTP!

Both lossy and lossless image compression is available for the most common image types (JPG, PNG, GIF and WebP) plus PDF files. Optimized images mean better user experience, better PageSpeed Insights or GTmetrix results, better Google PageRank and more visitors.

Make an instant image compression test on your site or compress some images to make sure they are to your liking.

Why is ShortPixel the best choice when it comes to image optimization or PDF compression?

  • popular plugin with over 30,000 active installations according to WordPress
  • compress JPG, PNG, GIF (still or animated) images and also PDF documents
  • no file size limit
  • option to freely convert any JPEG, PNG or GIF (even animated ones!) to WebP for more Google love. How to enable WebP?
  • compatible with WP Retina 2x – all retina images are automatically compressed. How to benefit from Retina displays?
  • optimize thumbnails as well as featured images
  • ability to optimize any image on your site including images in NextGEN Gallery and any other image gallery or slider
  • featured images can be rescaled before being optimized with 2 different options. No need for additional plugins like Imsanity
  • CMYK to RGB conversion
  • 24h stellar support (24/7) directly from developers.
  • easily test lossy/lossless versions of the images with a single click in your Media Library
  • great for photographers: keep or remove EXIF data from your images, compress images with lossless option
  • works well with both HTTPS and HTTP websites
  • you can run ShortPixel plugin on multiple websites or on a multisite with a single API Key
  • it is safe to test and use the plugin: all the original images can be restored with a click
  • ‘Bulk’ optimize all the existing images in Media Library or in any gallery with one click
  • works great for eCommerce websites using WooCommerce or other plugins
  • works great with NextGEN gallery, Foo Gallery and any other galleries and sliders
  • compatible with WP Engine hosted websites and all the major hosting providers
  • compatible with WPML and WPML Media plugins
  • skip already optimized images
  • compatible with watermarking plugins
  • option to deactivate auto-optimizing images on upload
  • images that are optimized less that 5% are bonus
  • 40 days optimization report with all image details and overall statistics
  • free optimization credits for non-profits, contact us for details

Eager to test how it works?
Give it a spin on a test environment (thanks addendio!)

How much it costs?
ShortPixel comes with 100 free credits/month and additional credits can be bought with as little as $4.99 for 5,000 image credits.
Check out our prices

β˜…β˜…β˜…β˜…β˜… A Super Plugin works very well 62% reduction overall. robertvarns
β˜…β˜…β˜…β˜…β˜… The secret sauce for a WordPress website. mark1mark
β˜…β˜…β˜…β˜…β˜… A must have plugin, great support! ElColo13
β˜…β˜…β˜…β˜…β˜… Excellent Plugin! Even Better Customer Service! scaliendo
β˜…β˜…β˜…β˜…β˜… Great image compression, solid plugin, equally great support. matters1959
more testimonials

Help us spread a the word by recommending ShortPixel to your friends and collect 100 additional image credits for each referred sign up. Make money by promoting a great plugin with our 50/50 affiliate program.

Get in touch!

Keywords: picture, optimization, image editor, pngout, upload speed, shortpixel, compression, nextgen, nextgen gallery optimizer, jpegmini, webp, lossless, cwebp, media, jpegtran, image, image optimisation, image optimization, shrink, picture, photo, optimize photos, compress, performance, tinypng, crunch, pngquant, attachment, optimize, pictures, fast, images, image files, image quality, lossy, upload, kraken, resize, seo, smushit, optipng, kraken image optimizer, ewww, photo optimization, gifsicle, image optimizer, images, krakenio, png, gmagick, image optimize, pdf, pdf optimisation, pdf optimization, optimize pdf, optimise pdf, shrink pdf, jpg, jpeg, jpg optimisation, jpg optimization, optimize jpg, optimise jpg, shrink jpg, gif, animated gif, optimize gif, optimise gif, optimizer, optimiser, compresion, optimization, cruncher, image cruncher, compress png, compress jpg, compress jpeg, compress pdf, faster loading times, image optimiser, improve pagerank, optimise, optimize animated gif, optimise jpeg, optimize jpeg, optimize png, optimise png, optimise pdf, optimize pdf, tinyjpg, short pixel, shortpixel, woocommerce compatible, wpml compatible, smush, imsanity, scale, wp smush, compress images, pdf compression, optimize images, shrink jpeg, compressor, faster website, google pagerank, imagify, prizm, optimus, zara, improve page speed, PageSpeed Insights, sitespeed, smaller images, tinyjpeg, wordpress compression, wordPress image tool, reduce image size, bandwidth, pics, keep exif, remove exif, speed up site, speed up website, compress thumbnails, optimize thumbnails


  • Activate your API key in the plugin Settings. (Settings>ShortPixel)

  • Check out the main settings after API key activated. (Settings>ShortPixel)

  • Tweak it using Advanced settings. (Settings>ShortPixel)

  • Compress all your past images with one click. (Media>Bulk ShortPixel)

  • Check the progress of your bulk optimization process. (Media>Bulk ShortPixel)

  • Check your stats: number of processed files, saved space, average compression, saved bandwidth, remaining images. (Settings>ShortPixel)

  • Check images optimization status, restore or reoptimize the image. (Media>Library)

  • Check image optimization details. (Media>Library->Edit)

  • Check other optimized images status - themes or other plugins' images. (Media>Other Media)


What happens to the existing images, when installing the ShortPixel plugin?

Just installing the plugin won’t start the optimization process on existing images. To begin optimizing the images previously loaded on your website, you should:

  • Go to Media Library, and select which of the existing images you want to optimize.


  • Use the Bulk ShortPixel option, to automatically optimize all your previous library.
Should I pick lossy or lossless optimization?

This depends on your compression needs. Lossy has a better compression rate than lossless compression. The resulting image is not 100% identical with the original. Works well for photos taken with your camera.

With lossless compression, the shrunk image will be indistinguishable from the original, and smaller in size. Use this when you do not want to loose any of the original image’s details. Works best for technical drawings, clip art and comics.

For more information about the difference read the Wiki article on the lossy/lossless difference.

Why do I need an API key?

ShortPixel Image Optimizer uses automated processes to crunch images. The ShortPixel API integrates in the dashboard of your WordPress website and processes both old and new images automatically. You can also use the same API, multiple times, in your own applications, the Documentation API shows you how.

Where do I get my API key?

To get your API key, you must Sign up to ShortPixel. You will receive your personal API key in a confirmation email to the address you provided. Use your API key to activate ShortPixel plugin in the ‘Plugins’ menu in WordPress.

Where do I use my API key?

You use the API key in the ShortPixel plugin Settings (don’t forget to click Save Settings). The same API key can be used on multiple websites/blogs.

How do I activate the API key on a multisite?

You have to activate the plugin in the network admin and then activate it manually on each individual site in the multisite. Once you have done that, the Settings menu appears and you can add the API key for each individual site.

As an alternative, you can edit wp-config.php and add this line
where ‘APIKEY’ is the API Key received upon sign up.

If configured that way, the API key will be used for all the sites of the multisite but will only be visible on the main site’s Settings page, being hidden for the rest of the sites.

How does Bulk Optimization work?

The Bulk option makes ShortPixel optimize all your images at once (not one by one). You can do this in the Media > Bulk ShortPixel section by clicking on the Compress all your images button.

The batch optimization may work slower, depending on your existing image gallery. Please be patient and do not close the WordPress admin while you are rolling the Bulk Processing on your media gallery.

Are my images safe?

Yes, privacy is guaranteed. The ShortPixel encryption process doesn’t allow anyone to view your photos.

What happens with my original images after they have been processed with ShortPixel?

If you didn’t make any changes in the plugin Settings and you left the ‘Image backup’ option checked, the originals will be located in a backup folder at:


After optimization, if you want to switch back to a certain original image, hit Restore backup in the Media Library. If you are happy with the optimized images, you can deactivate saving the backups in the plugin Settings.

What types of formats can be optimized?

For now, ShortPixel supports JPEG, PNG, PDF and GIF formats. Animated GIFs and thumbnails are also optimized. Additional formats are scheduled for optimization in the future.

Will ShortPixel work if my website is using CloudFare?

Yes, the image processing happens without interfering with the CloudFare protection. The ShortPixel and CloudFare plugins are also compatible.

I’m stuck. What do I do?

The ShortPixel team is here to help. Contact us!


Very convenient and well integrated

Robert Reiser

I tested this plugin against a subset of my (what I thought were already highly compressed) images just to find out that this plugin reduced the sizes by another 20%. Very impressed, especially given the display quality of the compressed pictures. The free version is probably good enough to get you started on a smaller blog, and the integrated backup system ensures you can roll back to the original version should you ever want/have to.

Read all 179 reviews



  • fix for PHP7.1 fatal error when encountering corrupt metadata (wp_get_attachment_metadata returning empty string)


  • fix not processing the images in the custom image folders if they had uppercase extensions
  • remove the deprecated mcrypt calls.
  • fix jQuery 3.x incompatibility when calling .unload() by using on(“beforeunload” .. ) instead


  • fix compatibility with older PHP by not using closure
  • fix order of optimization of other media – by id not by added timestamp
  • fix js error for manual optimization from js-generated button
  • change call to obsolete get_currentuserinfo method


  • offer to generate the API key directly from ShortPixel settings.
  • alert and explain why is not allowed to specify a size less than 1024 when resizing.
  • fix metadata for missing thumbs while optimizing.
  • button Cleanup&Retry for images that have missing thumbnails.
  • display what thumbnails are missing.
  • for Windows platforms, do not check the local path to start with a slash
  • fix optimization for images that contain ‘+’ in the path
  • use different styles for bulk boxes instead of the notice class
  • properly display from the start the number of images to be optimized on the bulk button, when thumbnails are not selected.
  • fix for sites that have admin urls with a doubled slash like wp-admin//uploads.php
  • fix JS error on bulk finished page and new images optimizing
  • fix bulk hangup when encountering a block of more than 900 wp_postmeta lines that are not image metadata.
  • fix for cases when the wp-content path returned by wordpress contains backpath items (like wp/../wp-content)
  • fix not saving advanced settings on “Save and go to Bulk” button.


  • meta box in Media Library image editing form with informations about optimization status and results
  • delete WebP images when image is deleted from Media Library
  • change language domain to match the plugin slug in order to be automatically translatable on


  • multilanguage support
  • add retinas count to the ShortPixel Compression column
  • add option not to automatically optimize Media Library images when added
  • fix the size bug happening when optimizing main image then optimizing only thumbnails with resize active
  • restrict log messages to SHORTPIXEL_DEBUG instead of WP_DEBUG
  • fix compatibility with WP < 3.9
  • fix compatibility with watermarking plugins like Image Watermark
  • fix compatibility with WPBakery Visual Composer


  • fix backup thumbnail js error


  • fix processing for sites with caps path like
  • fix WebP generation for images that are already optimized


  • readme updates – links to informative articles
  • show that WebP format is created free of charge
  • hide the Advanced settings tab completely before API Key validation
  • fix indefinite retries when wrong image size
  • restrict debug mode to ShortPixel own define


  • fix path problems on multisite on Windows


  • fix debug mode too intrusive


  • bulk slider fix


  • settings fix


  • retina images support – optimize also retina images
  • WebP support – option to generate also WebP images
  • optimize other media folders also from the root of the site, not only in wp-content
  • restore and re-optimize other media images
  • resize options – defined rectangle to be contained in the resized image or the resized image to contain the defined rectangle


  • fix compatibility with PHP 5.2
  • fix for URLs like


  • Optimize from the front-end option


  • Custom folders optimization
  • NextGen galleries optimization


  • Fix Settings Resources display
  • Add user and password authentication option for downloading images
  • fix for PHP installs that lack utf8_encode function
  • retry from the optimize Ajax post when server sends a 500 error


  • Compatibility with WPML Media plugin
  • Fix ListView link on multisites
  • Fix for server configurations that have max_execution_time = 0


  • fix for PHP installs that are missing the mcrypt functions


  • small fix to the quota revalidation process


  • reoptimize lossless/lossy
  • optimize thumbs for images already optimized
  • compatibility with WPML


  • old PHP compatibility fix


  • ICC color profile is always preserved.
  • possibility to hide the API key in a multisite install.
  • detection of best protocol to use: https / http.


  • option to keep the EXIF data and ICC profile.
  • more explanations on settings.


  • fix reloading bulk page on quota used up


  • bugfixes


  • look and feel improvements


  • longer timeout for the API Key validation postback


  • fix bug in bulk processing


  • fix problems with activating the keys on some systems that do not allow post requests


  • bulk runs now only on media and post pages
  • settings page redesign
  • client site access test from our servers when activating the API key and warn if site not accessible
  • fix last image sometimes unprocessed by bulk
  • fix progress bar to advance when skipping images


  • fix calculation of displayed counters of images to be processed on bulk start
  • fix restore option that appeared wrongly sometimes – thanks to Bogdan GΓΌnther @


  • rescale big images option – thanks to Bogdan GΓΌnther @
  • referral system
  • show how many thumbs are optimized for each image
  • fix the Visual Composer conflict – thanks to Andy Adams –


  • fix issue with files in /tmp dir that weren’t deleted in certain cases, issue noted by Daniel –


  • Affiliate codes
  • Solve conflict with wp-ses plugin
  • skip image on _FAIL message
  • mixed content warning fix


  • Optimized bulk processor behaviour when navigating from one admin page to another.
  • Improved some explanatory texts.


  • different bug fixes


  • Progress bar improvements


  • Major update
  • when validating the API Key on a multisite a message with instructions on how to add the API Key in wp-config.php is displayed
  • check when an optimized image cannot be saved and stop bulk processing (if running)
  • restore backup is not displayed when option is not activated
  • change image status in the Media Library ShortPixel Compression column imediately after the image is reduced, not only after reloading the page. Add spinner to the “Image waiting to be processed” status.
  • images with relative URLs are converted to absolute URL so they can be processed by the plugin
  • proper handling of images with non-standard latin chars inside
  • better average compression computation
  • rewritten handleImageUpload
  • removed MUST_HAVE_KEY
  • changed isProcessable
  • and others πŸ™‚


  • Check if the server address is localhost and warn when activating the API key.
  • Quota exceeded now displays a link to billing page


  • improved texts/explanations for different sections
  • added extra option to convert CMYK to RGB for further size reduction
  • display credits for one time payments as well
  • API Key can also be configured in wp-config.php like this: define(‘SHORTPIXEL_API_KEY’, ‘YOUR_API_KEY’); Useful for multisite installations


  • improved checking and reporting of firewall restriction on client side
  • optimized files are saved in the right location when dealing with WP Multisite
  • updated screenshots


  • improved login procedure upon quota is exceeded
  • when quota is exceeded user can more easily increase it
  • extra warning regarding the number of thumbs available additionally to main images
  • improved counting of images
  • check if https works if not use http for communications with the API
  • better handling of error messages when API service cannot be contacted


  • visiting Settings/ShortPixel now resets the Queue flag
  • when plgin’s API Key cannot be validated the JS script that calls admin-ajax.php is stopped
  • return meaningful message on Media Library listing when API Key is not valid
  • extra check for API Key validation


  • fixed global variable issue for some variables
  • fixed API Key validation that occurred for some of the hosting providers out there when HTTPS was used


  • when backup wasn’t activated the processed files weren’t put in the right place
  • removed forgotten debug message
  • changed “optimised” to “optimized”. Welcome USA πŸ™‚
  • improved bulk handling and also “cancel” and “resume” options
  • fixed conflict with wpmandrill on wp_mail function


  • fixed condition that hanged bulk processing sometimes
  • added “Reduced by” text
  • more useful wrong/missing API Key message
  • test if a backup dir can be created upon plugin validation
  • added alert when a file couldn’t have been overwritten
  • added alert when a file cannot be saved in backup dir
  • added Quota on API Calls functionality
  • added resume bulk processing feature


  • fixed condition in function that validates content by extension
  • fixed bug that prevented files uploaded directly in /uploads dir to be properly processed/saved
  • retry link added besides files that failed to be optimized due to different reasons


  • speedier file download from API resource
  • SQL changed to use less CPU intensive queries
  • improved BULK processing logic, faster results
  • different small fixes & improvements
  • skip processed images when running bulk processing


  • improved logic for processed files to be downloaded every time
  • sometimes the processing script stopped before finishing all the files to be optimized, fixed
  • improved processing speed for bulk processing


  • fixed issue with “missing” images
  • save plugin version for easier debugging
  • list mode is set for media library for first time run
  • fixed bug that prevented backup-ed files to remove when the original was removed


  • different small fixes


  • small improvement to make the optimization of newly added images faster.
  • fixed condition when the PDF files weren’t processed
  • different improvements


  • fixed recursive backup directory size counter
  • added backup with subdirectory structure to handle many files
  • empty backup can handle subdirectories & sets the right flag for backup restore
  • latest images are optimized first
  • check for missing images on disk but still linked in DB


  • added extra check for bad server responses
  • 10 files/post request for file processing
  • updated error codes according to API v2
  • updated description


  • added more tags so we better describe newest features


  • some improvements to bulk processing
  • PDF files are also optimized now
  • fixed a thumb processing bug that caused extra API requests


  • SP plugin uses API v2 and the processing speed is significantly improved


  • Corrected a bug affecting option saving for some of the users.


  • Optimize now option only appears when the image wasn’t optimized


  • Bulk Processing optimized to skip images that were already optimized with the same options when Bulk Processing is run multiple times
  • changed the place where original (backup) files are stored
  • extra check for missing(expired) processed images


  • extra check for exif_imagetype function


  • changed method from GET to POST for API Key validation
  • bulk optimization text update


  • plugin tested for WP 4.1


  • API validation URL changed to v1


  • fallback to http if plugin activation fails for https
  • added error mesage API Key validation fail


  • extra check for images that return 3xx/4xx codes to be ignored
  • API Key validation (error) message is returned to user
  • error messages for images are displayed in the “ShortPixel Compression” column


  • fixed small upload glitch
  • added succes message upon bulk processing completion
  • improved image backup
  • lossy option by default upon plugin installation


  • images’ requests for optimization are sent for all sizes upon image upload in media gallery
  • non-image (e.g. PDF files) are ignored now @ bulk processing
  • bulk optimization improved & some bugs fixed.
  • FAQ/Description small changes


  • readme changes


  • pictures are removed from backup as well when deleted
  • restore backup warning/error fixed
  • fixed useless/bad AJAX requests that occured sometimes
  • added user agent to API Key validation for debugging purposes
  • Bulk Processing was freezing for some users, fixed this + added Cancel button


  • optimize again overwrote the original image, fixed
  • fixed restore errors
  • changes to FAQ/Description texts


  • Bulk image processing improved so it can optimize all the images in background while admin page is open
  • small changes in readme.txt description


  • fixed broken link in settings page
  • updated FAQ
  • description updated


  • fixed missing action link @ Bulk Processing
  • added more screenshots


  • possible fix for API key validation failing
  • added backup and restore for images that are processed with shortpixel
  • optimize now feature on Media Library


  • bulk processing runs in background now.


  • extra check for the converted images to be safely copied from ShortPixel


  • corrections and additions to readme.txt and wp-shortpixel.php


  • minor bug fixes


  • Updated Bulk editing to run in background
  • Updated default options
  • Added notifications on activation


  • First working version

Contributors & Developers

This is open source software. The following people have contributed to this plugin.


Browse the code