“Warming” or “Priming” a cache refers to the practice of loading a page even before a visitor comes to your site. The purpose is to fill the cache (either the server or CDN) so that when a visitor finally does hit your site, it serves them a fast cached copy instead of a slow one that the server generates. However, warming a cache is a tricky business, particularly if you have a lot of pages. So how often should you warm your cache, and is it even necessary?
“Pull” Cache Solutions Can Benefit from Warming
Most cache solutions are “pull”. Meaning that your page doesn’t go into the cache until the first time a visitor comes along. The server generates the page, and only after serving that first copy to a visitor, does the caching system file it away into the cache so that the next visit will be faster.
However, under this system, the first visit to a new page is always “normal” and uncached. Website owners don’t like this. And so there are solutions to “warm” the cache by loading it artificially. That way, even the first visitor gets a fast copy of the page.
Warming Can Impact your Core Web Vitals Speed
Now that the Chrome browser from Google is reporting real-world loading metrics for the Core Web Vitals (CWV) stat calculations, website owners are keen for all visitors to see fast page-load speeds. Even the very first one. It’s particularly important when certain pages are viewed infrequently and when you have a long tail of such pages. If say 30% of your visits are to infrequently viewed pages, the server can end up serving all of them dynamically which can hit your CWV metrics.
Priming the Cache is Expensive
NameHero provides in-built caching through the LiteSpeed webserver. However, after installing the plugin, if you head to the “crawling” section, you might see something like this:
By default, on shared hosting servers, NameHero restricts the crawling ability of the plugin because it can use up a lot of resources for no reason. A lot of web hosts do the same thing when configuring crawling on their servers. Now this happens because LiteSpeed is a special plugin that integrates deeply with the backend server, unlike other 3rd party caching plugins. This makes it much faster. But if you use a pure 3rd party plugin like W3 Total Cache, for example, you can configure crawling and there’s nothing your web host can do to stop it.
Is “Warming” Your Cache Necessary with NameHero?
You have to weigh the benefits of warming your cache systematically for potentially hundreds or even thousands of pages against the performance costs of doing so. Most websites get major traffic only to a small segment of their total pages, so it might make sense to adopt a more tailored approach, rather than crawling everything pre-emptively.
On my site WP-Tweaks, after a major content purge, I manually load up the top 4 or 5 pages in my web browser from a couple of locations and call it a day. I don’t take the trouble to systematically warm up my cache for every single page. You could do the same, and get most of the benefits from warming your cache, without the huge performance downsides.
Tiered CDN Caching Helps
On the paid Cloudflare plan, your content can be served from a nearby POP even if it’s not immediately present in the EDGE server closest to your visitor. It comes with the Argo plan, and it’s one of the tools I used to bring the TTFB to below 200 ms on my site WP-Tweaks. This is called tiered caching, and it helps cut deliver speedy content. It means Cloudflare won’t disturb your origin server if it can obtain the content directly from a nearby POP server.
QUIC.cloud doesn’t yet have this feature, though they plan to implement it in the future. So that’s yet another reason to keep an eye on them!
Bottom line: Yes, priming or “warming” your cache can help. However, it’s rarely worth the resource costs for large websites. Instead, pursue a smarter crawling strategy consisting of only pre-loading certain pages that generate the maximum traffic, and rely on a tiered CDN solution if possible, to take care of the rest.
I’m a NameHero team member, and an expert on WordPress and web hosting. I’ve been in this industry since 2008. I’ve also developed apps on Android and have written extensive tutorials on managing Linux servers. You can contact me on my website WP-Tweaks.com!
Thanks for the awesome post Bhagwad. Do you have any tips on how to manually load a few pages from a couple of locations?
Or is that literally visiting your site and browsing the pages multiple times with the use of a VPN?
Thanks for your insight