Kkey Plugins

Kkey Speed Optimizer (KSO) — Complete Settings Guide

Best Website speed optimizer for WooCommerce and WordPress Website

How to Read This Guide

This guide explains every setting in the Kkey Speed Optimizer (KSO) plugin. You do not need to be a developer to use it. Each setting is described in plain language, followed by a clear explanation of how enabling it improves your site’s speed.

Control TypeSpeed Impact
Toggle / SwitchInstant on/off — most speed gains come from toggling the right switches.
Input / Text boxFine-tunes a behaviour (URL, number, path) for more precise optimisation.
DropdownSelects a strategy — choosing the right option can significantly change performance.

💡 Tip: You can safely skip any section that does not apply to your site. Most defaults work perfectly without any changes.

Section 1 — Page Caching

Page caching is the single biggest speed improvement available. Without caching, every visitor causes WordPress to rebuild the page from scratch — querying the database, running PHP, assembling HTML. With caching, the finished HTML is saved to disk and served instantly, reducing page load time from ~300 ms to ~10 ms.

SettingSpeed Impact & How It Helps
Enable Page Caching🚀 Highest impact. Eliminates database queries and PHP processing for every returning visitor. Pages load from a static file in milliseconds instead of being rebuilt from scratch each time.
Page Cache Compression📦 Compresses cached HTML with gzip before sending it. Visitors download a smaller file, reducing transfer time — especially noticeable on slower connections.
Mobile Cache📱 Serves a separate cached version to mobile visitors so they receive the correct mobile layout instantly, without the server rebuilding the page per device.
Serve Stale Cache⚡ When a cached page expires, visitors still see the old version instantly while WordPress regenerates it in the background. Zero wait time on cache refresh — next visitor gets the fresh version.
Cache Expiry🕐 A longer expiry means the cache is used more often and the database is queried less. Updates automatically purge the cache, so a long expiry has no risk of showing stale content after edits.
Cache Exclude URLs🎯 Keeps cart, checkout, and account pages off the cache so real-time user data (prices, cart contents, session info) is always accurate — preventing checkout errors and broken personalisation.
Cache Vary Cookies💱 Ensures multi-currency stores serve correctly priced cached pages per currency. Without this, a USD visitor could receive a page cached for an AED visitor — showing wrong prices.

Section 2 — JavaScript Optimisation

JavaScript files are often the main reason pages feel slow. By default, the browser stops loading the page every time it encounters a JS file and waits for it to fully download and execute. These settings change that behaviour.

SettingSpeed Impact & How It Helps
Delay JS🚀 Highest impact for PageSpeed scores. Defers all JS until the visitor interacts. The page appears fully loaded immediately — scripts fire in the background. Dramatically improves Time to Interactive (TTI) and Total Blocking Time (TBT).
Delay Elementor Scripts🎨 Elementor’s JS bundles are large. Delaying them specifically prevents Elementor from blocking the initial render — major win for Elementor-built sites.
Enable Delay JS Exemptions🎚️ Lets you exclude time-sensitive scripts (live chat, A/B testing) from delay while still delaying everything else. Surgical control without sacrificing overall performance.
Defer JS⏬ Scripts download in the background while the page loads and execute after rendering completes. Eliminates render-blocking JS, reducing the time visitors see a blank or half-loaded page.
Enable JS Minify🗜️ Strips comments, whitespace, and formatting from JS files. Smaller files download faster, reducing the bandwidth cost of every script on your site.
Idle JS😴 Runs non-critical scripts only when the browser is idle. Frees up the main thread during page load for rendering and user interaction — improves responsiveness.
JS Loading Method🎛️ A global strategy switch. Setting this to delay or defer applies the optimisation site-wide in one step, reducing configuration complexity.

Section 3 — CSS Optimisation

CSS files control how your pages look. Unoptimised CSS delays page rendering because the browser needs the stylesheet before it can draw anything on screen.

