A cached page is answered from a file before WordPress boots. Not after the plugins load, not after the database connects — before any of it. On the shared hosting most sites actually run on, that is where the time goes, and skipping the theme alone only saves the smaller half.
A shop that stays correct
The basket, the checkout and account pages are never cached, and the moment anyone puts something in a basket they stop getting cached pages at all. Prices and stock are thrown away the second WooCommerce changes them. Fast is easy; fast and still right is the work.
It tells you why
Every other caching plugin turns "this page isn't caching" into an afternoon of switching things off. Give this one an address and it says which rule applied, in a sentence, then fetches the page twice to prove what the server really did.
Nothing to configure, nothing to break
Install it and it works. There is no minification, no JavaScript deferral, no image rewriting — none of the features that make a site faster on a test and broken on a Tuesday. It caches pages, and that is the whole plugin.
Features
Everything you need to make a slow site fast
Answers before WordPress loads
A cached page is served from wp-content/advanced-cache.php, which runs before the database connects and before a single plugin is read. The whole hit costs one file include, one hash and one file read — not a WordPress bootstrap with the theme skipped.
Works on the hosting you already have
No Redis, no Memcached, no WP-CLI, no SSH, no server modules and no control-panel access. The cache is files on disk, which is the one thing every host has. Redis makes a fast cache faster; its absence must not make the cache absent.
Tells you exactly why a page was not cached
Type an address into Diagnostics and it runs the real decision — the same code the live path runs, not a description of it — names the rule that applied and explains it in a sentence. Then it fetches the page twice and reports what the server actually did.
Throws away the page you changed, not the whole cache
Edit a post and it purges that post, the front page, its categories, tags, author page, archives and feeds. Not everything. Emptying the lot because one thing changed is why so many sites run a cache that never warms up.
A shop that stays correct
The basket, checkout and account pages are never cached. Anyone with something in their basket stops getting cached pages entirely. Price and stock changes purge the product, its category and the shop page the moment WooCommerce reports them.
A hundred visitors, one rebuild
When a popular page expires, the first request rebuilds it and everyone else is handed the slightly stale copy rather than joining in. Without that, a traffic spike on an expiring page turns into a hundred identical page builds — which is how a busy morning becomes an outage.
Most caching plugins tell you they are enabled. This one checks the two things that decide whether a cached page is really served before WordPress loads, and says which is missing — because the usual failure is a plugin that looks configured and is quietly doing nothing.
yoursite.com/wp-admin
02
It tells you why
Give it an address and it runs the real decision, names the rule that applied, shows which query parameters it kept and which it dropped — then fetches the page twice to prove what the server actually did.
yoursite.com/wp-admin
03
Cache what you mean to
Everywhere, the front page only, or exactly the post types, archives and individual pages you tick — with the basket and checkout deliberately absent, because they are never cacheable whatever anybody chooses.
yoursite.com/wp-admin
04
It already knows about your other plugins
WooCommerce, Easy Digital Downloads, WPML, Polylang, TranslatePress — each named, with exactly what the cache does about it. None of it is a setting, because a basket page is not something to have an opinion about.
Pricing
Get NimbleCache
Every plan includes every feature. Yearly plans renew automatically and can be cancelled any time; lifetime is a single payment. 30-day money-back guarantee on every first purchase.
1 domain
Billed yearly
$19/year
Renews automatically. Cancel whenever you like.
1 domain
One year of updates
One year of support
Free dev and staging sites
Cancel any time
Most popular
5 domains
Billed yearly
$29/year
Renews automatically. Cancel whenever you like.
5 domains
One year of updates
One year of support
Free dev and staging sites
Cancel any time
Unlimited
Billed yearly
$39/year
Renews automatically. Cancel whenever you like.
Unlimited domains
One year of updates
One year of support
Free dev and staging sites
Cancel any time
5 domains
One-time payment
$49once
No recurring charge, ever.
5 domains
Lifetime updates
Lifetime support
Free dev and staging sites
Pay once, no renewals
Most popular
Unlimited
One-time payment
$69once
No recurring charge, ever.
Unlimited domains
Lifetime updates
Lifetime support
Free dev and staging sites
Pay once, no renewals
Secure checkout by Stripe · 30-day refund policy · Cancel any time
After checkout you get a licence key and a download link straight away, plus an email copy. Upload the ZIP under Plugins → Add New, activate it, and paste your key into the plugin settings.
How do updates work?
Once your key is entered, new versions appear on your Plugins screen and install with one click, exactly like a plugin from the WordPress directory.
What happens when my licence expires?
The plugin keeps working. You only lose access to new updates and support until you renew.
Do staging sites use an activation?
No. Local installs, .test and .local domains, and staging or dev subdomains are free and unlimited.