WordPress Development
WordPress Caching Explained: How to Speed Up Your Site with WP Rocket and W3 Total Cache
Caching is the single most impactful speed optimisation you can make on WordPress. Here is how it works and how to configure it correctly.
Simple Automation Solutions
·
·
⏱ 10 min read
Without caching, WordPress rebuilds every page from scratch for every visitor — querying the database, running PHP, and assembling HTML before sending anything to the browser. On a busy site this is slow and resource-intensive. Caching solves this by storing pre-built page copies and serving them instantly.
What WordPress caching actually does
When a visitor loads your homepage without caching, WordPress executes PHP, runs 20–60 database queries, and assembles the HTML — this takes 500ms–3 seconds depending on your server. With caching, WordPress does this once, saves the resulting HTML file, and serves that saved file to every subsequent visitor — taking 10–50ms instead.
There are several layers of caching, each addressing a different bottleneck:
| Cache type | What it stores | Speed improvement |
|---|---|---|
| Page cache | Full HTML of each page | Largest — 80–95% faster TTFB |
| Browser cache | Static files in visitor’s browser | Eliminates repeat downloads |
| Object cache | Database query results | Significant for dynamic pages |
| CDN cache | Static assets on edge servers | Reduces global latency |
| Opcode cache | Compiled PHP bytecode | Server-level — usually pre-configured |
Page caching delivers the largest speed improvement of any optimisation you can make on WordPress. If you do nothing else, enable page caching. It turns a 2–3 second page load into a 200–400ms page load on most servers.
WP Rocket — the premium standard
WP Rocket is the most widely recommended caching plugin for WordPress. It activates page caching automatically on installation with sensible defaults, and its interface is clean enough that non-developers can configure it correctly within minutes.
Cost: $59/year for one site, $119/year for three sites, $299/year for unlimited sites.
Recommended WP Rocket settings
Enable ‘Enable caching for mobile devices’ and ‘User Cache’. Leave ‘Cache Lifespan’ at 10 hours for most sites — lower it to 2–4 hours if you publish content multiple times per day.
Enable ‘Minify CSS files’ and ‘Minify JavaScript files’. Enable ‘Combine CSS files’. Be cautious with ‘Combine JS’ — test your site after enabling it as it occasionally breaks scripts. Enable ‘Defer JavaScript execution’.
Enable ‘Lazy load for images’ and ‘Lazy load for videos’. Enable ‘Add missing image dimensions’ to prevent layout shift (CLS). Enable WebP caching if you are serving WebP images.
Enable ‘Activate Preloading’ and ‘Preload Links’. Connect your sitemap URL so WP Rocket pre-warms the cache by crawling your sitemap after cache is cleared.
Exclude any pages that should never be cached: your cart page, checkout page, account pages, and any page with personalised content. Add their URLs to the ‘Never Cache These Pages’ field.
W3 Total Cache — the free alternative
W3 Total Cache (W3TC) is the most powerful free caching plugin for WordPress. It offers more granular control than WP Rocket but requires more configuration to get right. It is the right choice if you need a free solution or want fine-grained control over caching behaviour.
W3TC essential settings for beginners
Go to Performance → General Settings. Enable ‘Page Cache’ and set the method to ‘Disk: Enhanced’ — this is the most compatible option for shared hosting. Enable ‘Database Cache’ set to ‘Disk’ and ‘Object Cache’ set to ‘Disk’.
Go to Performance → Page Cache. Enable ‘Cache front page’, ‘Cache feeds’, and ‘Cache SSL’. Set ‘Garbage collection interval’ to 3600 seconds (1 hour). Add your cart and checkout pages to the ‘Never cache these pages’ list.
Go to Performance → Browser Cache. Enable ‘Set Last-Modified header’, ‘Set expires header’, and ‘Enable HTTP (gzip) compression’. Set the CSS and JS expiry to 1 year (31536000 seconds).
Go to Performance → Minify. Enable ‘Rewrite URL structure’. For CSS, set ‘Minify’ to Auto. For JS, test carefully — use Manual mode if Auto breaks your site’s scripts.
W3 Total Cache configured correctly matches WP Rocket’s performance on most metrics. The difference is the time it takes to configure — WP Rocket takes 10 minutes to a working setup; W3TC takes 30–60 minutes and requires testing. For non-developers, WP Rocket’s $59/year cost is justified by the time saved.
What not to do with WordPress caching
- Never run two caching plugins simultaneously — they conflict and cause blank pages or broken layouts. Pick one.
- Do not cache logged-in users — admin users and logged-in customers see personalised content. Both plugins exclude logged-in users by default; verify this setting is on.
- Do not cache WooCommerce cart/checkout pages — these pages are dynamically generated per user. Caching them causes cart contents to bleed between users.
- Clear cache after every content update — both plugins can be set to automatically clear the cache for a page when it is updated. Enable this to ensure visitors always see fresh content.
Want your WordPress site configured for maximum speed?
Simple Automation Solutions sets up caching, image optimisation, and CDN for WordPress sites worldwide — delivering measurable Core Web Vitals improvements.
Frequently asked questions
How do I know if WordPress caching is working?+
The fastest check is to open your website in a browser, view the page source, and look for a comment like or similar near the bottom of the HTML. You can also use GTmetrix or Google PageSpeed Insights before and after enabling caching — you should see a significant reduction in Time to First Byte (TTFB).
Does WordPress caching work with WooCommerce?+
Yes, with proper configuration. Both WP Rocket and W3TC include WooCommerce-specific settings that automatically exclude cart, checkout, and account pages from caching while caching all product and category pages. WP Rocket has the most seamless WooCommerce integration and is the recommended choice for e-commerce sites.
Should I clear my WordPress cache before updating plugins?+
Yes — clear your cache after major plugin or theme updates, not before. Updates may change the CSS or JavaScript files your pages depend on. Clearing the cache after an update ensures visitors receive the new files rather than the old cached versions.
Simple Automation Solutions is a global digital product studio specialising in WordPress and Bubble.io development. We serve founders, startups, and businesses worldwide — delivering production-ready websites, web apps, and MVPs built to rank, convert, and scale.
