{"id":141976,"date":"2019-04-17T13:00:18","date_gmt":"2019-04-17T13:00:18","guid":{"rendered":"http:\/\/premium.wpmudev.org\/blog\/?p=141976"},"modified":"2019-04-17T19:49:00","modified_gmt":"2019-04-17T19:49:00","slug":"top-wordpress-caching-plugins","status":"publish","type":"post","link":"https:\/\/wpmudev.com\/blog\/top-wordpress-caching-plugins\/","title":{"rendered":"Best of the Best WordPress Caching Plugins Compared 2020"},"content":{"rendered":"<p>When you play a game of thrones with your site you win or you only slightly improve performance. And who wants that when optimizing your site with a caching plugin, you want to be the very best.<\/p>\n<p>That&#8217;s why in this post, we&#8217;re going to find who the best cache plugin for WordPress <em>really<\/em> is. Join us as we compare and review the most beloved WordPress cache plugins for WordPress \u2013 Hummingbird vs WP Rocket vs WP Super Cache to see who comes out on top.<\/p>\n<h2>Establishing the Baseline: Google PageSpeed Insights<\/h2>\n<p>Grades aren&#8217;t everything and they don&#8217;t determine success in the real world, but they can give you valuable insight into what you need to improve.<\/p>\n<p>Google PageSpeed Insights is no different. When you run a test, you get a sneak peek into what the mighty search engine values. If you can deliver the goods and make the right improvements, such as utilizing <a href=\"https:\/\/wpmudev.com\/blog\/lazy-load-wordpress\/\" target=\"_blank\">lazy loading<\/a> and <a href=\"https:\/\/wpmudev.com\/blog\/serve-images-next-gen-formats-webp\/\" target=\"_blank\">next-gen formats<\/a>, you could massively improve your user experience and <a href=\"https:\/\/wpmudev.com\/blog\/seo-images\/\" target=\"_blank\">SEO<\/a> at the same time.<\/p>\n<p>Google uses the open source tool <a href=\"https:\/\/developers.google.com\/web\/tools\/lighthouse\/scoring\" target=\"_blank\">Lighthouse<\/a> to test the quality of webpages based on how they actually perform in the real world. This isn&#8217;t just theory. This is real life, as in how does your site perform on a mid-tier device on a shoddy mobile network, realness. So you can see how it&#8217;s a pretty valuable test.<\/p>\n<p>In Google PageSpeed Insights, there are three tiers. Anything below 50 is bad news bears. Scores from 50-90 are considered average. While anything above 90 is considered fast, so that&#8217;s the territory we want to conquer. We wrote a whole post on <a href=\"https:\/\/wpmudev.com\/blog\/the-new-google-pagespeed-insights-a-perfect-100-is-now-super-easy\/\" target=\"_blank\">how to get a 100 in Google PageSpeed Insights<\/a>.<\/p>\n<p>But the overall score isn&#8217;t the only important metric. The following metrics paint a richer picture about what your visitors&#8217; experience is like on your site:<\/p>\n<ul>\n<li><strong>First Contentful Paint<\/strong> &#8211;\u00a0First Contentful Paint marks the time at which the first text or image is painted.<\/li>\n<li><strong>Speed Index<\/strong> &#8211;\u00a0Speed Index shows how quickly the contents of a page are visibly populated.<\/li>\n<li><strong>Time to Interactive<\/strong> &#8211;\u00a0Time to interactive is the amount of time it takes for the page to become fully interactive.<\/li>\n<li><strong>First Meaningful Paint<\/strong> &#8211;\u00a0First Meaningful Paint measures when the primary content of a page is visible.<\/li>\n<li><strong>First CPU Idle<\/strong> &#8211;\u00a0First CPU Idle marks the first time at which the page&#8217;s main thread is quiet enough to handle input.<\/li>\n<li><strong>Estimated Input Latency<\/strong> &#8211;\u00a0Estimated Input Latency is an estimate of how long your app takes to respond to user input..<\/li>\n<\/ul>\n<h2>How We&#8217;re Running the Test<\/h2>\n<p>We&#8217;re going to run two sets of tests on each plugin:<\/p>\n<ul>\n<li>First, we&#8217;re going to test the default settings for all three plugins. If things are activated or configured out of the box, that&#8217;s the way we&#8217;re leaving them. We&#8217;re basically going to install the plugin, give it a minute to do its thing, refresh the home page a couple of times and then run a Google PageSpeed Insights test.<\/li>\n<li>Then, we&#8217;re going to flip all the switches and activate all the things and run the test again to see what a difference it makes. The goal is to <a href=\"https:\/\/wpmudev.com\/blog\/speeding-up-wordpress\/\" target=\"_blank\">squeeze as much speed out of WordPress as possible<\/a>.<\/li>\n<\/ul>\n<p>In order to get stable results, we&#8217;re going to run the test 3 times and return the average.<\/p>\n<h3>Starting with a Baseline<\/h3>\n<p>The first thing we need to do is establish a baseline and find out how our test site performs without any optimization plugins.<\/p>\n<p>Our initial tests yielded the following results:<\/p>\n<table style=\"width: 100%; border: 1px solid #14485f; border-collapse: collapse;\">\n<tbody style=\"border: 1px solid #14485f; border-collapse: collapse;\">\n<tr>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Metric<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Mobile<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Desktop<\/th>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Score<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">36<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">58<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Contentful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.5 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Index<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10.8 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">3.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Time to Interactive<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">6.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Meaningful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First CPU Idle<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Estimated Input Latency<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-1.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"665\" \/><figcaption class=\"wp-caption-text\">Baseline Mobile 36<\/figcaption><\/figure>\n<\/div>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-2.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"631\" \/><figcaption class=\"wp-caption-text\">Baseline Desktop 58<\/figcaption><\/figure>\n<\/div>\n<p>Not the worst score, but there&#8217;s definitely a lot of room for improvement, especially on mobile.<\/p>\n<p>But\u00a0enough of all that, let&#8217;s get to the good part.<\/p>\n<h2>WordPress Cache Plugin Comparison<\/h2>\n<h3>Contender #1: WP Super Cache<\/h3>\n<p>In this corner, we have the crowd favorite with 2+ million downloads, WP Super Cache.<\/p>\n<p>WP Super Cache isn&#8217;t an all-in-one optimization solution, it&#8217;s more of a do one thing really well solution, and that one thing, is caching.<\/p>\n<h4>Caching<\/h4>\n<p>For the uninitiated, WordPress uses PHP to generate your site files when a visitor requests them. This process takes time because it takes time to retrieve all the necessary information from the database and assemble your webpage on the spot. It&#8217;s like inviting someone over for dinner, but not going to the grocery store to get your ingredients or cooking until they&#8217;re on your doorstep.<\/p>\n<p>Caching, by contrast, is what happens if a second guest shows up once the meal is ready. That person doesn&#8217;t have to wait for you to get groceries and cook, because the time-consuming part has already been done. You can just assemble a plate for them and voil\u00e0! Your <del datetime=\"2019-04-12T08:23:51+00:00\">dinner<\/del> page is served.<\/p>\n<p>In WordPress, caching plugins serve up a static version of your page that has already been pre-processed in order to serve the page up faster.<\/p>\n<h4>WordPress Cache Plugin Review<\/h4>\n<p>So how did WP Super Cache do?<\/p>\n<p>Well for one, there wasn&#8217;t really a big difference between the two tests. The plugin performed pretty much the same when we compared the default configuration to the configuration that had all recommended settings turned on. This is a pretty good thing for beginners because you don&#8217;t have to do much to get the best results.<\/p>\n<p>Here are the results we got:<\/p>\n<table style=\"width: 100%; border: 1px solid #14485f; border-collapse: collapse;\">\n<tbody style=\"border: 1px solid #14485f; border-collapse: collapse;\">\n<tr>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Metric<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Mobile<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Desktop<\/th>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Score<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">40<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">64<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Contentful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.5 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Index<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">8.3 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">2.7 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Time to Interactive<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">6.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Meaningful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First CPU Idle<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Estimated Input Latency<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/mobile-wpsc.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"661\" \/><figcaption class=\"wp-caption-text\">WP Super Cache Mobile 40<\/figcaption><\/figure>\n<\/div> <div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/desktop-wpsc.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"631\" \/><figcaption class=\"wp-caption-text\">WP Super Cache Desktop 64<\/figcaption><\/figure>\n<\/div>\n<p>So about 6 points higher for both mobile and desktop. If you want just a simple caching solution, WP Super Cache will help, but if you really want to optimize your site, it&#8217;s going to take a lot more.<\/p>\n<p>Enter contender #2\u2026<\/p>\n<h3>Contender #2: WP Rocket<\/h3>\n<p>Now we&#8217;re talking. WP Rocket is a full-featured optimization plugin, so there are a lot more than just caching.<\/p>\n<p>After running Google PageSpeed Insights three times, these are our results.<\/p>\n<table style=\"width: 100%; border: 1px solid #14485f; border-collapse: collapse;\">\n<tbody style=\"border: 1px solid #14485f; border-collapse: collapse;\">\n<tr>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Metric<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Mobile<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Desktop<\/th>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Score<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">35<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">58<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Contentful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Index<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">11.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">4.0 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Time to Interactive<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">6.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Meaningful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.7 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First CPU Idle<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.7 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Estimated Input Latency<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-3.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"649\" \/><figcaption class=\"wp-caption-text\">WP Rocket Mobile 35<\/figcaption><\/figure>\n<\/div>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-4.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"610\" \/><figcaption class=\"wp-caption-text\">WP Rocket Mobile 58<\/figcaption><\/figure>\n<\/div>\n<p>Not surprising. When you have a plugin with so many options, a lot of them aren&#8217;t enabled by default. This is a good thing because you can tweak the settings to suit your site.<\/p>\n<p>One thing that we found odd when running the test, was the mobile version of the PageSpeed insights report was scoring 1 point lower without any plugin, regardless of the <em>Enable caching for mobile devices<\/em> option. Maybe it wasn\u2019t hitting a cached version? Or I had to visit that page via a mobile device prior to running a score? Strange\u2026<\/p>\n<p>Anyway, after enabling everything related to optimization in WP Rocket, we were given various notices indicating the status of cache preloading, asset generation, etc. That\u2019s a good thing. We waited for all these to complete before running another PageSpeed test.<\/p>\n<p>We also made sure that both the mobile and desktop versions were cached.<\/p>\n<p>After running 3 additional Google PageSpeed Insights scans, we got much better results:<\/p>\n<table style=\"width: 100%; border: 1px solid #14485f; border-collapse: collapse;\">\n<tbody style=\"border: 1px solid #14485f; border-collapse: collapse;\">\n<tr>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Metric<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Mobile<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Desktop<\/th>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Score<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">92<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">98<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Contentful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">2.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.6 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Index<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">3.7 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.1 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Time to Interactive<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">3.0 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.7 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Meaningful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">2.5 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.6 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First CPU Idle<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">2.5 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.6 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Estimated Input Latency<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-5.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"633\" \/><figcaption class=\"wp-caption-text\">WP Rocket Mobile 92<\/figcaption><\/figure>\n<\/div>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-6.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"586\" \/><figcaption class=\"wp-caption-text\">WP Rocket Desktop 98<\/figcaption><\/figure>\n<\/div>\n<p>Although to be fair, one of the desktop tests was a 99.<\/p>\n<p>That&#8217;s a hard act to follow. Will Hummingbird be able to beat it?<\/p>\n<h3>Contender #3: Hummingbird<\/h3>\n<p>Hummingbird is also a dense plugin with lots of powerful options for improving your site performance. <a href=\"https:\/\/wpmudev.com\/project\/wp-hummingbird\/?icn=3_caching_plugins_compared&amp;ici=text-link_try_it_out_for_yourself\" target=\"_blank\">Try it out for yourself<\/a> and run your own test.<\/p>\n<p>We expected Hummingbird to perform similarly out of the box, simply because a lot of options aren&#8217;t activated by default.<\/p>\n<p>Our assumptions were spot on. Here are the results we got with the default settings:<\/p>\n<table style=\"width: 100%; border: 1px solid #14485f; border-collapse: collapse;\">\n<tbody style=\"border: 1px solid #14485f; border-collapse: collapse;\">\n<tr>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Metric<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Mobile<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Desktop<\/th>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Score<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">36<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">58<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Contentful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.5 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Index<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10.9 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">3.8 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Time to Interactive<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">6.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Meaningful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First CPU Idle<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">5.6 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Estimated Input Latency<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-7.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"655\" \/><figcaption class=\"wp-caption-text\">Hummingbird Mobile 36<\/figcaption><\/figure>\n<\/div>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-8.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"615\" \/><figcaption class=\"wp-caption-text\">hummingbird Desktop 58<\/figcaption><\/figure>\n<\/div>\n<p>As you may recall these results are similar to our baseline.<\/p>\n<p>Now for the fun part. Hummingbird has a lot of optimization modules so we turned them all on.<\/p>\n<p>It took a while for the Hummingbird Optimization module to finish scanning all 178 assets, so if you&#8217;re going to do the same test, be patient. We then combined, minified and moved all assets to the footer.<\/p>\n<p>We left jQuery and jQuery migrate in their original locations, which is similar to the compatibility option in WP Rocket.<\/p>\n<p>After making sure mobile and desktop had a cached version like we did with WP Rocket, we ran Google PageSpeed Insights and BAM!<\/p>\n<h4>Hummingbird PageSpeed Scores<\/h4>\n<table style=\"width: 100%; border: 1px solid #14485f; border-collapse: collapse;\">\n<tbody style=\"border: 1px solid #14485f; border-collapse: collapse;\">\n<tr>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Metric<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Mobile<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Desktop<\/th>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Score<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">96<\/span><\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">100<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Contentful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">1.7 s<\/span><\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">0.5 s<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Index<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">2.2 s<\/span><\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">0.7 s<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Time to Interactive<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">3.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Meaningful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">1.7 s<\/span><\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">0.5 s<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First CPU Idle<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">3.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.9 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Estimated Input Latency<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Not only did Hummingbird best WP Rocket on the speed score for mobile and desktop, it also beat WP Rocket when it came to first contentful paint, speed index and first meaningful paint. Hummingbird delivers content faster than WP Rocket, although WP Rocket allows for faster interaction.<\/p>\n<h4>WP Rocket PageSpeed Scores (for comparison)<\/h4>\n<table style=\"width: 100%; border: 1px solid #14485f; border-collapse: collapse;\">\n<tbody style=\"border: 1px solid #14485f; border-collapse: collapse;\">\n<tr>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Metric<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Mobile<\/th>\n<th style=\"background: #14485f; color: #fff; padding: 5px;\">Desktop<\/th>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Score<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">92<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">98<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Contentful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">2.4 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.6 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Speed Index<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">3.7 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">1.1 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Time to Interactive<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">3.0 s<\/span><\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">0.7 s<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First Meaningful Paint<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">2.5 s<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">0.6 s<\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">First CPU Idle<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">2.5 s<\/span><\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\"><span style=\"color: #339966;\">0.6 s<\/span><\/td>\n<\/tr>\n<tr>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">Estimated Input Latency<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<td style=\"border: 1px solid #14485f; border-collapse: collapse; padding: 5px;\">10 ms<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-9.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"627\" \/><figcaption class=\"wp-caption-text\">Hummingbird Mobile 96<\/figcaption><\/figure>\n<\/div>\n<div  class=\"wpdui-pic-regular  \">\n<figure class=\"wp-caption alignnone\" data-caption=\"true\"><img loading=\"lazy\" decoding=\"async\" class=\"attachment-600x600 size-600x600\" src=\"https:\/\/wpmudev.com\/blog\/wp-content\/uploads\/2019\/04\/screen-10.jpg\" alt=\"Screenshot of Google PageSpeed Insights\" width=\"600\" height=\"601\" \/><figcaption class=\"wp-caption-text\">Hummingbird Desktop 100<\/figcaption><\/figure>\n<\/div>\n<p>We think the Hummingbird&#8217;s Asset Optimization module gave it an edge because it allows for a very detailed configuration. There is also an inline\/defer option in Hummingbird that we didn&#8217;t activate because we didn&#8217;t need it. After reaching 100 on desktop it felt like an unnecessary flex.<\/p>\n<p>I should also mention that while upgrading to Hummingbird Pro will give you access to all of Hummingbird&#8217;s features, such as the Hummingbird CDN, you can accomplish everything else with the free version of Hummingbird.<\/p>\n<h2>More Optimization Tips<\/h2>\n<p>If your site\u00a0needs more optimization help, I suggest starting with images since they&#8217;re usually one of the worst offenders when it comes to slowing down your site.<\/p>\n<p>This is especially true if they&#8217;re not being served correctly or are oversized. Check out our post on <a href=\"https:\/\/wpmudev.com\/blog\/make-images-retina-ready\/\" target=\"_blank\">how to serve Retina images that don&#8217;t slow down WordPress<\/a>.<\/p>\n<p><a href=\"https:\/\/wpmudev.com\/blog\/6-lazy-load-plugins-to-make-your-wordpress-site-faster\/\" target=\"_blank\">Lazy loading your images<\/a> will also improve performance.<\/p>\n<p>And lastly, I suggest signing up for a <a href=\"https:\/\/wpmudev.com\/pricing\/\" target=\"_blank\" rel=\"noopener\">risk-free membership<\/a> so you can try Hummingbird on <em>your<\/em> site. And while you&#8217;re at it, give Smush Pro a shot too since it&#8217;s included with a WPMU DEV membership. Smush Pro has awesome image optimization features. When you combine Hummingbird and Smush, your site will load so fast, it&#8217;s going to blow your mind.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Slow loading websites can be a real drag, causing visitors to leave your site in droves. We\u2019ve ranked the top three caching plugins for WordPress, and have put together a quick guide to help you choose the best plugin for your site.<\/p>\n","protected":false},"author":699634,"featured_media":168005,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"blog_reading_time":"","wds_primary_category":0,"wds_primary_tutorials_categories":0,"footnotes":""},"categories":[10468],"tags":[1086,10422,10147,10148,10990],"tutorials_categories":[],"class_list":["post-141976","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-reviews-opinion","tag-caching","tag-hummingbird","tag-w3-total-cache","tag-wp-rocket","tag-wp-super-cache"],"_links":{"self":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts\/141976","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/users\/699634"}],"replies":[{"embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/comments?post=141976"}],"version-history":[{"count":37,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts\/141976\/revisions"}],"predecessor-version":[{"id":222791,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/posts\/141976\/revisions\/222791"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/media\/168005"}],"wp:attachment":[{"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/media?parent=141976"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/categories?post=141976"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/tags?post=141976"},{"taxonomy":"tutorials_categories","embeddable":true,"href":"https:\/\/wpmudev.com\/blog\/wp-json\/wp\/v2\/tutorials_categories?post=141976"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}