Help Centre
BETA SOFTWARE — Texo SuperCache is currently in beta. Core functionality is stable and in active use, but you may encounter rough edges. Please submit a support ticket for anything unexpected so we can fix it promptly. We appreciate your patience and feedback as we work toward a full release.
This guide reflects plugin version 8.3.150 (July 2026). See What’s Changed Recently at the end for a summary of updates since the previous edition.
Build your site first. Install WordPress with WordPress Management, then design and publish your pages. Wait to enable SuperCache until you are ready to go live or want maximum speed.
Contact Texo support when you are ready. We will:
That order matters: preload optimised pages first, then turn on edge caching. Details below.
When a visitor lands on your WordPress site, WordPress normally has to load PHP, query the database, run plugins, and build the page on every single request. On a busy site this can take 1–3 seconds per visitor.
Texo SuperCache short-circuits all of that. It pre-builds every page on your site into a static HTML snapshot, then serves that snapshot directly — no PHP, no database, no plugins. The result is a page delivered in under 50ms regardless of how many visitors you have.
On top of caching, the plugin optimises every page it caches: unused CSS is stripped, JavaScript is deferred, images are lazy-loaded, fonts are preloaded, and background elements are only rendered when they scroll into view. These optimisations directly improve your Google PageSpeed (Core Web Vitals) score.
Getting the best results requires doing things in the right order, especially when Cloudflare is involved.
When a page has not been preloaded yet, Texo SuperCache has no cached file to serve — so WordPress generates the page normally and returns it unoptimised. Texo SuperCache marks those responses with Cache-Control: no-store, which instructs Cloudflare not to cache them. So Cloudflare will never cache a bad version of your page.
However, if you turn on Cloudflare Page Caching before preloading, Cloudflare cannot serve anything from its edge (because every response says “don’t cache me”) until the preload populates the local cache. The practical effect is: Cloudflare adds latency during setup without adding any benefit. Preload first, then switch Cloudflare on, and from the first visitor after that, every page is served from the edge at full speed.
At the top of every page you’ll see a View as Visitor button in the WordPress admin bar. Clicking it opens your site in a new browser tab exactly as a logged-out visitor would see it — serving the actual cached, optimised page instead of the logged-in admin version.
Use this to verify that your pages look correct after a preload, or to show a client what their site looks like at full speed.
The session lasts 30 minutes. To return to normal admin view, simply log out and log back in, or navigate to any wp-admin page.

Shows the current state of the local cache:
Displays your site’s real-world performance metrics collected from actual visitors:
Each metric is shown with a traffic-light colour: green (good), orange (needs improvement), red (poor). The data comes from your real visitors, so it reflects actual user experience rather than a synthetic test.
Fills in any gaps in the cache. If a page already has a cached file, it is left completely untouched. Only pages that are missing from the cache are visited and optimised.
Use this when: You want to cache any newly-published pages or pages that were missed, without disturbing the rest of the cache.
Deletes every cached file on disk, then rebuilds the entire cache from scratch. Every page gets re-optimised: new critical CSS, new lazy-load targets, new font preloads, everything.
Use this when: You have made a significant design change, updated your theme, changed plugin settings, or want a guaranteed clean rebuild. Expect some pages to be temporarily slower for visitors during the rebuild — they will be served unoptimised HTML until the preload runner reaches each page.
After a Purge & Preload completes, Cloudflare’s edge cache is also automatically purged so it fetches the fresh, optimised versions of your pages.
Shows your current version and lets you check for available updates. Click Check for Updates to contact the update server. If a newer version is available, an Install Update button appears — clicking it installs the update silently in the background without leaving the plugin page.
Updates can also be installed from the standard WordPress Plugins page — when an update is available, Texo SuperCache appears there with an update notice like any other plugin, and the page reloads automatically once the update completes.

