You edited a page, clicked save, hit refresh — and the old version is still sitting there. Annoying, isn't it? Nine times out of ten this isn't a bug. It's cache. Learning how to clear WordPress cache properly — and, more importantly, in the right order — is the whole fix, and it usually takes under five minutes.
Here's the part most guides skip. Your site isn't cached in one place. It's cached in four or five places at once, each with its own separate purge button. Clear them out of order and stale content keeps leaking through — which is exactly why you refresh and see nothing change.
Quick Answer: To clear WordPress cache completely, work from the inside out: (1) purge your caching plugin, (2) clear the server-level cache from your hosting panel, (3) purge Cloudflare or your CDN, then (4) hard-refresh your browser. Changes usually stay hidden because one of those layers got skipped. Done in the right order, the whole job takes about five minutes.
Why Your Changes Aren't Showing: The Cache Layers Explained
Caching exists for a good reason. A managed host like Hostaccent runs several caching layers so pages stay fast — often trimming time-to-first-byte from around 800ms to under 200ms — but that same speed is what hides your edits. Each layer stores a finished copy of the page, and unless it's told the copy is stale, it keeps serving the old one.
There are usually four layers, stacked one behind the other:
- Browser cache lives on your own device. It's why an edit shows on your laptop but not your phone.
- Plugin (page) cache is the static HTML a WordPress caching plugin builds inside WordPress.
- Server cache is full-page or object caching your host runs at the server level — often independent of any plugin.
- CDN cache is copies stored on edge servers worldwide by Cloudflare or a similar network.
As of 2026, most managed WordPress stacks run all four automatically — but automatic isn't the same as instant. The golden rule: clear from the layer closest to WordPress outward toward the visitor. Skip one and the layers downstream happily keep serving stale content. That single ordering mistake is behind most "why won't my cache clear" headaches.
How to Clear WordPress Cache in the Right Order
This is the sequence that actually works. Follow it top to bottom and stop the moment your change appears.
Step 1 — Purge your caching plugin
Start inside WordPress. Whatever caching plugin you run, there's a one-click purge in the admin bar.
- WP Rocket: admin bar → WP Rocket → Clear cache.
- W3 Total Cache: Performance → Purge All Caches.
- LiteSpeed Cache: admin bar → LiteSpeed Cache → Purge All. (It has 7M+ active installs and is the default if your server runs LiteSpeed.)
- WP Super Cache: Settings → WP Super Cache → Delete Cache.
Pro Tip: Never run two caching plugins at once. They don't stack — they fight, produce unpredictable output, and can slow the site down or break it outright. Pick one and deactivate the rest.
Step 2 — Clear server-level cache
Many hosts add caching above the plugin — NGINX FastCGI, Redis object cache, or LiteSpeed — completely separate from anything inside WordPress. This is the layer people forget.
On the Nginx → Apache + NVMe stack we run at Hostaccent, the server cache is purged from the hosting dashboard, not the WordPress admin. If your panel has a "Flush Cache" or "Purge Server Cache" button, that's the one. No button? Ask support to flush it — faster than guessing.
If you have SSH access and use an object cache, wp cache flush via WP-CLI clears it cleanly, including on multisite.
Step 3 — Purge Cloudflare (CDN) cache
If you route traffic through Cloudflare, it's usually the last layer a request passes before the visitor — so it can serve an old page even after your plugin and server caches are spotless.
Log in to Cloudflare, pick your domain, then go to Caching → Configuration → Purge Everything. For a single changed page, use Custom Purge and enter just that URL — gentler than nuking the whole cache. Cloudflare's own cache purge documentation covers targeted purging in detail.
Insider Insight: Instead of purging by hand every time, set a sensible edge TTL. A 24-hour TTL is a reasonable default for content sites — Cloudflare expires copies on schedule, so you touch this far less often.
Step 4 — Hard-refresh your browser
Last, clear the layer on your machine. A hard refresh forces the browser to re-download assets instead of reusing local copies:
- Windows: Ctrl + F5
- Mac: Cmd + Shift + R
Still old? Open the page in a private/incognito window. If the new version shows there, your browser cache is the culprit — clear it fully. If it's still old in incognito, the problem is upstream and you missed a server or CDN layer.
Clearing Cache in the Popular WordPress Caching Plugins
Most sites lean on one plugin for the page-cache layer. Here's how the common ones compare so you can pick one and move on — no single tool wins for every setup.
| Plugin | Best for | Purge location | Cost | |---|---|---|---| | WP Rocket | Zero-config, hands-off setups | Admin bar → Clear cache | Paid (from ~$59/yr) | | LiteSpeed Cache | Sites on a LiteSpeed server | Admin bar → Purge All | Free | | W3 Total Cache | Granular manual control | Performance → Purge All | Free / paid | | WP Super Cache | Simple blogs, low maintenance | Settings → Delete Cache | Free |
If your server runs LiteSpeed, that decides it before you open the others. Want it fully automatic and don't mind paying? WP Rocket activates with sensible defaults. Need speed help beyond caching? Our guide to fixing a slow WordPress site walks through the rest.
When Your WordPress Cache Is Not Clearing (The Deeper Fixes)
You cleared every layer and the old version still shows. A WordPress cache not clearing after all four layers usually points to something deeper — and this is where most guides stop and the real troubleshooting starts. In the support tickets our team handles, a "cache won't clear" report almost always traces back to one of these four culprits.
Object cache and transients
A page-cache flush doesn't always touch the object cache (Redis/Memcached) or WordPress transients stored in the database. Themes and page builders lean on these for menus, pricing, and scheduled data. When we migrate customer sites, we repeatedly see a stale object cache survive a plain page purge. Run wp cache flush, and if a transient is still stuck, wp transient delete --all.
OPcache for code changes
Edited a theme file or plugin code and nothing changed? That's OPcache — PHP's compiled-bytecode cache — serving the old version. Content edits don't trigger it, but code changes do. OPcache usually persists until PHP-FPM reloads, so reload PHP-FPM (or use your panel's "restart PHP" option) to force a rebuild. PHP's OPcache documentation explains the behaviour. A stuck OPcache after a bad deploy can even surface as a 504 gateway timeout.
The logged-in vs logged-out trap
Many caching setups skip the cache for logged-in admins. So you see your changes fine, but logged-out visitors still get the cached old version. Always confirm in an incognito window before you assume the purge failed.
Stubborn CSS and JS
Sometimes one stylesheet refuses to update because the browser thinks it already has the right file. The clean fix is a version query string — style.css?ver=2.1 — which tells browsers and CDN edges to fetch fresh. Most themes bump this automatically on update; a rogue one may need it forced.
If purges become a daily fight, the layers aren't talking to each other — often a sign the hosting setup itself is the bottleneck.
Common Cache-Clearing Mistakes to Avoid
A few habits cause most of the wasted hours:
- Clearing only the plugin. That's one layer of four. Server and CDN caches keep serving stale HTML.
- Purging out of order. Clear the browser first and the CDN just re-caches the old page seconds later. Inside-out, always.
- Forgetting mobile. Phone browsers hold cached copies longer. Test on the actual device, not just desktop.
- Ignoring DNS after a migration. Just moved hosts? DNS propagation, not cache, may be why you still see the old site.
- Caching cart and checkout pages. On stores, never page-cache customer-specific pages — a cached checkout showing an old price quietly kills conversions.
Pro Tip: If your homepage keeps failing Core Web Vitals even with caching on, the cause is usually configuration — a bloated exclusion list or a plugin conflict — not the cache itself. Fix the config, not the symptom.
Some hosts (Hostaccent included) wire the plugin, server, and CDN layers so a single "publish" purges all of them together — which removes almost every mistake on this list.
Let Managed Hosting Handle the Caching for You
Now you know how to clear WordPress cache across every layer — plugin, server, CDN, browser. But if doing that dance each time you edit a page sounds tedious, that's exactly what managed hosting removes. Hostaccent WordPress Hosting runs server-side and CDN caching that purge in sync with WordPress, so a Publish click clears the stack in one go — no dashboard-hopping, no stale checkout pages. The Basic plan starts at $22.99/yr (renews at $22.99/yr) on a Cloudflare → Nginx → Apache + NVMe SSD stack, backed by UK-based human support and a 99.9% uptime target. As a UK-registered host with a Bangladesh branch serving sites worldwide since 2012, that's the setup we run ourselves. Honest caveat: if you need edge-level custom cache rules or heavy WooCommerce tuning, look at a higher tier — but for most sites, Basic handles the layers you'd otherwise juggle by hand. Running serious traffic? See the best hosting for high-traffic WordPress sites.
Frequently Asked Questions
How to clear WordPress cache the right way?
Work inside-out and don't skip a layer: purge the caching plugin, then the server cache from your hosting panel, then Cloudflare/CDN, then hard-refresh your browser. If it's still stale, check the object cache, OPcache (for code edits), and whether you're only seeing the old page while logged out. On a managed setup like Hostaccent's, these layers purge together, so a single publish does it.
Will clearing my cache delete my content?
No. Clearing cache is completely non-destructive. It only removes temporary stored copies of your pages — your posts, images, settings, and database stay untouched. The next visitor simply gets a freshly rebuilt copy, which may load a second or two slower until the cache warms back up.
How do I purge Cloudflare cache for WordPress?
In the Cloudflare dashboard, select your domain and go to Caching → Configuration → Purge Everything to clear the whole site, or Custom Purge to clear a single URL. It takes effect across Cloudflare's global edge within seconds, so visitors see your latest version almost immediately.
How long until my WordPress changes appear?
Without caching, edits show instantly. With caching it depends on the layer: a manual purge is immediate, while an untouched CDN or server cache can hold old content for minutes to hours until its TTL expires. Clear all layers to see changes right away.
Why does my site look old on mobile but new on desktop?
Mobile browsers store cached copies longer to save data. Do a hard refresh or clear the cache in your phone's browser, or test over mobile data instead of Wi-Fi. It's a device-level browser cache, separate from anything on the server or CDN.
Do I need a caching plugin if my host already caches?
Usually not both at full strength. If your host runs solid server-side page caching, a heavy page-cache plugin can conflict with it. Keep the plugin for minification or lazy-load if you like, but let the server handle page caching — or ask your host which combination they recommend.











Discussion
Have a question or tip about this topic? Share it below — your comment will appear after review.