SettingSpeed Impact & How It Helps
Enable Used CSS🚀 Major payload reduction. Strips unused CSS rules from each page’s stylesheet. A 250 KB theme stylesheet can shrink to 30 KB per page — 88% smaller. Less CSS = faster parsing and rendering.
Used CSS Safelist🛡️ Protects dynamically-added CSS classes (e.g. active menu states) from being removed. Prevents visual bugs while keeping the CSS lean.
Enable Auto Critical CSSEliminates render-blocking CSS. Inlines only the CSS needed for the above-the-fold area directly into the HTML. The browser renders the visible page instantly without waiting to download any external stylesheet.
CSS Combine🔗 Merges multiple CSS files into one, reducing the number of HTTP requests the browser must make before rendering. Fewer requests = faster page start.
CSS Minify🗜️ Removes whitespace and redundant characters from CSS files. Smaller files transfer faster over the network on every page load.
CSS Load Async🔀 Lets the page render immediately without waiting for all CSS to download. Paired with Auto Critical CSS, visitors see a styled page almost instantly.
Defer / Delay CSS⏱️ Pushes non-critical CSS loading later in the page lifecycle, freeing bandwidth for more important resources first.
Enable HTML Minify📄 Shrinks the raw HTML sent to every visitor by removing redundant whitespace and comments. Free size reduction with no visible effect on the page.

💡 Tip: If your site uses JS to add CSS classes dynamically, add those class names to the Safelist so Used CSS doesn’t remove them.

Section 4 — Images

Images are typically the largest files on a web page. Optimising how and when they load has a major impact on perceived speed.

SettingSpeed Impact & How It Helps
Enable Lazy Load🖼️ Cuts initial page weight dramatically. Only images near the visible area are downloaded. A page with 50 product images might initially load only 4 — reducing data transfer by 90%+ on first paint.
Enable Background Lazy Load🎨 Extends lazy loading to CSS background images, which are often large hero or banner images. Prevents them from delaying the initial page render.
Enable iFrame Lazy Load📍 Google Maps and YouTube iframes load enormous scripts. Lazy loading them means those resources are only fetched when the visitor scrolls to them — huge savings for map-heavy or video-heavy pages.
Lazyload Exclude Count🏆 The first images (hero, product) load immediately so the Largest Contentful Paint (LCP) — a Core Web Vital — is as fast as possible. Getting LCP right directly improves Google rankings.
Enable LCP Preload + Fetchpriority🥇 Directly improves Core Web Vitals. Tells the browser to fetch the most important image on the page first, before discovering it during normal HTML parsing. Can shave hundreds of milliseconds off LCP.
Enable Add Image Dimensions📐 Prevents Cumulative Layout Shift (CLS) — another Core Web Vital. When the browser knows an image’s size upfront, it reserves the right space and the page doesn’t jump around as images load.
Enable WebP Conversion & Serving🌐 WebP images are ~30% smaller than JPEG at the same quality. Every image on your site becomes lighter — faster downloads for every visitor on every page.
Enable AVIF Conversion & Serving🔬 AVIF is even smaller than WebP. For image-heavy sites, switching to AVIF can reduce image payload by 40–50% compared to JPEG.
Enable Image Compression📉 Reduces image file sizes on upload. Smaller source files mean faster delivery — especially for visitors on mobile connections.
Enable Adaptive Images📱 Serves smaller image dimensions to mobile visitors who have smaller screens. No point sending a 2000px-wide image to a 390px phone screen.
Enable YouTube Facade▶️ Removes 300–500 KB of YouTube scripts per embed. Replaces the embed with a thumbnail that looks identical. The real player only loads on click — massive improvement for pages with video.

⚠️ Note: If you enable image compression, raise JPEG Quality to 75–85 for a good balance of quality and file size. The default of 10 is very aggressive.

Section 5 — Prefetch & Preload

These features predict which page a visitor will navigate to next and start loading resources before they click — making navigation feel instant.

SettingSpeed Impact & How It Helps
Enable Prefetch🔮 Uses the 100–300 ms hover-to-click window to start fetching the destination page. By the time the visitor clicks, the page is already partially loaded — navigation feels near-instant.
Enable Speculation Rules🧠 The browser’s native prediction engine decides which links to preload based on what’s likely to be clicked. More intelligent than simple hover-based prefetch — fewer wasted requests.
Speculation Mode: prerender⚡ Downloads AND renders the predicted page in a hidden tab. Navigation becomes instant — like switching between open tabs. Best experience, but uses more memory.
Speculation Eagerness: moderate⚖️ Balances prediction accuracy against bandwidth usage. Conservative avoids wasted prefetches; eager makes navigation faster but uses more data.
Enable DNS Prefetch🔍 Resolves third-party domain names (Google Fonts, analytics) before they’re needed. Saves 20–120 ms per external connection — every external resource becomes faster.
Enable Preconnect🔌 Goes further than DNS — establishes the full TCP/TLS connection to third-party servers in advance. Eliminates connection overhead when the resource is actually requested.
Enable Preload Fonts🔤 Fetches font files before the browser discovers them in CSS. Prevents invisible text (FOIT) and eliminates font-related layout shifts — text appears styled from the first paint.
Enable Early Hints (HTTP 103)🏎️ Sends resource hints to the browser before the server has even finished building the page. The browser starts downloading critical assets while the server is still generating HTML — reduces TTFB impact significantly.

