Thanks to increasing broadband speeds and better hardware, websites today have to perform faster to satisfy user needs. This is recognized by search engines like Google, resulting in website speed also becoming a search ranking factor.
Many have focused on web hosting performance, but that is only a small part of the issue. Today, an increasingly large number of websites are shifting towards web applications as a platform of deployment.
Although such content management systems (CMS) often prove easy to use, they may come with side effects such as less than optimal performance. That’s where options like W3 Total Cache come into play.
Table of contents:
- What is W3 Total Cache
- How Does it Work?
- W3 Total Cache Options and Optimum Settings
- How Scala Hosting Can Help With W3 Total Cache
- Conclusion
- FAQ
What is W3 Total Cache
W3 Total Cache is a WordPress plugin that helps optimize website efficiency in many ways. Utilized by over a million WordPress site owners around the world, it is one of the most popular website optimization plugins on the market.
As the name implies, the main goal of W3 Total Cache is to help WordPress sites load faster for visitors through advanced content caching.
How Does it Work?
Each time a visitor wants to get to one of your website pages, this creates a request to the server. The host then sends back the needed information straight to the visitor’s web browser. Talking about WordPress in question, each visitor request requires the application to connect and find the info in its database. This takes time and resources.
The need for a database is a core part of WordPress and this is both an advantage and disadvantage. The use of a database is what allows this content management system (CMS) to be dynamic and serve custom information. At the same time, querying a database causes significant overhead.
By making use of caching, plugins like W3 Total Cache store some of the site information directly in the visitor’s browser. This way, subsequent requests can be fulfilled without the need for a repeat of the entire database query process.
Although W3 Total Cache has evolved slightly over time, much of its functionality still revolves around its core purpose – content caching.
W3 Total Cache Options and Optimum Settings
Before activating W3 Total Cache it is better to remember a few things. Since your aim is performance optimization, run some benchmark tests before and after you make any changes. Tools like GTMetrix and Pingdom prove invaluable in such cases. Don’t forget to keep up-to-date backups of your entire WordPress site and data.
General Options
This is mainly a segment originally meant to allow you to toggle all options On or Off. W3 Total Cache has since removed the toggle option, which is good since it actually caused a lot of problems. The only option available here is Preview Mode now.
Recommendation: Enable Preview mode if you’re unsure about the settings and want to run some tests. This is an important option – do not forget this, especially if this is your first experience with W3 Total Cache.
Page Cache
Also referred to as disk cache, this is a form of server-side caching. Using this, web page content can be partially stored in the system memory instead of the hard disk for better performance.
Technically, W3 Total Cache is much more than a simple caching tool. It is a highly configurable tool, which can be fine-tuned for maximized site performance.
Recommendation: Enable page cache and the ‘Disk Enhanced’ mode.
Minify
In order to be human-readable, code is generally written with spaces and appropriate formatting. However, this formatting leaves some overhead which can be stripped out through a process called minification. Think of it as a code compression that removes all unnecessary padding.
Minification can be applied to many kinds of programming languages, but the main types that WordPress users are concerned with are HTML, JavaScript (JS), and CSS.
Recommendation: If you’re using a CDN, don’t use Minify on W3 Total Cache. If not, make sure you check everything in Preview mode before applying changes. Look out for problem indicators such as layout issues or Javascript problems.
OpCode Cache
This special type of caching specifically deals with PHP code. Most of WordPress is built on PHP and caching some of the code blocks can be highly beneficial. There are two types of OpCode cache available in W3 Total Cache – Zend and alternative.
Recommendation: Performance for this can vary a lot as well. Test to see what works best for you. If you’re unsure – best to leave this option alone.
Database Cache
Since a large part of what WordPress does is databases queries, it makes sense to store the common ones in your system memory. W3 Total cache comes with its own database which it uses to store visitor requests.
Recommendation: Disable this option and make use of the Object Cache instead.
Object Cache
Although object caching deals with database queries, it’s intended to handle complex instead of simple requests. WordPress also has an in-built object cache but is a bit too limited in design. This is the reason why this option in W3 Total Cache could easily be the best solution for your WP website.
However, bear in mind that the effectiveness is dependent on the exact composition and configuration of your WordPress site.
Recommendation: How this option affects your site can vary a lot depending on your hosting plan and site. If you intend to use object caching, run some tests to see what works best in your situation.
Browser Cache
Using browser caching can help reduce the web server load by moving some of the content directly to visitor web browsers. This won’t help much with first-time visitors but has massive effects on speed for repeated visits. Typically, the browser cache will be valid until the visitor clears the cache on their own.
Be aware, though, there may be some small side effects of doing this. Content refreshes might be slightly delayed for some visitors, but it’s a negligible difference, really.
Recommendation: Always enable browser caching.
Content Delivery Network
CDNs help with caching by distributing data to different servers. W3 Total Cache can be configured to work with such services and avoid conflicts in performance. Interestingly enough, W3 Total Cache doesn’t list Cloudflare in their CDN partners, which is the most popular solution for WordPress (or any) websites worldwide.
Recommendation: Enable this if you’re using a CDN (for example, MaxCDN) but make sure you select the right CDN type from the dropdown menu. Cloudflare users – just ignore this option.
Reverse Proxy
This is a bit of an unusual option since not many will have a reverse proxy. Essentially, it acts as a spare server to help out when your own machine is facing heavy loads. It then handles requests on behalf of your web server.
Recommendation: If you’re using a reverse proxy, this option should be enabled. If you have no idea what this is, you can safely leave it alone.
User Experience
While this does not affect performance significantly, it can change the way some of your visitors perceive their experience when on your site. Images on the visible portion of your page will load first, while others will have lower priority.
Because of this, site visitors get the illusion that the entire page loads very quickly. In reality – it’s only showing the top part, the rest are incrementally loaded later.
Recommendation: Lazy load is now incorporated into the latest versions of WordPress, so you can ignore this option if you’ve been keeping your core application up to date. For the rest – it’s a matter of personal preference, really.
Fragment Cache
Similar to OpCode caching, fragment caching deals with dynamic PHP code blocks. This means it works with specific code fragments (hence the name), which it can store in the operating memory for repetitive use.
Recommendation: While the options available here may look simple (albeit a long list of them), it is better to skip this setting unless you absolutely need it. Most websites will find performance benefits minimal compared to the potential problems during configuration.
Miscellaneous
As the name implies, this is where you’ll find everything that doesn’t fit under one of the main categories above. Some of the settings deal with popular third-party web applications while others may influence performance.
Recommendations: Ideally, don’t enable the options here as it mainly causes unnecessary server load. PageSpeed and GTMetrix can help with performance monitoring as well, but unless you’re a very hands-off site owner, you will know if performance drops anyway.
Debug
This will append debug information on the appropriate cache selected to source code.
Recommendation: Only use these options if you’re facing errors and need help diagnosing them. If not, make sure they are disabled as they will otherwise have a negative effect on your site performance.
Import / Export Settings
This is only meant to quickly backup your W3 Total Cache configuration. I can’t see this being of much use since you shouldn’t be replicating the configuration across multiple sites. Always customize your settings for each site.
One option here can be useful, though – Restore Default Settings. Sometimes we make the mistake of making so many changes that we get ahead of ourselves. If that happens, you can simply click the restart key and start over.
Recommendation: If you’ve enabled Preview mode as discussed earlier – this is where the quick reset option is.
How Scala Hosting Can Help With W3 Total Cache
Realistically speaking, most web hosting services aren’t likely to help you with plugin configuration. Customer support is mainly intended to help you resolve problems with the web hosting service.
That’s where Scala Hosting – through a set of sweet value-added services that aim to turn any customer into a loyal fan.
If you’ve gone through this guide and don’t feel confident in configuring W3 Total Cache – get in touch with Scala Hosting customer support.
Our professional WordPress operators can help you do the configuration based on options they know works best with our hosting solution.
Conclusion
W3 Total Cache is one of the most popular solutions around. Running on more than a million websites, you can be sure the developers of this plugin are doing something right. Tests have proven that setting W3 Total Cache properly has resulted in significant site performance improvements.
However, it also has the potential to cause irreparable damage to sites if the wrong options are selected. So always make sure to keep backups when using plugins like W3 Total Cache and, if possible, test it in a staging environment before deploying on your live site.
Frequently Asked Questions
Is W3 Total Cache free?
Yes. However, it’s more of a freemium model where they offer free functionality, backed up with additional options that come in a ‘Pro’ version. You do not have to pay to use it at all unless you want those extra features.
Can I stack WordPress cache plugins?
No. Doing so will more likely cause problems instead of improving your website performance. Also, some functionalities in cache plugins can overlap with existing WordPress add-ons you may be using.
Can W3 Total cache be used with all WordPress versions?
While W3 Total Cache is backward-compatible, you will need to be running a minimum of WordPress version 3.2 or higher, together with PHP 5.3 or above. It is fully compatible with the newest versions of WordPress as well.
Will Minify break my site?
There have been instances where code minification causes adverse effects. The reason for this isn’t really W3 Total Cache, but the nature of code minification itself. Always make sure to keep Preview mode enabled when testing new settings.
How do I remove W3 Total Cache?
Before disabling the plugin, make sure to turn off all caching and other options. Test your site again to make sure it’s working as it should before you uninstall the plugin. You may have to fix some features broken by the removal of the plugin.