WordPress Caching Optimization and Performance

Jump to navigation Jump to search

There are tons of good and bad reviews for Plugins that Optimize and increase Performance for WordPress. All of them leave out these useful bits of information that are probably of more interest to experts than novices. And that's not being mean to novicies, it's tempting them to become experts too by learning.

All of them do a good job in terms of speeding things up.

This article is not intended to be a review or step by step instruction for doing stuff. It's just some notes that no other review or comparison has written about (IE, this is a unique bit of information)

WP Optimize

Best Features;

  • Shows Progress of Cache as it's being created, without refreshing page
  • Cache and Minification can be turned on or off
  • Cleans up after itself after being disabled and deletes most of its cached files (leaves CSS minified stuff behind)

Worst Issue(s);

  • The cache contains a bunch of files with mobile and desktop and 'mystery' files all combined.
  • For some odd reason, it does NOT generate cache files for desktop pages until they are visited. Even when 'pre-loading'.
  • Appears to be Case Sensitive and will build two different caches if Camel Case (look it up) is used to make website names easier to read. This is one thing that I would love to know the origins on with Microsoft and their decision to have a case insensitive OS. Saves a LOT of trouble (sorry, just a side note there without being disparaging towards Linux, etc.).
  • OK documentation, others do a much better job.
  • Lots of files (especially CSS, even when combined, etc.) makes Google live page tests grumpy about exceeding their "Download Allownance" (or whatever they're calling it now).
  • Higher CPU usage when page cache is used. Possibly / Probably due to the way the Plugin code runs or is designed.

WP Fastest Cache

Best Features;

  • Simple Cache with single files for each page,
  • Preaload just works, without having to visit a page one time (unlike WP Optimize)
  • Very simple and concise interface. All Cache and Minification Options on a single page (with Help Links). Although for novices, it might be a bit overwhelming to have all the stuff presented in one huge menu.

Worst Issue(s);

  • The progress of building the cache isn't updated live, but rather requires a refresh of the Admin Page
  • Poor wording on some of the documentation (Example: "Restart Preload After Completed", OK, how about "Restart Preload after Completing", but that's just the beginning. What does that mean. What if means is "runs continuously to build cached pages" OR "starts over" OR "starts rebuilding cache as soon as it's finished" OR "repeats". Get it? Well, none of those descriptions are used in their documentation. That seems mean, because they did try and do documentation. However, the point of documentation is to help people understand, and if it doesn't achieve that goal, then it isn't very good documenation. But hey, it's better than a lot of other Plugins. It is obvious that the person writing the documentation does not speak English as a native language. And that is not a derogatory comment. It is a compliment in that the person speaks and writes more languages than me. So they're more capable than I am in some respects. But at the same time they should hire or reaquest a native English speaker to go in and clean up the wording.
  • Auto Cache Settings available for each page need to be done from the "Classic" WordPress Editor, not a page builder like Elementor. No big deal, but...
  • Does a poor job of cleaning up after itself when disabled, leaving a bunch of file and stuff behind in the cache directory.
  • Doesn't seem to do HTTP / HTML compression into GZ (Gunzip) files successfully, even when GZIP is checked off.

Not Sure Things

  • Puts SVG stuff into the HTML file. So slightly larger HTML files than other. That makes Bing grumpy because files end up being over their magic 256 K limit.

WP Rocket

Best Features;

  • Stupid fast. Even page builder sites like Elementor load in well under triple digit mS. IE, 69 miliseconds.
  • Great documentation
  • Makes Googles "live page test" VERY happy with very few CSS resources being over the Google "allotment".
  • When updating a page, does a decent job spotting the change, rebuilding the cache (just for that one page) most of the time. Sometimes it waits until the page is visited one time (IE, doesn't Pre Load it).
  • Very low CPU utilization when cache is used, so would seem to have very efficient coding for Plugin.

Worst Issue(s);

  • No way to turn Cache off or on, unless... There's a plugin they make to turn off cache. Not a switch for turning on or off, but enabling / disabling the plugin to turn cache on or off. Although there is a Preload on / off check box which achieves more or less the same thing.
  • NO indication of cache progress (other than watching one's CPU usage spike while the cache is built, expected of course, but...) And no summary of number of cached pages. Why? (PS not necessarily). Because if one is using a "Nag Hide" Plugin, that's the way WP Rocket Displays information about preloading, etc. Plus one has to refresh the page to see the progress.
  • Preload Links feature actually slows things down. Works as described, but is crap. Do NOT use it.
  • ANY change made to settings will trigger automatic rebuilding of cached files. Understandable that they need to be rebuilt, but removing control of the rebuild process so completely from the end user (especially experts) seems cruel.
  • Does not clean up after itself by deleting cached files.
  • Combining JSS Files causes some wonky JQuery Errors. And it makes about 1 - 9 ms of difference, so recommend disabling this feature. In fact enabling anything beyond minify JS seems to cause wonky JS issues or break features.
  • Clear Cache Button does just what it says. But guess what? It also starts the Preload Cache automatically. So why is the Preload Cache Button there. Because, pressing the Preload Cache Button clears the cache (or at least overwrites everything, so effectively the same as deleting or clearing everything first).
  • Image Lazy Load feature may break images loaded with CSS (background images, etc.). And also doesn't make a difference for performance with images loaded via CSS either.
  • Optimize CSS Delivery and "Critical CSS", only seems to enable wonky initial display for a page, no notciable increase in speed for end user. Also seems to rely on an external web server to evaluate it, so if any HTTP blocks are in place, they'll need to be bypassed for wp-rocket.me or the feature turned off.

Not Sure Things

  • Regenerate Critical CSS also regenerates Page Cache. Fine, but might want to mention that or show that it's happening.
  • Any changes made to CSS or JS settings causes a complete rebuild of cache. Understandable, but should mention it somewhere. Or better yet, show cache building progress.
  • As it warns, combining CSS may cause issues. A solution, if using Custom CSS & JS is to have the extra CSS files inserted into the HTML, rather than as separate files. This cures quite a few issues when WP Rocket is in the mix

Other Thoughts

It would be great to have one of these guys have an admin interface that shows the cache status, files, what it's doing, etc. all live updated without page refreshes.

Perfmatters also helps out with stuff (will write about that later)

In the end, the final judge is the end user and Google. Making them happy is the ultimate goal, with Google coming first. Why? Because odds are the end user won't find the website unless Google is happy about things. The builder or admin of the site is in the mix, but falls last. WP Optimize is my first choice from the perspective of the Admin, but is also a distant last in terms of making Google happy. WP Rocket is last on my list for the WordPress Admin, but by big distance the number one choice for making Google happy. That's just so freaky to have it work out that way. The same applies for the Database Cleanup features, but without the need to factor in the end user or Google. So maybe just use something like Advanced Database Cleaner Pro and forget about the 'database cleaning' tools that seem to come with optimization plugins.

Bloat Items to Watch Out for

SkyBoot Icons (part of Elementor or addon for Elementor)

Bottom Line

Use WP Rocket and put up with it's lack of ability to let Admins know what's happening behind the scenes (IE cache files, caching progress, etc.), the silly buttons for cache clearing, etc, and the lack of messages warning what will happen when one changes a setting. Again, all of the dings against WP Rocket are on the Admin side of things. On the Google and End User side of things, they're spectacular.