Section 6 — Fonts

SettingSpeed Impact & How It Helps
Enable Font Display Swap👁️ Text is visible immediately in a system font while the custom font loads. Eliminates invisible text flash (FOIT) — visitors can read content from the very first frame instead of staring at a blank page.
Enable Google Fonts Swap📝 Applies the same swap behaviour specifically to Google Fonts requests, which are a common source of text rendering delays.
Enable Local Google Fonts🏠 Eliminates an external server round-trip. Fonts load from your own server, saving 50–200 ms of connection time to Google’s servers. Also removes GDPR compliance concerns about third-party data transfers.
Enable Font Optimisation🔧 Applies additional font subsetting and delivery techniques to reduce font file sizes and loading time beyond what swap and local hosting provide.
Disable Google Fonts❌➡️⚡ If you don’t need Google Fonts at all, disabling them removes an external HTTP request entirely — one fewer thing for the browser to fetch before rendering text.

Section 7 — Object Cache

While page caching saves the finished HTML, object caching saves the results of database queries and complex PHP calculations. This speeds up pages that cannot be fully cached (cart, account pages) and reduces database load.

SettingSpeed Impact & How It Helps
Enable Built-in Object Cache🗄️ Stores expensive database query results in memory. Pages like the cart or account page — which can’t be page-cached — still load faster because repeated queries are served from cache instead of hitting the database again.
Object Cache Disable for Guests🎯 Guests already benefit from page caching, so skipping object cache for them avoids unnecessary memory usage — reserving object cache capacity for logged-in users who need it most.
Object Cache Cleanup Schedule🧹 Regular cleanup removes expired cache entries, keeping the cache storage lean and fast. A bloated cache can become slower to query than the database itself.
Object Cache Optimize Table💾 Reclaims disk space after cleanup by compacting the database table. Prevents database fragmentation, which can slow down all queries over time.
Use Server Cron⏰ Server cron runs cleanup tasks reliably on a schedule, regardless of traffic. WP-Cron only runs when someone visits the site — on low-traffic sites, cache cleanup can be delayed for hours.

💡 Tip: If your host provides Redis or Memcached, use that instead — it is faster than KSO’s built-in database-backed object cache.

Section 8 — Service Worker & CDN

SettingSpeed Impact & How It Helps
Enable Service Worker🔁 Makes repeat visits nearly instant. After the first visit, static assets (images, CSS, JS) are stored in the visitor’s browser. Subsequent page loads skip the network entirely for those files — near-zero load time on return visits.
Service Worker Version🔄 Incrementing this number pushes an updated cache to all visitors. Ensures everyone gets the latest assets after a site redesign without waiting for their browser cache to expire naturally.
Enable CDN🌍 Cuts delivery time for global visitors. Static files are served from the server nearest to each visitor. A visitor in Tokyo gets files from a Tokyo server, not your origin in Europe — reducing latency by hundreds of milliseconds.
CDN Included File Types📁 Routing images, CSS, and JS through the CDN offloads bandwidth from your origin server — it handles less traffic and responds faster to dynamic requests like checkout.
Enable Cloudflare Cache Integration🔗 Keeps Cloudflare’s edge cache in sync with KSO’s cache. When you publish an update, both caches clear together — visitors worldwide see the new content immediately instead of getting stale Cloudflare-cached pages.

📌 Note: You need a separate CDN subscription (Cloudflare, Bunny.net, KeyCDN, etc.) before enabling CDN.

Section 9 — Performance Tweaks

These settings reduce or disable WordPress features that are rarely needed but add overhead to every page load.

