Need a solid list of WordPress speed optimization plugins?
Boy do I have the list for you. Cache plugins, image optimization, lazy load, AMP, Gravatar cache, load time monitoring, and plugins that fix Google Font + Analytics errors in GTmetrix and Pingdom. I use many of these speed plugins on my own site and have 100% GTmetrix scores. I also do WordPress speed optimization for a living, so I’m pretty much a nerd about it.
I recommend running your WordPress site through GTmetrix (check the Page Speed and YSlow tabs) or another speed testing tool to use as a benchmark. Once you’ve installed each plugin, retest your GTmetrix scores to see how it affects your page load time and scores. Most plugins have at least a 4.5 star rating, and rest assured, I have done my research and testing.
ps. If you join the WordPress Speed Up Facebook Group they have a list of 60+ recommended WordPress Speed Up Tools and useful links. But I did try to include the important ones here :)
pps. Hosting is the #1 factor in the WordPress optimization guide. Google recommends a server response time of <200ms which you can check in PageSpeed Insights. I use SiteGround who is also used by Yoast, recommended by WordPress, and rated #1 in 20+ Facebook polls.
1. WP Rocket
WP Rocket was rated the #1 cache plugin in multiple Facebook polls and is what I use. It’s a $49 premium plugin but well worth it, since your hosting and cache plugin and generally the top 2 speed factors. It’s also the easiest cache plugin to configure and is updated frequently with new features. You should only be using 1 cache plugin, but it’s best to try at least 2-3 (the ones I listed) to see which one gives you the best results/scores in Pingdom/GTmetrix.
With most other cache plugins, you would need to install about 6 extra plugins to get these features, when WP Rocket has them all built-in, reducing the number of plugins on your site. If you’re like me, you only want to use 1 plugin, otherwise you will need to research which features your cache plugins comes with, then install these plugins if it doesn’t support them.
- Database cleanup (built-in to WP Rocket, or use WP-Optimize)
- Heartbeat control (built-in to WP Rocket, or use Heartbeat Control)
- Lazy load images/videos (built-in to WP Rocket, or use WP YouTube Lyte)
- Host Google Analytics locally (built-in to WP Rocket, or use CAOS For Analytics)
- Host Google Fonts locally (built-in to WP Rocket, or use CAOS For Fonts, or SHGF)
- Integration with Cloudflare + other CDNs (built-in to WP Rocket, or use CDN Enabler)
My WP Rocket tutorial shows you how to configure the settings with Cloudflare + StackPath. I keep it updated with the latest versions and reference WP Rocket’s documentation. This can fix a TON of items in GTmetrix and is probably the 2nd biggest speed factor outside of hosting.
- WP Fastest Cache (View Guide)
- SG Optimizer (For SiteGround)
- Swift Performance (View Guide)
- W3 Total Cache (View Guide)
- WP Super Cache (View Guide)
It’s the highest rated FREE cache plugin and is super easy to configure. My WP Fastest Cache tutorial shows you how to configure the tabs and integrate it with Cloudflare + StackPath but here is the first tab (below). Unlike WP Rocket, this plugin doesn’t have an option for lazy loading images/videos, database cleanup, and other options. So you will need to use WP-Optimize and the Lazy Load For Videos plugins if you want those features too (recommended).
Removes trash, spam, post revisions, transients, and other junk files stored in your database which after accumulating, can slow down both your WordPress site and admin panel. I would run this every couple weeks (both WP-Optimize and WP Rocket have an option to schedule database cleanups). If you’re using WP Rocket you do NOT need this plugin since WP Rocket has an option for this in the database settings. If using another cache plugin, use WP-Optimize.
- Backup your database!
- Install the plugin
- Go to the WP-Optimize tab
- Run the plugin as the default settings but uncheck “unapproved comments”
If using WP Rocket, you don’t need WP-Optimize (WP Rocket has this in the “database” tab)…
Losslessly compress images which fixes optimize images items in GTmetrix. I have a full guide to image optimization (there are actually 20 ways) but the main ones are lossless compression, serve scaled images (resizing them to the correct dimensions) and specify image dimensions (setting a width/height in the images’s HTML or CSS). Imagify gives you 25MB/month free, then you need to buy a plan or wait until next month for it to reset. Imagify, ShortPixel, Smush, Kraken, and EWWW all basically do the same thing. You only need to be using one of them.
- Lossless image compression
- Resize oversized images
- Remove EXIF data
- Sign up for Imagify
- Install the Imagify Plugin
- You will be prompted with the instructions below:
- Enter your API key from your Imagify account
- Set your compression level (normal, aggressive, ultra)
- Imagif’em all (photo above) which bulk optimizes all images on your site
- Once you’ve reached your limit, pay $4.99 or wait next month to reset your limit
Specify Image Dimensions is an item in GTmetrix and other speed tools which means you need to add a width/height to the image’s HTML or CSS. This plugin automatically adds a width/height to images that don’t currently have one set. To my knowledge, it doesn’t specify dimensions for images located in page builders, widgets, or any areas outside the visual editor.
Lazy loads videos by inserting responsive “Lite YouTube Embeds” which only calls the “fat” YouTube player when the play button is clicked. Videos take the longest time to load by FAR. Just to give you an idea, my W3 Total Cache tutorial only has 2 videos, but when I lazy load them that post’s load time went from 5s to 1.5s. It has the same function as light video embeds.
Here are the settings:
- a3 Lazy Load
- Lazy Load
- Lazy Load For Videos
- BJ Lazy Load
- Lazy Load By WP Rocket
- WP YouTube Lyte
- GIF Animation Preview
If you’re using WP Rocket, they have this feature in the “media” settings…
7. WP Disable
This is a must-have speed plugin which disables unnecessary features in WordPress core that may consume CPU. It also helps remove query strings (although the best solution for that is to use lightweight plugins), loads fonts asynchronously, hosts your Google Analytics tracking code locally, limits the number of post revisions, disables autosaves, and other speed features.
Allows you to disable:
- Google Maps
- RSD (Really Simple Discovery) tag
- Shortlink Tag
- WordPress API from header
- Windows Live Writer tag
- WordPress Generator Tag
- Pingbacks + trackbacks
- WooCommerce scripts
- WooCommerce reviews
- Woocommerce Cart Fragments
It can also paginate comments after 20 comments or disable them after 28 days.
CAOS For WebFonts fixes Google Font errors in GTmetrix, Pingdom, and PageSpeed Insights. It will download your Google Fonts (using the Google Fonts Helper API) and generate a stylesheet for it. Afterwards, you will need to remove any requests to external font sources.
Tip: if using external fonts, be minimal with the number of fonts (and font weights) you choose. If for some reason this plugin doesn’t fix errors, I have a guide for hosting Google Fonts locally.
CAOS fixes the leverage browser caching item in GTMetrix by hosting Google Analytics locally. Just install the plugin, enter your Tracking-ID, and CAOS will add the Tracking Code to the header (or footer). CAOS is also compatible with Monster Insights and has other options.
WP Rocket, Swift Performance, and WP Disable can also do this (you only need to use one).
10. AMP For WP
Accelerated mobile pages is a Google project that makes mobile pages load faster. It also adds an “AMP” stamp next to your mobile snippets. This plugin will change the layout/design of your mobile pages, so be sure to fully customize the settings. If for some reason you don’t like it, delete it and it will revert back to your old design. You can also use the Glue For Yoast & AMP plugin to customize text color, link color, hover color, and other elements of your mobile pages.
This plugin has tons of settings for customizing your AMP Pages:
- Install the plugin
- Customize which content your want AMP Pages (pages, posts, etc)
- Install the Glue For Yoast SEO AMP plugin if using Yoast (customizes the design)
- Add /amp/ to any page on your website to see how it looks and make sure it works
- Go to Yoast’s Settings → AMP to change your design and enable custom post types
- Wait for Google to recrawl your site and add the AMP sign in mobile search results
- Visit the accelerated mobile pages section in Google Search Console to see errors
11. Plugin Organizer
Selectively disable plugins on certain pages/posts. The most common example is contact forms (which should load on pages with contact forms). Social share plugins can also usually be disabled on pages. You’ll want to configure the settings, global plugins, and edit specific pages/posts to selectively disable plugins. You can read their documentation if you need help.
- Install the plugin
- Go to Plugin Organizer > Global Plugins to configure
- Edit any page/post and selectively disable plugins using the sidebar
- Plugin Load Filter
- Swift Performance (cache plugin) also has an option for this
12. CDN Enabler
CDN Enabler helps you setup a CDN (content delivery network). This does not work with Cloudflare (that requires changing nameservers) while CDN enabler is specifically for StackPath, KeyCDN, and other CDNs that provide a CDN URL. First, sign up for a CDN (I use StackPath) then enter your CDN URL into the CDN Enabler plugin. See instructions below:
Step 2: Grab Your CDN URL:
Step 3: Enter your CDN URL into CDN Enabler, then configure the settings:
If you have a lot of comments on posts, Gravatars can absolutely destroy your load times and GTmetrix reports. You can use this plugin to cache Gravatar images. Another option is to disable Gravatars completely (though this will prevent photos from showing up) and make your comments section look boring. But it’s a tradeoff between Gravatars or your load times.
15. Query Monitor
Find your slowest load plugins, queries, scripts, and other elements that take longest to load.
The GTmetrix WordPress plugin monitors you load times and Page Speed + YSlow scores, then sends you a report directly in your WordPress dashboard, or through scheduled email reports.
Display PHP Version simply shows you which PHP version you’re running.
Higher versions make your site run much faster…
You can upgrade to new versions in your hosting cPanel…
PHP Compatibility Checker scans your plugins to make sure they’re compatible with new PHP versions. Some WordPress plugins aren’t updated frequently or coded well – running this beforehand can prevent errors (like your website from breaking) due to incompatible plugins.
Shows overall performance of hosting and whether your technology (PHP, MySQL, WordPress versions) is running slow, in which case it should be updated. It also shows your slowest pages.
If you see minimize redirects in your GTmetrix report, this might mean you changed the www or https version of your site, but didn’t change your links to correspond with the new version…
Instead of fixing all your links manually, use the Better Search And Replace plugin to update them in bulk. It can also be helpful for fixing broken links, or even bulk updating links/images which appear on multiple pages/posts. Better Search Replace can be an enormous time saver.
Other Notable Tools / Resources
SiteGround is used by Yoast, myself, and recommended by WordPress. They are #1 in nearly every Facebook poll and give most people significant load time improvements especially if they were using mediocre hosts: GoDaddy, Bluehost, HostGator, InMotion, Dreamhost, EIG.
I use their semi-dedicated GoGeek plan which comes with 4x more server resources than shared hosting. Click through my pages to see how fast they load, check out my GTmetrix report, or see people who migrated and posted new load times. They also do free migrations.
DigitalOcean on Cloudways and Kinsta are also good and start at $10/month and $30/month. Cloudways is more for developers who don’t need cPanel, email hosting, or the support you get with SiteGround. Kinsta is basically what WP Engine used to be (pricey, but awesome). My entire blog is basically dedicated to helping people make their website load faster. I refuse to recommend $2/month hosting since it’s most people’s biggest regret when running a website.
How To Check If Your Hosting Is Slow
Run your site through Google PageSpeed Insights to see if reduce server response time is in your report. Google recommends it should be <200ms. Anything above 1 second is not good. You can also check your TTFB (time to first byte) in GTmetrix’s Timings tab or bytecheck.com.
SiteGround is recommended by WordPress:
A few threads:
SiteGround has 3 plans which are 77% off for Labor Day:
Higher plans include more server resources (#1 factor in the WordPress optimization guide). Here’s the full comparison chart, but GrowBig gives you about 2x more server resources than StartUp, and GoGeek is semi-dedicated hosting which gives you even more. GrowBig and up comes with a free migration, staging, advanced caching, and ability to host multiple websites. GoGeek comes with priority support. Their cloud hosting is quite the price jump at $80/month.
You can see this on their features page:
People usually migrate because their speed technology can cut load times in half:
Cloudflare – free CDN and speed/security service which mirrors your site (and offloads resources) on over 180+ data centers. Integrates with most cache plugins with option to use aggressive minification, Railgun, and hotlinking. All my cache plugin tutorials include Cloudflare setup instructions and don’t forget to setup page rules for your WordPress admin.
StackPath – paid CDN which adds 30+ additional data centers around the world (more data centers = faster content delivery), reducing the distance between your website/visitors – a recommendation in the WordPress optimization guide. $10/month with a free 30-day trial.
GTmetrix – good for identifying images that need to be optimized using the 3 methods: serving scaled images (resizing them), specifying images dimensions in the HTML/CSS, and optimizing images (lossless compression). GTmetrix recently switched to a fully loaded time metric which shows a longer load time than previously. Their waterfall tab measures individual slow loading elements, and if your time to first byte is long that indicates your hosting is slow.
Bad Bots .htaccess List – extensive list of spammy bots which when blocked by uploading to .htaccess may significantly reduce CPU usage. You can find out if spammy bots are crawling your site using AWStats (listed in the Analytics tools section). Configuring Wordfence’s crawl limiting rules will also help block fake Google crawlers, spammy bots, excessive crawling, etc.
Pronaya (My WordPress Speed Optimizer) – you can hire my WordPress speed optimizer on freelancer.com who I’ve been working with for 5 years and we’ve optimized multiples sites to load 500% faster. His name is Pronaya, he’s $40/hour and has a perfect 5/5 star review with 19 reviews (just sign up for a Freelancer account and search for user BDKAMOL). If you think I’m good at speed optimization, Pronaya is way better. I’ve also been working with Usama (his username is I333) who is quite cheaper but is also amazing with 4.9/5 stars and 375+ reviews.
My WordPress Speed Optimization Tutorial – has 400+ comments with people saying things like “My page speed score on gtmetrix went from 69 to 93” and “this might be one of the most helpful posts I’ve ever read.” Tons of people have used it to improve Pingdom/GTmetrix scores.
I hope you find these WordPress speed optimization plugins useful! If you have questions leave me a comment. Or if you simply need to fix your slow WordPress site, see my tutorial above. It has over 400 comments and has helped many people reduce their load time to <1s.