Rules that match how your site works
Target exact content, post types, categories, URL paths, or the entire eligible site. Combine conditions, add exceptions, and set priorities for predictable results.
Basil turns eligible WordPress pages into static HTML—then lets you decide exactly what gets cached, what stays dynamic, and why.
Most cache plugins ask you to turn everything on and hunt for exceptions later. Basil starts with nothing cached, then follows the rules you choose.
Target exact content, post types, categories, URL paths, or the entire eligible site. Combine conditions, add exceptions, and set priorities for predictable results.
On a valid warm hit, Basil's standalone drop-in sends the final HTML without loading WordPress, Composer, a database, or a remote service.
Logged-in, session-based, cart, private, and otherwise unsafe requests bypass the cache and continue through WordPress normally.
When more than one rule applies, Basil resolves them by priority, specificity, and creation order. The same request and rules produce the same decision.
Basil stays out of the way until a request is both explicitly matched and safe to cache.
Create cache and bypass rules in the WordPress dashboard. Unmatched requests keep using normal WordPress processing.
The first eligible visit renders normally. Basil validates the final 200 HTML response, then stores it as a guarded local file.
Later eligible visits receive the cached HTML through WordPress's early cache lifecycle—before the rest of WordPress loads.
Performance is useful only when it respects your visitors. Invalid, expired, unknown, or unsafe cache states fail open to normal WordPress processing instead of showing a cache error.
Read common questionsShort answers to the questions site owners usually ask before choosing a cache plugin.
No. Basil starts in bypass mode. You complete the guided setup and create or enable a cache rule before any page can be cached.
No. Authentication, session, cart, password, and other known personalization signals make the request ineligible for the page cache.
On your own server, inside Basil's private directory under wp-content/cache/basil/. Version 1 uses no remote cache service.
No. Basil makes no runtime external requests and collects no telemetry.
Not in version 1. Basil detects multisite and keeps page caching disabled with a clear explanation.
Basil is built for site owners who want the speed of static HTML and the confidence of explicit, explainable rules.