SettingSpeed Impact & How It Helps
Disable Cart Fragments🛒 One of the biggest WooCommerce performance wins. WooCommerce’s cart fragment script fires an AJAX request on every page load — even pages with nothing to do with the cart. Disabling it removes this unnecessary request, directly improving PageSpeed scores.
Delay Cart Fragments⏳ A gentler alternative — delays the cart AJAX request until visitor interaction. The page loads fully first, then the mini-cart updates. Best of both worlds for sites needing a live mini-cart.
Disable Scripts on Non-WooCommerce Pages✂️ Removes WooCommerce’s CSS and JS from blog posts, About pages, and other non-shop content. Reduces page weight on pages that have nothing to sell.
Disable XML-RPC🔒 Removes a legacy endpoint that bots routinely hammer with requests. Eliminating it reduces unwanted server load — your server spends fewer cycles rejecting attack attempts.
Heartbeat Control💓 WordPress pings the server every 15 seconds in the admin area. On busy sites this adds up. Reducing the frequency or disabling it outside the editor lowers background server load.
Post Revisions Control📚 Limits the number of draft copies stored per post. A leaner database means faster queries across the entire site — not just in the editor.
Disable Gutenberg Blocks🧱 Gutenberg loads a large JS bundle on the frontend that is only needed for editing, not for displaying content to visitors. Removing it reduces frontend JS weight.
Disable Emojis😀 Removes an extra HTTP request on every page for a script that modern browsers don’t need. Small saving, zero risk — modern browsers handle emojis natively.
Disable Embeds🔗 Removes the oEmbed script from pages that don’t use embedded content. Eliminates an unnecessary JS file from loading.
Disable Meta Generator🔐 Hides the WordPress version from your page source. Bots that scan for known vulnerabilities won’t know which version to target — a low-effort security improvement.
Cleanup Header🧹 Removes legacy, rarely-used HTML head tags (RSD links, Windows Live Writer links). Marginally reduces HTML size and removes unnecessary external references.
Disable Password Strength Meter⚖️ Removes the zxcvbn library — a large script — from account and checkout pages where real-time password feedback isn’t needed. Reduces page weight on high-traffic pages.

Section 10 — Multilingual & Multi-Currency

SettingSpeed Impact & How It Helps
Enable WPML Currency Cache💱 Without this, a visitor switching currencies would bypass the cache entirely and force a full page rebuild. With it, each currency gets its own cached copy — currency switching stays fast and cached for all visitors.
Guest Mode / Guest Optimisation👥 Covers the majority of your traffic. Most visitors are not logged in. Ensuring the full optimisation pipeline applies to guests maximises cache hit rates and delivers the fastest possible experience to the largest group of visitors.

Section 11 — Tracking & Analytics

SettingSpeed Impact & How It Helps
Local Tracking (GA4 / GTM)📊 Hosting Google Analytics scripts on your own server removes the need to connect to Google’s servers on every page load — saving 50–150 ms of connection time. Also removes Google’s cookies, improving GDPR compliance.
GA Update Schedule🔄 Keeps your locally-hosted analytics script current with Google’s latest version. Weekly updates balance accuracy with server overhead.
Enable RUM (Real User Monitoring)📈 PageSpeed tools test from a single location. RUM collects data from your actual visitors — wherever they are, on whatever device. Gives you an accurate, real-world picture of performance to target optimisation efforts where they matter most.
PageSpeed API Key🔑 Enables automated PageSpeed score fetching inside the KSO dashboard — so you can measure the impact of every change without leaving WordPress.

Section 12 — AI Features

SettingSpeed Impact & How It Helps
AI Provider + API Key🤖 Connects KSO to an AI service that automates complex optimisation tasks — generating Critical CSS, detecting lazy-render candidates, and producing tailored performance recommendations. Tasks that would take hours of manual analysis happen automatically.
Gemini Model (gemini-2.5-flash)⚡ The Flash model is optimised for speed — it returns results quickly, so AI-powered features don’t add meaningful latency to your workflow.

Section 13 — Advanced & Developer Settings

SettingSpeed Impact & How It Helps
Enable Asset Manager🎛️ Lets you disable specific third-party scripts on pages where they aren’t used. A heavy plugin’s stylesheet removed from 90% of your pages = a significant per-page size reduction without removing the plugin.
Enable Dynamic Content🎭 Caches the full page but keeps small sections live (e.g. “Hello, John!” or live stock levels). You get cache-level speed for most of the page without sacrificing personalisation.
Enable Lazy Render🖼️ Delays rendering of below-the-fold page sections. The browser renders only the visible area first — especially impactful on long landing pages, reducing initial rendering time and improving Time to Interactive.
Enable Admin Bar Cache Menu⚡ One-click cache clearing while browsing your site. Faster iteration when testing optimisation changes — no need to navigate to the dashboard to clear cache.
Purge Mode: full🧹 Ensures no stale pages remain after any content update. Safest option — every visitor gets fresh content, preventing confusing inconsistencies between pages.
Enable Logged-in Cache👤 If your site has many simultaneous logged-in users, caching per-role rather than bypassing cache entirely can significantly reduce server load and speed up member-only pages.

Cache Bypass URLs — for testing:

  • /kkeynocache — View the live, uncached version of any page.
  • /kkey1 — Delete a page’s cache and regenerate it immediately.

