UPDATE: Since publishing this post we've conducted a thorough review of caching plugin performance: The Best Caching Plugins for WordPress.
The web has changed. WordPress has changed. I have changed. What remains the same – man's thirst for speed. Everything is fast, faster, fastest. Fast food, fast internet and, hopefully, fast WordPress blogs. And this is exactly what this article is all about: how can we speed up our blog/website? We've talked about CDNs in a previous article, but what if there was another way? A cheaper, complementary way? Introducing WordPress Caching Plugins.
The question this article (or rather series of articles) attempts to answer is: “Are WordPress Caching Plugins worth it?” Not necessarily in financial terms – although we will be talking about paid options as well. Are they worth the trouble of installing, configuring and testing out the best one?
Speed is important for a variety of reasons. Low speed and poor performance can lead to:
- Lower perceived credibility (Fogg et al. 2001)
- Lower perceived quality (Bouch, Kuchinsky, and Bhatti 2000)
- Increased user frustration (Ceaparu et al. 2004)
- Reduced conversion rates (Akamai 2007)
We know what we're avoiding, what we don't want to happen on our blog/website. But what is WordPress Caching anyway?
The Basics of WordPress Caching
Caching means that your webpages (articles, posts, reviews etc.) are no longer served or accessed from the server database. Your visitors are served a fixed HTML file, which is faster, thanks to the lower number of requests from the server. Another way of thinking about caching: any webpage from your WordPress blog/site becomes a static copy. Not only that, but your code is squished down for fewer and smaller requests to the server.
At the time of writing this post, there are exactly 1,907 plugins in the WordPress.org repository for the term “cache”. While the temptation to talk about all of them is there (and create the most epic post ever!), for now we'll cover the 15 most popular and highly rated ones. Part 2 in this series will see us put the plugins to the test and we'll share our speed results!
UPDATE 13/04/15: We've done the research and the results are in. Find out which is the best caching plugin.
The 15 Most Popular and Highly Rated WordPress Caching Plugins (According to WordPress.Org):
This is among the most downloaded and popular plugins out there – over 4 million downloads and 4.640 ratings.
W3 Total Cache is described as a “WordPress Performance Optimization (WPO) framework”, which is quite a mouthful. What it really means is that the plugin includes a multitude of features meant to speed up your website, without too much hassle:
C. Transparent CDN management
Even though the plugin hasn't been updated since September 2014, this is still considered a must-install when creating a new WordPress blog.
In a world dominated by competition, companies and developers are using every trick in the book to market to their users. They want their product to appear as the best. This is the case with this plugin, its motto being “The simplest and fastest WP Cache system”.
WP Super Cache has been acquired by Automattic, the company behind WordPress. At over 6.5 Million downloads and about 2.000 ratings, this plugin has everything going for it to become your favorite. The plugin hasn't been updated since September of this year, so if any new technologies have come onto the scene since, you're out of luck here.
Supercache helps if your server isn't really powerful or if you are under a lot of traffic (which is usually a good thing, so congratulations if that's you). Supercached HTML files should be served faster than regular PHP generated HTML files, but even the developers admit that “in every day use, the difference isn't noticeable”. So it's more of a marketing tactic or something meant for really technical people.
There are a few last things to consider about WP Super Cache:
A. If you’re logged in to WordPress as a user or have left a comment, you’ll never see a super-cached page. This isn't that big of a problem, as most website visitors to not leave a comment.
B. This won't solve all your problems – if you use a cheap host, caching won't save you from traffic spikes. There is only so much a little plugin can do, after all.
C. There might be some issues with compatibility – some pages updating slower, some themes breaking or not looking perfect and so on. Keep this in mind while running WP Super Cache for the first time.
4. Hyper Cache
This plugin was created for hosting providers low on resources. Its aim is to be efficient, but also easy to configure. The last part is important, as the elements of caching and optimization tend to get very technical very fast. And before you know it, you're more into the act of optimization than content creation and community building.
One interesting and helpful bit of information can be found on the official webpage, regarding usage testing:
Use a clean browser (not the one you use to administer your blog or open a new browser window in anonymous mode), and load the same page a couple of times. Look at the page source and at bottom you should see the Hyper Cache signature.
Another way is to use a browser developer tool and look at the network panel: the response header for a cached page should contains the specific “X-Hyper-Cache” header with value “hit” or “hit-mobile”.
At just 36.7 KB, Hyper Cache is definitely one of the lightest and smallest plugins available (compare that to the 1.8 MB of W3 Total Cache).
The current status is unknown, and at just 9.835 downloads, this is one of those plugins you install at your own risk. The 3.5 rating isn't any assurance either.
The core of Wordfence Security is represented by the WordPress scanning. The plugin makes sure your installation, theme and plugins are safe from malware. The second part handles performance, with the Falcon engine claiming to be up to 50 times faster than your standard WordPress blog. The options on the caching side are limited and you're pretty much left with 3 options – no caching, basic caching (2-3 time faster) and Falcon engine caching.
At 1.3 MB, the plugin feels a bit bloated, but I can see its use for large websites or network of blogs, where you want to make sure everything is running smoothly. Overall, nothing impressive at first glance regarding caching, but we'll see how it handles in practical real life test.
7. Gator Cache
Under 5.000 downloads and a rating of 5 out of 5 stars make this a suspicious plugin. Has all the bells and whistles of any standard cache plugin, but also has a few features no plugin has mentioned so far: it's compatible with bbPress, WooCommerce, WordPress HTTPS, WordPress Multisite and Jetpack Mobile site.
The latest update was back in July of 2014, its status is currently unknown. Use it only if you're feeling adventurous and want to try a new caching plugin.
One clever way of differentiating yourself from the pack is to name your plugin in a different manner. Case in point – use the developer's name at the start of the plugin title.
To be honest, there aren't many things going for this plugin: hasn't been updated in about 5 months, there are typos in the description and its features are basic at best. However, how it performs remains to be seen, in the second article in this series.
While we're on the subject of plugin marketing, another differentiation method is to just have the plugin website as the title. Simple and easy to remember.
The reviews (the 3 there are) tell the story here: WP-Cache.com just works out of the box. No fancy configuration, no .htaccess gimmicks or anything similar. The description is the most bare bones I've ever read, but the FAQ does provide information into how you can test the plugin:
How do I know if the plugin is working?
Once you have turned ‘On' Frontend Caching from the WP-Cache.com menu within your wp-admin, you simple can log out of WordPress and head on over to your frontend. Once there, just refresh the page, then look at the source code of your homepage. You will see at the very end of the source code just below the closing tag a comment indicating that WP-Cache.com generated the page from cache.
10. Really Static
Really Static generates static HTML files from your blog. The way it works:
Every time a Post is published/edited/deleted or a comment is posted, changes will be automatically written to the static blog.
Nothing really special, but it can also save static files via local, FTP, SFTP (and also on Amazon's S3 CDN with the help of an additional plugin). Some internal benchmarks show that it's up to 60 times faster than a regular WordPress installation, but that depends on your host, theme, server, plugin configuration and so on. All in all, 60x faster is something I'm always interested in when it comes to my website speed.
By name only, you'd think it's an intelligent plugin that makes automatic changes, based on visitor behavior. Alas, it's more of a naming tactic. What it actually does:
It concatenates all scripts and styles, minifies and compresses them, adds expires headers, caches them, and moves styles to the page head, and scripts to the footer. It also minifies the HTML code itself, making your page really lightweight.
Interesting to note that the developer mentions in the description that additional, separate, plugins are useful to complement Autoptimize's performance. Suggested options are WP Super Cache and Hyper Cache, which we've discussed a bit earlier in this article. Good to see a plugin that doesn't claim it's the best invention since sliced bread. Honesty goes a long way – almost 225.000 downloads and a 4.6/5 stars rating.
12. Alpha Cache
After the first web request, Alpha Cache creates a cache of that specific webpage. On the second web request, the server will no longer have to go through WordPress PHP scripts – it will serve/show the stored HTML from the database cache table instead.
What you can do with this plugin, not listed by others, is define a filter by regular expressions pattern to exclude necessary URLs from the cache. At just 25.4 KB, it's on the smallest cache plugins on this list.
After the Super- and Bat-named cache plugins, I wouldn't be surprised to see Justice League or The Avengers on future lists. Batcache has a different aim than other plugins – it's created to stop a traffic flood from blocking or breaking your website.
The plugin uses Memcached to store and serve the rendered HTML pages. Not faster than WP Super Cache, but it can be used in situations where file caching is not practical or desired. If a website uses multiple servers, for example, the plugin helps use the same storage.
Internal developer testing showed a 40x reduction in page generation times – from 200ms to just 5ms (served from cache), which is incredible, but all tests should be taken with a grain of salt.
Based on the official Hyper Cache plugin, this is a new caching system, from a different developer. Among its features: 404 caching, redirects caching, Global Translator compatibility, option to move cache to other partition/disk, only serve cached pages when web server average load is above a certain number and autoclean system to reduce the disk usage.
The developer says it's an “extended and rewritten version of Hyper Cache”, with missing options that he was looking for. So if any of this speaks to you, give it a go – it's got 4.5/5 stars and almost 45.000 downloads.
BONUS: WP Rocket
This last one isn't featured on the official WordPress.org listing, but it's been getting quite a bit of press lately, so it's only fair we include it in the showdown.
Not only does this seem to work better than other plugins (at least in early tests by other WordPress admins), but their marketing is one of the best I've ever seen: clean, concise and straight to the point. Titles, descriptions and especially graphics on the website make everything sound and look appealing. It has to be – WP Rocket is the only premium-only caching plugin on this list. Pricing starts at $39 for 1 website and goes all the way up to $199 for unlimited installations.
Whether or not this the final, ultimate WordPress Caching Plugin, it remains to be seen in our next article, a real life practical test and comparison of all these plugins.
We must realize that not all technologies are created equal. Not all hosts play well with all plugins. Some testing is still necessary on your part, to make sure your site is as fast as it can be. In our second article in the series, we put all of these plugins to the test and make the results public!
Icons used in the images in this article are Copyright @ FlatIcon.
For now – leave a comment if you already use a WordPress Caching Plugin and what made you choose that specific one.