Removes whitespace, comments, and redundant characters from CSS and JavaScript files. Makes files smaller so they download faster.
Recommendation: Leave on. Has no visible effect on your site’s appearance.
This is the most powerful — and most complex — optimisation. When enabled, each page is analysed by a headless browser on Texo’s server to determine exactly which CSS rules are actually used on that page. Only those rules are included in the page’s <head> as inline CSS. All your stylesheets are deferred to load after the page renders.
The result: pages appear styled instantly with a tiny critical CSS file, and the full stylesheet loads afterwards without blocking rendering.
Note: Because this requires a headless browser session on the server for each page, it adds a few seconds to the preload time per page. If your site has many hundreds of pages, a full preload will take longer with this enabled.
Recommendation: Enable for most sites. If you are seeing layout issues (elements looking unstyled briefly), you can add CSS selector patterns to the Include Selectors field to force specific rules to always be included.
Prevents JavaScript from executing until the visitor interacts with the page (moves the mouse, taps the screen, or presses a key). This dramatically reduces the Total Blocking Time (TBT) score — one of the biggest contributors to a poor PageSpeed score.
Two modes are available:
defer attribute and execute after the HTML is parsed. Faster than the default but does not wait for user interaction.Recommendation: Start with Defer loading. If PageSpeed TBT is still high, try Load after interaction and test that your key page functions still work.
A text field where you can list scripts that should never be delayed — paste a keyword from the script’s filename or URL, one per line. Useful for scripts that must run immediately (payment gateways, booking widgets, critical tracking).
Applies the same delay logic to scripts loaded from external domains (Google Analytics, Facebook Pixel, etc.). Tick this if you want third-party scripts delayed as well.
Downloads CSS and JavaScript files from external CDNs (jsDelivr, cdnjs, unpkg, etc.) and serves them from your own server. Eliminates the DNS lookup and connection overhead for those external domains.
Recommendation: Leave on.
Images below the visible area of the screen are not downloaded until the visitor scrolls towards them. Dramatically reduces initial page load time on image-heavy pages.
Recommendation: Leave on.
Paste keywords (filenames, URL fragments, or CSS class names) to prevent specific images from being lazy-loaded. The hero image on your homepage is often a good candidate to exclude, as it is always visible immediately.
Automatically adds width and height attributes to images that are missing them. This prevents layout shift (CLS) caused by the browser not knowing how much space to reserve for an image before it loads.
Recommendation: Leave on.
Replaces embedded YouTube videos with a static thumbnail image. The actual video player only loads when the visitor clicks the thumbnail. YouTube’s player is one of the heaviest third-party resources — this single optimisation often saves 500ms or more.
Recommendation: Leave on. The placeholder looks identical to the real player.
Downloads visitor comment avatars (Gravatars) from Gravatar’s servers and caches them locally. Eliminates external requests and the privacy implications of loading resources from Gravatar.
Recommendation: Leave on if you have comments enabled.
Converts uploaded images to a modern format when they are optimised:
When enabled, images are automatically converted to the selected format as soon as they are uploaded to the media library. When disabled, you trigger optimisation manually from the Image Optimizer section.
Filenames or URL patterns for images that should not be converted or compressed.
Adds <link rel="preload"> tags in the page <head> for the fonts used above the fold. This tells the browser to start downloading your fonts immediately — before it even parses the CSS — which eliminates the flash of unstyled text (FOUT).
Recommendation: Leave on.
Downloads Google Fonts CSS and the font files themselves to your own server, then serves them locally. Eliminates two external requests (one to fonts.googleapis.com, one to fonts.gstatic.com) and removes the GDPR concern of sending visitor IPs to Google.
Recommendation: Leave on.
Adds font-display: swap to all @font-face declarations. This tells the browser to show text in a fallback font immediately while the custom font loads, rather than showing invisible text. Directly improves FCP and CLS scores.
Recommendation: Leave on.
Applies content-visibility: auto to page sections that are below the fold (not visible on first load). This tells the browser to skip rendering those sections until the visitor scrolls to them, significantly reducing the initial rendering workload.
Only applies to <section> block elements — the standard layout container in Elementor, Bricks, and most page builders.
Recommendation: Leave on.
Paste keywords to prevent specific sections from having lazy rendering applied. Useful if a particular section causes layout issues with this setting enabled.
A set of individual toggles to disable WordPress features that most sites do not need and which add unnecessary weight to every page.
When WooCommerce is active, an additional toggle appears at the bottom of the Remove WordPress Bloat card.
WooCommerce loads wc-cart-fragments.js on every page by default. That script polls your server via AJAX to keep the mini-cart widget up to date — even on blog posts, about pages, and other pages where no cart is shown. Disabling it on non-store pages is one of the biggest easy wins on WooCommerce sites.
When Disable WooCommerce cart fragments is enabled:
Default: Off — enable it after confirming your site does not need live cart updates on non-store pages.
Header mini-cart caveat: If your theme shows a live cart count in the site header on every page (including blog posts), leave this off, or ask your developer to use the texo_supercache_woo_keep_cart_fragments filter to keep fragments on specific pages.
Non-WooCommerce sites: The toggle does not appear and has no effect.
When WooCommerce is active, a dedicated WooCommerce Optimization card appears on the Optimization tab (between Remove WordPress Bloat and Script Manager). It complements the cart-fragments toggle above.
WooCommerce also loads frontend CSS and JavaScript on every page — stylesheets, the main woocommerce script, and (on WooCommerce 8.5+) order-attribution scripts (sourcebuster-js and wc-order-attribution) that track where orders came from.
When Disable WooCommerce assets on non-store pages is enabled:
woocommerce-general, woocommerce-layout, woocommerce-smallscreenwoocommerce, sourcebuster-js, wc-order-attributionwc-blocks-* styles and scripts are also removed on non-store pages, but only when your cart and checkout pages use classic shortcodes — not WooCommerce blocks. If either cart or checkout is a block page, block library assets are left alone so block-based checkout keeps working.Default: Off — enable after confirming your site does not need WooCommerce scripts or styles on blog posts, landing pages, and other non-store URLs.
Recommended pairing: For the biggest performance win on WooCommerce sites, enable both this toggle and Disable WooCommerce cart fragments in Remove WordPress Bloat. Together they stop most WooCommerce overhead on non-store pages.
Header mini-cart caveat: If your theme shows a live cart or needs WooCommerce scripts site-wide, leave this off, or ask your developer to use the texo_supercache_woo_keep_nonstore_assets filter on the pages that need them.
Developer filters: texo_supercache_woo_keep_nonstore_assets (keep assets on the current request), texo_supercache_woo_site_uses_blocks (override block-cart/checkout detection), texo_supercache_woo_nonstore_asset_handles (customize which style/script handles are removed).
An advanced tool for identifying and disabling scripts that load on pages where they are not needed.
How to use:
Common use: Disabling contact form scripts on pages that have no form, or fine-tuning individual handles beyond the WooCommerce Optimization presets. For WooCommerce on non-store pages, try the WooCommerce Optimization card first — it is faster than disabling handles one by one.