Section 14 — Dont-Cache Rules

SettingSpeed Impact & How It Helps
Enable Don’t Cache CSS🛡️ Protects specific CSS files from being processed by KSO’s optimisation pipeline. Useful when a third-party plugin’s CSS breaks if minified or combined — lets you keep global optimisation on without exceptions causing visual bugs.
Enable Don’t Cache Cookies🍪 Bypasses caching for visitors with specific cookies set (e.g. A/B test cookies, personalisation tags). Ensures those visitors always get the correct personalised version while cached pages serve everyone else.
Enable Cache Exclude Classes🔐 Excludes specific user roles from receiving cached pages. Useful for member sites where logged-in users with specific roles (e.g. subscribers) need live, role-specific content rather than a generic cached page.

These exclusion rules protect cache integrity — keeping the optimisation benefits for the majority of visitors while ensuring accuracy for edge cases.

Quick Reference: Recommended Settings

The table below summarises the most impactful settings for a typical WooCommerce site and explains the speed benefit of each.

SettingSpeed Benefit
✅ Page CachingEliminates database + PHP per request. Biggest single performance gain.
✅ Serve Stale CacheZero wait time on cache expiry — visitors never wait for a rebuild.
✅ Cache CompressionSmaller HTML files transfer faster over the network.
✅ Mobile CacheMobile visitors get correctly optimised, pre-built pages.
✅ Used CSSRemoves up to 90% of unused CSS — massive reduction in stylesheet size.
✅ Auto Critical CSSAbove-fold content renders instantly with inlined CSS — no render-blocking.
✅ LCP Preload + FetchpriorityMain image loads first — directly improves Core Web Vitals ranking signal.
✅ Lazy Load ImagesOnly loads images as the visitor scrolls — cuts initial page weight by up to 90%.
✅ Delay JS + Delay ElementorPage appears complete immediately — huge TTI and TBT improvement.
✅ Disable Cart FragmentsRemoves WooCommerce’s biggest per-page AJAX overhead.
✅ Font Display SwapText is readable from the very first frame — no invisible text delay.
✅ Service WorkerRepeat visits load from local browser cache — near-zero network time.
✅ Disable XML-RPCReduces unwanted bot traffic and server load.
✅ Disable Meta GeneratorReduces bot-targeted attack surface.
✅ HTML MinifyFree reduction in HTML payload on every page load.
✅ Prefetch + Speculation RulesNext pages load before the visitor clicks — navigation feels instant.
⭐ YouTube FacadeRemoves 300–500 KB of YouTube scripts per embedded video.
⭐ Local Google FontsSaves 50–200 ms by eliminating the Google Fonts server round-trip.
⭐ WebP Serving~30% smaller images site-wide — faster loads on every page with images.

⭐ Conditionally recommended — depends on your site configuration.

Glossary of Terms

TermDefinition
CacheA saved copy of a page or file that can be delivered instantly without regenerating it.
TTFBTime to First Byte — how quickly the server starts sending data after a request. Lower is better.
LCPLargest Contentful Paint — Google’s measure of when the main visible element appears. A Core Web Vital.
CLSCumulative Layout Shift — how much the page jumps around as it loads. A Core Web Vital.
Core Web VitalsGoogle’s three main user experience metrics (LCP, CLS, INP) that directly influence search rankings.
Gzip / CompressionA method of compressing files so they transfer faster. The browser decompresses them automatically.
CDNContent Delivery Network — a network of servers worldwide that serve your files from the nearest location to each visitor.
DNS PrefetchResolving a domain name before it is needed so there is no delay when it is required.
Lazy LoadOnly loading images (or sections) when the visitor is about to see them.
PrerenderLoading AND rendering a page in the background so it appears instantly on navigation.
Service WorkerA script in the visitor’s browser that caches resources locally for ultra-fast repeat visits.
Used CSSA stylesheet containing only the CSS rules actually used on a specific page.
Critical CSSThe CSS needed to display the visible part of the page — inlined in HTML for instant rendering.
AJAXA way for a web page to fetch data from the server without reloading the whole page.
WebP / AVIFModern image formats significantly smaller than JPEG/PNG at equivalent quality.
LQIPLow Quality Image Placeholder — a tiny blurry version of an image shown while the full image loads.
XML-RPCA legacy WordPress remote API, now mainly exploited by bots. Safe to disable.
WPMLA popular WordPress plugin for building multilingual sites.

 

Download a Free 30 days trial for Kkey Speed Optimizer