Do you want to speed up your WordPress site?
The answer will be absolute YES!
W3 Total Cache dramatically improves the speed and user experience of your site.
When you fully configured this plugin, you will see a 10x improvement in overall site performance and it also improves search engine result page rankings especially for mobile-friendly websites.
W3 Total Cache plugin is compatible with shared hosting, virtual/dedicated servers and dedicated servers and clusters.
There are many other benefits of installing the W3 Total cache plugin to your website.
So, let’s get started to configure W3 Total Cache Settings.
Install W3 Total Cache Plugin
In your left-hand navigation menu, go to plugins (Add New).
Then, in the right corner, type in your search bar W3 Total Cache.
You will see the W3 Total cache plugin, as seen below.
Then, click on the Install Now button.
After the plugin installs, click the activate button.
Now, when you’ve activated this plugin, you’ll see a Performance added in your left-side menu.
Click on the performance to configure W3 Total Cache settings.
By clicking on the performance you’ll be redirected to W3TC (W3 Total Cache) Dashboard, where you’ll see a list of menu that you’ve to configure.
- General Setting
- Page Cache
- Database Cache
- Object Cache
- Browser Cache
- User Agent Groups
- Referrer Groups
- Cookie Groups
- Fragment Cache
- User Experience
Now, Click on Compatibility Check button.
This result reveals which functions of this plugin will work or not based on your current server configuration setting.
Based on the result, you can enable plugin options to see if you need additional server support for some setting.
W3 Total Cache Settings
1. General Setting
Now, click on Performance >> General Setting to start the configuration process.
Here you can enable or disable all the W3TC features.
First of all, you’ll see an option Preview Mode. Enable this to test configuration scenarios before releasing them (deploy) on the actual site.
We will suggest you Enable this option because preview mode helps you try out changes before going live with them.
2. Page Cache
This is the most important part of the W3TC plugin.
Page cache reduces the responsive time of your site and increases the scale of your web server.
Enable this option and if you’re using a shared hosting select Disk Enhanced mode in the page cache method.
If you’re using a dedicated/virtual server, you can choose Alternative PHP cache mode.
Then, click the Save all setting button.
Minify reduce the load time of your website by decreasing the size and number of CSS and JS files. Minification automatically removes unnecessary data from CSS, JS, feed, page and post HTML.
Simply Enable the minify option and select minify mode to Auto.
If you’re using a shared server user select Disc in minify cache method.
Leave all the other options as default.
Minification can sometimes break your site. So, make sure to preview after choosing this setting to make sure minification isn’t causing any issue on your site.
4. Database Cache
If you’re using a shared server then it can work against you, so it is better to skip this option.
You can use it for servers like virtual private server, dedicated server, and managed WordPress server.
5. Object Cache
Object caching involves storing database query result so that the next time a result is needed, it can be served from the cache without having a repeated query the database.
But, object cache too can draw heavily on server resources so it’s better to keep it Disabled on most shared hosting plans.
6. Browser Cache
When a user visits your website, browser cache saves data such as HTML and images, needed to see a website. The intent behind saving such data is to help with bandwidth.
So, the next time user come back to see a page, it takes less time to load as a cached version of this page is already been saved.
So, if you want to increase the user experience of your site, you should definitely Enable this option.
7. CDN (Content Delivery Network)
If you’re using a CDN (Content Delivery Network) service like Cloudflare or MaxCDN, Enable this option.
A CDN (Content Delivery Network) refers to a geographically distributed group of servers that work together to provide fast delivery of internet content.
The goal of CDN is to reduce latency – the delay between submitting a request for a web page and a web page fully loading on your device by reducing the physical distance that the request has to travel.
8. Reverse Proxy
If your server receives a large number of request st the same time, it will be stuck in fetching the requested data and trying to serve up the new request.
In this situation, the reverse proxy server acts as a middleman, it adds scale to a server by handling request before WordPress does.
9. Network Performance & Security
Here you can set the Cache time limit.
You can set that, in how many minutes data retrieved from Cloudflare should be stored in your site.
You can set the limit of 5 minutes.
You can also Enable Page Caching if you have HTML pages cached on Cloudflare level.
10. User Experience
1. Lazy Load Images
Lazy load reduce the loading time of your website.
When any user visits your website, instead of loading all the images, lazyload function only load the images that are shown to the user.
When the user scrolls down then it downloads the other images due to your site load faster.
So, Enable the option of Lazy Load Images.
2. Disable Emoji
You can Enable this option to remove emojis support from your website.
Leave all the other options as default.
11. Fragment Cache
Fragment caching is similar to object caching, in that it assists in improving performance by reducing the total number of database queries required to generate pages for many queries.
Fragment caching works by freeing up MySQL server resources taken by serving repeated queries returning the same data each time. So that it has more power to handle real dynamic data.
If you’re using a shared server Don’t Enable this option.
New Relic is a monitoring tool that lets you see how WordPress is performing and can warn you if your website is running slowly.
For example, you don’t need it to run W3TC but it can provide useful data.
You’ll need to set up an account at newrelic. Once you have an account, you’ll also need to install some software on your server.
This part is only usable if you’ve upgraded W3TC plugin.
You’ll get a license key after upgrading W3TC, enter that license key.
This section covers a bunch of setting. The first option enables Google Page speed Dashboard widget.
You’ll need an API key to show Google Page Speed in W3TC dashboard.
Enabling it optional, as you can always test pages manually.
Enabling this option debugging information at the end of each page. If you’re not using it actively, it’s better to keep it disabled.
Because it posts debugging info into the HTML source code on a live site.
16. Import/Export Setting
If you’ve W3 Total Cache setting available at any other website, you can import that setting by clicking on button Choose file.
Or if you want to download the active setting file you can get it by clicking Download button.
You can also restore all setting to default, click Restore Default Setting.
Configuring (fine-tuning) The General Setting
After configuring the general setting, now it’s time to fine-tune each setting separately.
To do so, click on the respective item in the left-hand side menu.
Click on, Page Cache, and you will see a separate set of page cache option.
1. W3 Total Cache Settings – Page Cache
The general setting of page cache is all about caching different fields like the page, posts, categories, comments, and much more.
Since the front page is a most visited and important page of many blogs, always Enable cache front page.
Enable cache feeds: site, categories, tags, comments.
Enable cache SSL request if you’ve implemented SSL on your site.
Aliases feature allows you to cache the same WordPress content that is available on different domains. We do not recommend enabling this feature.
This is not useful to most of the websites.
Cache Preload crawls through your sitemap, enabling it builds a cache even before a visitor request the page. To enable this, you’ll need to type XML sitemap of your website.
Enable preload the page cache to update the cache version each time you publish a new post.
Here, you can specify the pages and feeds that you want to automatically purge after posts are created, edited, or posted.
The default setting (front page, post page, blog feed) is recommended for most of the sites because an additional option may reduce server performance.
It can enable your theme, plugin, or custom applications present new powerful interfaces for managing and publishing your site content.
The most important thing to understand about the API is that it enables the block editor and modern plugin interfaces without compromising the security and privacy of your site.
So, if you’re not a developer, we recommend to leave it on Don’t Cache.
In W3TC Advanced, you can customize a variety of setting compatibility mode, reject the head request, reject user agents, and much more.
But the advance setting can change the structure of your blog. So, we recommend to leave it as default.
2. W3 Total Cache Settings – Minify
Now, let’s go to the minify W3 Total Cache Settings.
Enable rewrite URL structure to make your URL’s look pretty good.
Disable minify for logged in user, we recommend to Disable this option because if you enable this option, authenticated users will not receive minify pages.
HTML & XML
Enable the HTML minify setting.
Enable inline CSS minification to remove whitespace in inline CSS.
Enable inline JS minification to remove whitespace in inline JavaSript.
Disable don’t minify feeds. Feeds are only used by RSS readers, so minifying feeds is not necessary.
Line break removal option is enabled by default, so keep it enabled.
Enable the JS minify setting.
Operation in areas, here you can select the embed type of JS for before and after. You can choose either, Default (blocking), non-blocking JS, non-blocking using “async”, non-blocking using “defer”.
We recommend using the default (blocking) method for before and after both.
Leave all the other options as default.
In this section, you can configure the CSS minification setting.
There is nothing much to do here, simply Enable the CSS minify setting and leave all other options as default.
Since we have selected “Disk: Enhanced” page cache method, we can’t use HTTP/2 push since it is not supported for that method.
So, don’t Enable the HTTP/2 push option.
In advance setting, you can specify the interval between download and update of an external file in the minify cache.
By default, W3TC update external files in every 86400 second i.e. 24 hours.
Garbage collection interval, this setting specifies how frequently expired cache data is removed. The default setting is 86400 second.
3. W3 Total Cache Settings – Browser Cache
We have enabled browser caching in W3 Total Cache general setting. So, let’s configure it’s setting now.
Enable last modifier header to enable 304 not modified response.
Configuring Expire headers is very important for efficient browser caching. So, Enable this option.
Enable cache-control header to ensure that static files are cacheable by browsers.
Enable HTTP (gzip) compression, When you enable this option the download time for text-based files reduces.
Disable HTTP (brotli) compression if you’ve already enabled gzip compression.
Leave all the other setting as default.
The setting of browser cache for CS, JSS, HTML, AND XML is same so it is better to leave all that setting as default.
4. W3 Total Cache Settings – User-Agent Groups
By using W3 Total Cache “user-agent group” feature you can create user agent groups by specifying an agent name. For example, android or iPhone. By using this you can create different caches for a different set of the device.
You can create different caches based on screen width.
You can also configure your site to render with a different theme if a user visits your site from a mobile device.
5. W3 Total Cache Settings – Referrer Groups
Here, you can define custom caching behaviour based on requests HTTP referrer with Referrer Groups. For example, you can direct users coming from different sources such as Google or Bing.
6. Cookie Groups
You can create a group of cookies by specifying names in cookies field. Assign a set of cookies to ensure that a unique cache is created for each Cookie Group.
You can also drag and drop groups into order to determine their priority.
7. W3 Total Cache Settings – CDN
CDN protects and accelerates your website.
Enable Host attachments to host all attachments of your WordPress media library from your CDN.
Enable Host wp-includes files to host your WordPress static core file from your CDN.
Enable Host theme files to host your theme file from your CDN.
Enable Host minified CSS and JS file to host CSS and JS file from your CDN.
Enable Host custom files to host your custom files that are not listed in your media library or theme folder from your CDN.
Disable the Add canonical header.
Disable the option “Only purge CDN manually” so that W3TC purge cache automatically.
Disable the option “Disable SSL on CDN pages” because it is best to active CDN on both HTTP and HTTPS pages. So keep this option disabled.
Disable the option Use CDN links for the media library on admin pages” because it can rewrite URL in your media library.
Enable Add CORS header to allow your CDN assets to display on other domains.
Disable the option “Disable CDN for following roles” so that all the roles of your website such as administrator, editor, author, contributor, and a subscriber can use the feature of CDN.
8. W3 Total Cache Settings – User Experience
Now, let’s customize the user experience setting of W3 Total Cache.
Enable Process HTML image tags to ensure that images are lazy-loaded on your website.
Enable Process background images to allow background images to be lazy-loaded.
Exclude words, here you can specify the words that you want to exclude. We recommend keeping this option as default.
Script embedded method, keep this option as default.
9. W3 Total Cache Settings – Extensions
The following extensions are available on W3 Total Cache.
- Google Feedburner
- Fragment Cache
- Genesis Framework by StudioPress
- New Relic
- Yoast SEO
If you’re using any of these extensions on your site, you can integrate those extensions with W3 Total Cache to improve their performance.
Here, we will show you how you can integrate W3 Total Cache with Cloudflare.
Integrate W3 Total Cache Settings With Cloudflare
To integrate W3 Total Cache Settings with Cloudflare, you have to activate the Cloudflare option.
Next, click on setting and under credentials you’ll see a button Authorize.
Since I have already linked my Cloudflare account that’s why it is showing Reauthorize.
To authorize your Cloudflare account you have to enter the API key of Cloudflare. To get API key login to your Cloudflare account using your email address and password.
After login, you’ll see an Overview tab in your Cloudflare dashboard, click on it.
Then, scroll down and you’ll see an option Get your API token.
Click on Get your API key.
Next, click on API tokens, here you will see Global API Key, click on the View button and you’ll get your API key.
Copy that API key and paste it in W3 Total Cache setting.
Your Cloudflare account is now integrated with W3 Total Cache Plugin.
Leave all the other setting as default.
W3 Total Cache is the highest-rated and most complete WordPress performance plugin that is used by millions of people.
Follow all the steps we have mentioned in this post to fully configure your W3 Total Cache Settings and to dramatically improve the speed and user experience of your site.
Also, tell us in the comment below, the changes you’ve seen in the performance of your site after installing the W3 Total Cache plugin.
I am Ankur Gohite, the founder of Huppdigital. A blog that provides authentic information regarding blogging, SEO, affiliate marketing, and how to make money online.