When a visitor hovers over a link, the plugin begins loading that page in the background. By the time they click, the page is already partially downloaded. Makes navigation feel instant.
Recommendation: Leave on.
Creates separate cache files for mobile visitors. Only needed if your site looks meaningfully different on mobile versus desktop. On most responsive sites, the same HTML works for both.
Recommendation: Off for most sites. Enable only if you serve a completely different layout to mobile visitors.
Creates cache files for logged-in visitors too. By default, logged-in users (members, customers) always see a fresh, uncached page to ensure their personalised content is current.
Recommendation: Off unless you have a membership site where logged-in pages are largely the same across users.
Automatically purges and rebuilds the entire cache on a schedule. Useful if your site’s content changes on a timer (e.g. a site that pulls in live data).
Recommendation: Off for most WordPress sites. Use Purge & Preload after making content changes instead.
How often the auto-refresh runs (if enabled). Options range from every hour to once a day.
Higher speed = preload finishes faster, but uses more server CPU and memory simultaneously. If you notice the server slowing down or getting errors during preload, reduce the speed.
Recommendation: Enable Posts, Pages, and Other Content Types for most sites. Enable taxonomy archives if you want those listing pages cached too. Author archives are usually low-traffic and can be left off.
URLs that should never be cached. Enter one per line. Supports wildcards — for example, /checkout/* will bypass all checkout pages.
Common candidates: checkout, cart, account, booking, payment pages.
By default, URLs with query strings (e.g. ?color=red) are not cached, because query strings usually indicate dynamic filtering. If you know certain query strings are safe to cache (e.g. ?ref=newsletter), list them here.
Cache is bypassed for visitors who have any of these cookies set. Enter cookie names, one per line. The plugin already handles the standard WooCommerce, login, and multi-currency cookies automatically.
Deletes all cached files from disk immediately. Unlike Purge & Preload, this does not start a rebuild — your site will run on WordPress directly (slower) until the preload is run or visitors trigger page-by-page caching. Also purges Cloudflare’s edge cache if connected.
Use this only when: You need to clear everything instantly and will run the preload yourself straight after.

Master toggle for the CDN feature. When using Cloudflare as your CDN (the standard setup), leave this on so the plugin can communicate with Cloudflare’s API.
Which types of files are rewritten to use the CDN URL. Default is all files. Narrow this if you only want specific file types served through the CDN.
Connect your Cloudflare account. On a Texo-managed server, this is usually pre-filled automatically when the plugin is activated. If you need to reconnect:
Once connected, the panel turns green and shows your connected email. To disconnect, click Disconnect.
Once Cloudflare is connected, this toggle activates Cloudflare’s edge page caching. Cloudflare deploys cache rules to your zone that cache your HTML pages at its global edge network (300+ data centres worldwide).
When a visitor loads a page:
.html.gz file, Cloudflare caches that response for future visitorsImportant: Enable this only after running a full Purge & Preload (see First-Time Setup above).
These controls appear once Cloudflare is connected. They let you manage your Cloudflare zone directly from the plugin without logging into the Cloudflare dashboard.
Recommendation: Basic for most sites. Crawler Hints: Sends hints to search engine crawlers about when your content was last updated. Allows bots to crawl more efficiently. Safe to leave on. Purge Cache
Manages Cloudflare firewall rules (WAF rules) and Bot Fight Mode. Requires Cloudflare to be connected on the CDN tab.
At the top of the Security tab. Cloudflare’s automated bot detection — it challenges bots that mimic human browsers. Safe to leave on for most sites. Not available on all Cloudflare plans; the tab shows Unavailable when your plan does not include it.

Cloudflare’s Free plan allows 5 custom WAF rules in your zone. The slot meter shows how many slots are in use (for example, 4/5 WAF slots) and a breakdown such as 3 active, 1 disabled.
To free a slot, use Remove from CF on a deployed rule. Disable only pauses the rule — it does not free the slot. When all 5 slots are full, Deploy is greyed out until you remove a rule from Cloudflare.
Each time you open the Security tab, the plugin syncs with Cloudflare so counts and statuses stay accurate. If you delete a rule in the Cloudflare dashboard, refresh the Security tab — the rule will show as Not Deployed again, and you can Deploy or Enable to recreate it.
Rules in both Texo WAF Security Rules and Other Rules are sorted automatically:
Within each group, rules are listed alphabetically by name. The order updates whenever you reload the Security tab after deploying, enabling, disabling, or removing a rule.

Pre-configured rules maintained by Texo. These cannot be deleted from the plugin. You can edit their expression and action, but not their fixed descriptions.
Each rule card shows a status badge (Active, Disabled, or Not Deployed) and action buttons:
Two rules worth knowing about:
172.233.56.167) through the firewall so Remove Unused CSS (RUCSS) analysis is not blocked. Marked REQUIRED when RUCSS is enabled; Optional when RUCSS is off.Rules you created in the plugin (custom) plus any custom WAF rules already in your Cloudflare zone that the plugin discovers (Cloudflare). Custom rules can be edited and deleted; Cloudflare-origin rules can be edited, enabled/disabled, or removed from CF from here.
Click Add Rule at the bottom to create a new custom rule. Custom rules use the same Deploy / Enable / Disable / Remove from CF workflow as Texo rules and appear in the same status-based sort order.
For rules that filter by country, Countries or Pick Countries opens an inline country picker. Click country chips to add or remove them; the expression updates live. Save the rule locally, then deploy (or redeploy) to apply in Cloudflare.
A full DNS record manager for your Cloudflare zone. Displays all DNS records with type, name, content, proxy toggle, edit, and delete options. Use the Add Record button to create new records.

Creates a full SQL dump. Always backup before cleanup.
Converts older tables to the faster InnoDB engine.
Schedule automatic cleanup of revisions, drafts, spam, transients, etc.
One-click options for the same items plus orphaned meta.
Enabled/Disabled toggle that prevents large options from loading on every request.
Shows large autoloaded options with one-click disable buttons.

Choose between Texo Vitals or Cloudflare Web Analytics.
Backup and restore your plugin settings as JSON.
Enable detailed logging and view/clear the log.
Shows recommended System Cron Job command for reliable background tasks.
Accessible from the WordPress Media menu. Bulk convert images to AVIF/WebP, with Optimize All, Stop, Restore, and Delete Originals options.
It depends on site size and speed level. A 100-page site at Normal Speed typically takes 3–5 minutes.
Only pages not yet preloaded will be slower. Already cached pages remain fast.
Run Purge & Preload immediately.
Nothing — the plugin handles it automatically.
Real visitors trigger on-demand caching for any remaining pages.
Use the System Cron Job in the Recommendations card.
No. Deactivate any other caching or performance plugins.
A summary of updates since earlier editions of this guide (plugin versions 8.3.27 through 8.3.150).
wc-cart-fragments.js on non-shop/cart/checkout/product pages; default off; includes texo_supercache_woo_keep_cart_fragments filter for themes with a site-wide header mini-cartQuestions about SuperCache? Submit a support ticket and we'll help you out.