Requirements
| WordPress | 6.2 or higher |
|---|---|
| PHP | 7.4 or higher |
| Server | Apache with mod_deflate and mod_expires for GZIP and browser caching. NGINX works for all features except .htaccess-based rules |
| License (Free) | GPL-2.0-or-later — available on WordPress.org |
| License (Pro) | Perpetual license with updates |
| External Dependencies | None. No API keys, no third-party services |
Installation
Free Version (from WordPress.org)
- Go to Plugins → Add New in your WordPress admin
- Search for Quickfire Cache and Speed Booster
- Click Install Now then Activate
Pro Version
- Download the Pro ZIP from your account
- Go to Plugins → Add New → Upload Plugin
- Upload the ZIP and click Install Now
- Activate the plugin and enter your license key
Quick Start
The fastest way to optimize your site:
- Go to Quickfire Cache in your WordPress admin sidebar
- On the Dashboard tab, click Enable All Free Features
- Done — page caching, minification, lazy loading, and all cleanup optimizations are now active
For more control, visit the Caching and Optimization tabs to toggle individual features.
Free vs Pro
The free version covers the essentials. Pro unlocks advanced optimizations for maximum performance.
Free Features
Pro-Only Features
Dashboard & Optimization Score
The Dashboard tab gives you a bird's-eye view of your optimization status.
Optimization Score
A score ring from 0–100 shows how optimized your site is based on which features are enabled. Each feature contributes a weighted point value — page caching is worth the most (20 points), while smaller cleanup items are worth 1–2 points each.
| 80–100 | Excellent (green) |
|---|---|
| 60–79 | Good (teal) |
| 40–59 | Moderate (yellow) |
| 0–39 | Needs Work (red) |
Below the score, every feature is listed with a checkmark or X showing whether it's active, along with its point value.
Quick Actions
- Enable All Free Features — Turns on every free feature in one click
- Disable All Features — Turns everything off
- Run Speed Test — Jump to the Speed Test tab
- Clear Cache — Purge all cached pages and minified files
Caching
The Caching tab controls server-level performance optimizations.
Page Cache
When enabled, the plugin saves a full HTML copy of each page to disk. On subsequent visits, the cached file is served instantly without running PHP or database queries.
| Enable Page Cache | Turn page caching on or off |
|---|---|
| Cache Lifetime | How many seconds before a cached page expires. Default: 3600 (1 hour). Set higher for low-traffic sites, lower for frequently updated sites |
The Caching tab also shows live cache stats: number of cached pages, total cache size, and counts of minified CSS/JS files.
GZIP Compression
Compresses text-based resources (HTML, CSS, JS, XML, JSON, SVG) before sending them to the browser. Typically reduces transfer size by 60–80%. Requires Apache mod_deflate.
Browser Caching
Sets expiration headers so browsers cache static assets (images, CSS, JS, fonts) locally. Return visitors load your site much faster because assets come from their local cache. Requires Apache mod_expires.
.htaccess file. If your .htaccess isn't writable, the plugin will notify you.Optimization Tab Overview
The Optimization tab contains all frontend optimizations grouped into cards: HTML, CSS, JavaScript, Lazy Loading, Cleanup, Header Cleanup, and more. Each feature is a simple on/off toggle.
Settings are saved per-tab — clicking Save on the Optimization tab only saves optimization settings, not caching settings.
Minification
HTML Minification
Removes HTML comments, excess whitespace, and blank lines from your page output. Reduces page size without affecting how the page looks or works.
CSS Minification
| Minify Inline CSS | Compresses CSS inside <style> tags in your HTML. Strips comments, collapses whitespace, removes unnecessary semicolons |
|---|---|
| Minify CSS Files | Compresses external .css stylesheet files. Creates minified copies in /wp-content/cache/ssbc/css/ and serves those instead |
| Remove Query Strings | Strips ?ver= parameters from CSS and JS URLs for better CDN and browser caching |
JavaScript Minification
| Minify Inline JS | Compresses JavaScript inside <script> tags. Strips comments, collapses whitespace. Preserves string literals and JSON blocks |
|---|---|
| Minify JS Files | Compresses external .js files. Creates minified copies in /wp-content/cache/ssbc/js/. Automatically skips jQuery core to avoid breaking sites |
JavaScript Controls
Defer JavaScript
Adds the defer attribute to script tags. Deferred scripts load in parallel with HTML parsing and execute after the page is parsed, preventing render-blocking. jQuery core is automatically excluded to prevent dependency issues.
Delay JavaScript
Converts script tags into inert <template> elements that only load when the user interacts with the page (mouse move, touch, scroll, keypress, or click). This is the most aggressive JavaScript optimization and delivers the biggest improvement to initial page load metrics.
| Delay Timeout | Milliseconds to wait before loading delayed scripts regardless of interaction. Set to 0 to only load on user interaction (with a 5-second safety fallback) |
|---|---|
| Delay JS Exclusions | One keyword per line. Any script whose tag or handle contains a listed keyword will not be delayed. Use this for scripts that must run immediately (analytics, consent managers, etc.) |
Remove jQuery Migrate
Removes the jQuery Migrate compatibility script. Modern plugins don't need it. Saves ~10KB. Only applies on the frontend; the admin area is not affected.
Lazy Loading
Defers loading of media until the user scrolls near it, reducing initial page weight.
| Lazy Load Images | Adds loading="lazy" to <img> tags in post content and thumbnails. Skips images that already have a loading attribute |
|---|---|
| Lazy Load iFrames | Adds loading="lazy" to <iframe> tags. Great for embedded YouTube videos, maps, and third-party widgets |
| Lazy Load Videos | Sets preload="none" on <video> tags so the browser doesn't download video data until the user clicks play |
WordPress Cleanup
Resource Removal
| Disable Emojis | Removes the emoji detection script and styles that WordPress loads on every page. Saves ~45KB if you don't use WordPress emojis |
|---|---|
| Disable oEmbed | Removes the oEmbed discovery links and JavaScript. Prevents your content from being auto-embedded on other sites |
| Disable XML-RPC | Blocks the XML-RPC API entirely. Prevents brute-force attacks through xmlrpc.php. Disable this only if you use mobile apps or Jetpack that rely on XML-RPC |
Header Cleanup
| Remove Shortlink | Removes the <link rel="shortlink"> tag from your HTML head |
|---|---|
| Remove RSD Link | Removes the Really Simple Discovery link (used by older blog editors) |
| Remove WLW Manifest | Removes the Windows Live Writer manifest link |
| Remove Feed Links | Removes RSS feed discovery links from the head |
| Remove REST API Link | Removes the REST API discovery link from the head (does not disable the REST API itself) |
| Remove WP Version | Removes the WordPress version number from the HTML head and RSS feeds. Prevents attackers from identifying your WordPress version |
Speed Test
A built-in speed testing tool that loads your homepage in a hidden iframe and measures real performance metrics.
Metrics Measured
| TTFB (Time to First Byte) | How long until the server sends the first byte of data |
|---|---|
| Load Time | Total time to fully load the page |
| Page Size | Total size of the HTML document |
| Rating | Excellent (<1.5s), Great (<2.5s), Good (<3.5s), Moderate (<5s), or Slow (5s+) |
Test History
Results are saved to a database table and displayed in a history table so you can track improvements over time. Up to 20 recent tests are shown. Use Clear to wipe test history.
Aggressive Minification Modes PRO
Pro unlocks an aggressive mode for each minification type that goes beyond safe compression.
| Aggressive HTML | Removes optional closing tags (like </li>, </p>) that browsers auto-close. Greater size reduction but may break some themes with unusual HTML structures |
|---|---|
| Aggressive CSS | Shortens color values (e.g. #ffffff to #fff), removes quotes from URLs, and applies additional safe transformations |
| Aggressive JS | Replaces true/false with !0/!1 and applies additional minification patterns beyond comment/whitespace removal |
Combine CSS & JS PRO
Merges multiple CSS files into a single file and multiple JS files into a single file, reducing the total number of HTTP requests your site makes.
| Combine CSS | Merges all enqueued stylesheets into one file. Cached in /wp-content/cache/sbc/css/ |
|---|---|
| Combine JS | Merges all enqueued scripts into one file. Cached in /wp-content/cache/sbc/js/ |
Critical & Async CSS PRO
Critical CSS
Inlines your above-the-fold CSS directly into the HTML <head> so the browser can render visible content immediately without waiting for external stylesheets to download. You provide the critical CSS code in a textarea in the Caching tab.
Async CSS Loading
Loads external stylesheets asynchronously (non-blocking) so they don't delay page rendering. Works best in combination with Critical CSS — the critical styles handle the initial render while the full stylesheets load in the background.
Heartbeat Control PRO
WordPress Heartbeat sends AJAX requests every 15–60 seconds for things like auto-save, login timeout, and real-time notifications. On shared hosting, this can strain server resources.
| Disable Everywhere | Completely deregisters the heartbeat script on all pages |
|---|---|
| Modify Frequency | Change the heartbeat interval (e.g. from 15 seconds to 60 seconds) to reduce server load while keeping functionality |
Resource Hints PRO
Tell the browser to start connecting to external domains before they're needed, cutting load times for third-party resources.
| Preconnect | Establishes early connections (DNS + TCP + TLS) to specified domains. Enter one URL per line, e.g. https://fonts.googleapis.com |
|---|---|
| DNS Prefetch | Resolves DNS for specified domains ahead of time. Lighter than preconnect — only performs the DNS lookup. One URL per line |
| Preload Fonts | Preloads font files so they're available immediately when the browser needs them, preventing a flash of invisible/unstyled text |
Force No-Cache PRO
Sends no-cache, no-store, and must-revalidate headers on every response, telling browsers, CDNs, and proxies to never cache anything. Useful during active development or when debugging caching issues.
How It Works
Page Caching Flow
- A visitor requests a page
- The plugin checks for a cached HTML file at
/wp-content/cache/ssbc/page/{hash}.html - If the file exists and hasn't expired, it's served immediately with an
X-SSBC-Cache: HITheader — PHP and database are barely touched - If no cache exists, WordPress renders the page normally, and the plugin saves the output to disk with
X-SSBC-Cache: MISS
Minification Flow
- For file minification: when WordPress enqueues a CSS/JS file, the plugin intercepts the URL, creates a minified copy in the cache directory, and serves the minified URL instead
- For inline minification: the plugin captures the full HTML output using
ob_start(), processes all inline<style>and<script>blocks, then outputs the minified result - Pre/textarea/code blocks and JSON script blocks are preserved untouched
Cache Directories
/wp-content/cache/ssbc/page/ | Full-page HTML cache files |
|---|---|
/wp-content/cache/ssbc/css/ | Minified CSS file copies |
/wp-content/cache/ssbc/js/ | Minified JS file copies |
/wp-content/cache/ssbc/critical/ | Critical CSS files (Pro) |
Cache Behavior
What Gets Cached
Only GET requests to the frontend from non-logged-in visitors with no query string parameters.
What Is Never Cached
- Admin pages and AJAX requests
- Logged-in users (every logged-in visitor gets fresh content)
- Pages with query strings (e.g.
?s=search) - Search results and 404 pages
- WooCommerce cart, checkout, and account pages
- POST requests
- Cron and WP-CLI requests
Automatic Cache Clearing
The page cache is automatically purged when:
- A post is saved or updated
- A new comment is posted
- The theme is switched
- Settings are saved in the plugin
Manual Cache Clearing
Clear cache from the Dashboard tab, or use the Clear Cache button in the WordPress admin bar (appears when page caching is active).
.htaccess Rules
When GZIP Compression or Browser Caching is enabled, the plugin writes rules into your .htaccess file wrapped in:
# BEGIN Quickfire Cache Speed Booster ... # END Quickfire Cache Speed Booster
These rules are automatically added on activation/settings save and removed on deactivation. The plugin only modifies content within its own markers and never touches other .htaccess rules.
Troubleshooting
Site layout is broken after enabling minification
- Disable all minification options, then re-enable them one at a time to find the culprit
- CSS file minification most commonly causes issues with themes that use
@importor relative URL paths - Inline JS minification can break JSON-LD or inline configuration objects — the plugin tries to skip
application/jsonblocks but edge cases exist - Clear all cache after making changes
Page cache not working (always MISS)
- Are you logged in? Logged-in users are never served cached pages
- Does the URL have query strings? Pages with
?anything=herebypass cache - Is the cache directory writable? Check that
/wp-content/cache/ssbc/page/exists and is writable by PHP - Check the response headers — look for
X-SSBC-Cache: HITorX-SSBC-Cache: MISS - Another caching plugin may be interfering. Only run one page caching plugin at a time
GZIP or browser caching not working
- Check that your server runs Apache with
mod_deflateandmod_expiresenabled - Verify
.htaccessis writable (the plugin will warn you if it's not) - NGINX does not use .htaccess — you need to add GZIP and caching rules to your NGINX config manually
- Test with a GZIP checker tool to verify compression is active
JavaScript delay breaks something
- Add a keyword from the broken script's URL to Delay JS Exclusions (one keyword per line)
- Common exclusions: analytics, gtag, consent, recaptcha, chatbot scripts
- jQuery and jQuery Migrate are excluded automatically
- If delay is too aggressive, use Defer instead — it's gentler
Speed test shows 0s or errors
- The test loads your homepage in a hidden iframe. If your site blocks iframes (X-Frame-Options or CSP), the test fails
- Some security plugins block same-origin iframe loading — temporarily disable them to test
- The test has a 30-second timeout. If your site is extremely slow, it may time out
Conflict with other caching plugins
- Only use one page caching plugin at a time. Running WP Super Cache, W3 Total Cache, LiteSpeed Cache, or similar alongside this plugin will cause conflicts
- If switching from another caching plugin, deactivate it first, delete its cache, then activate this plugin
- Minification and lazy loading features can generally coexist with other caching plugins, but page caching cannot
WooCommerce pages showing stale content
- Cart, checkout, and account pages are automatically excluded from caching
- If product pages show stale prices, clear the page cache after making changes
- For dynamic content (stock levels, logged-in pricing), consider reducing the cache lifetime