# Lighthouse Performance Audit
Audit of the 6 worst-performing sites from MainWP Lighthouse scores. Focused on simple infra/config fixes only — no PHP scripts, no plugins, nothing that can't be easily unpicked.
—
## Shared Infrastructure (all 6 sites)
| Feature | Status | Action |
| ——— | ——– | ——– |
| Hosting | kaburusvr (Hetzner), LiteSpeed, CyberPanel | — |
| CDN | Cloudflare (all behind proxy) | ✅ Working |
| CF HTML Cache | `CF-Cache-Status: DYNAMIC` on all sites | ❌ Cloudflare NOT caching HTML pages |
| FastPixel | v1.7.0 on all sites, JS defer enabled | ✅ |
| Redis Object Cache | Working on 4/6 sites, missing on 2 | ❌ Need to restore drop-in |
| Divi | All 6 use Divi (4.27.6 or 5.7.4) | All have static CSS ON, dynamic module ON |
| Divi Minify/Combine | OFF on ALL 6 sites | ❌ Easy toggle in Divi settings |
| LiteSpeed Cache plugin | NOT installed on any site | — |
| PageSpeed Module | Active on 3/6 sites (jafrica, friendscic, claybusters) | ❌ Missing on the other 3 |
—
## Site-by-Site
### l8.kaburu.co.uk — Mobile 0 / Desktop 0
This is a scan failure, not a real score. Site returns 200 OK, loads fine. The 0/0 means Lighthouse couldn't complete its run (likely timeout or blocking resource).
| Issue | Fix |
| ——- | —– |
| ❌ Redis object-cache.php missing | FastPixel drop-in not installed |
| ❌ CF-Cache-Status: DYNAMIC | Cloudflare cache rule for WordPress HTML |
| ❌ Divi Google Fonts Inline OFF | Toggle ON in Divi → Theme Options → Performance |
| ❌ Divi Minify/Combine OFF | Toggle ON — scripts and styles |
| ❌ No PageSpeed module | Enable in CyberPanel |
| ❌ No LiteSpeed Cache plugin | Not needed if FastPixel handles caching |
| ❌ Divi 4.27.6 (older) | Consider updating to match 5.7.4 sites |
Priority: Fix Redis drop-in first, then PageSpeed module, then Divi toggles.
—
### longniddrybowlingclub.com — Mobile 12 / Desktop 45
Worst genuine score. All infra checks passing (Redis ✅, FastPixel ✅). Likely heavy images, unoptimised Divi content, and render-blocking resources.
| Issue | Fix |
| ——- | —– |
| ❌ CF-Cache-Status: DYNAMIC | Cloudflare cache rule for WordPress HTML |
| ❌ No PageSpeed module | Enable in CyberPanel |
| ❌ Divi Minify/Combine OFF | Toggle ON |
| ❌ Divi 4.27.6 (older) | Consider updating |
| ❌ DiviCommerce theme | May add extra CSS/JS bloat |
This site needs actual page analysis (what's loading, image sizes, render-blocking resources). The low score suggests large hero images or unoptimised third-party resources.
—
### jafricasafari.com — Mobile 43 / Desktop 65
| Issue | Fix |
| ——- | —– |
| ❌ Redis object-cache.php missing | FastPixel drop-in not installed |
| ❌ CF-Cache-Status: DYNAMIC | Cloudflare cache rule |
| ❌ Divi jQuery Body OFF | jQuery loading in head — toggle to body |
| ❌ Divi Minify/Combine OFF | Toggle ON |
| ✅ PageSpeed module | Active |
| ✅ Divi Google Fonts Inline | ON |
| ✅ Divi 5.7.4 | Current |
Priority: Fix Redis drop-in, toggle jQuery Body, then Divi minify.
—
### womenunlimited.africa — Mobile 46 / Desktop 79
| Issue | Fix |
| ——- | —– |
| ❌ CF-Cache-Status: DYNAMIC | Cloudflare cache rule |
| ❌ No PageSpeed module | Enable in CyberPanel |
| ❌ Divi Disable Emojis OFF | Toggle ON — stops WordPress emoji scripts |
| ❌ Divi Defer Block CSS OFF | Toggle ON |
| ❌ Divi Minify/Combine OFF | Toggle ON |
| ⚠️ WooCommerce active | Session cookies may prevent caching |
| ✅ Redis object cache | Working |
Priority: Divi performance toggles (emojis, defer CSS, minify).
—
### friendscic.org — Mobile 54 / Desktop 62
| Issue | Fix |
| ——- | —– |
| ❌ Anti-cache headers | Sends `cache-control: no-store, no-cache, must-revalidate` — disables ALL browser and proxy caching. Likely from WooCommerce session or a security plugin |
| ❌ CF-Cache-Status: DYNAMIC | Cloudflare cache rule (but won't help if origin sends no-cache) |
| ❌ Divi Disable Emojis OFF | Toggle ON |
| ❌ Divi Minify/Combine OFF | Toggle ON |
| ⚠️ WooCommerce active | May be source of no-cache headers |
| ✅ PageSpeed module | Active |
| ✅ Redis object cache | Working |
| ✅ Divi 5.7.4 | Current |
Priority: Find and fix the no-cache headers (likely WooCommerce session or caching/exclusion plugin misconfig). Then standard Divi toggles.
—
### claybusters.scot — Mobile 65 / Desktop 79
| Issue | Fix |
| ——- | —– |
| ❌ CF-Cache-Status: DYNAMIC | Cloudflare cache rule |
| ❌ Divi Minify/Combine OFF | Toggle ON |
| ✅ PageSpeed module | Active |
| ✅ Redis object cache | Working |
| ✅ Divi 5.7.4 | Current |
| ✅ Divi Disable Emojis | ON |
| ✅ Divi Google Fonts Inline | ON |
Priority: Minor — Cloudflare cache rule and Divi minify would push this into the 80+ range.
—
## Quick Wins (no plugins, no scripts)
### 1. Cloudflare Page Rule — Cache WordPress HTML Add a Cloudflare page rule for each site: - URL: `*longniddrybowlingclub.com/*` - Setting: `Cache Level: Standard` - OR use Cache Rules (newer): Bypass cache on `cookie=*wordpress_logged_in*` or `cf-worker=wp-session`
This would edge-cache HTML pages for anonymous visitors — the biggest single performance gain since all 6 sites currently serve dynamic.
### 2. Divi Performance Toggles (30-second job per site) In Divi → Theme Options → Performance, enable: - ✅ Minify/Combine Scripts - ✅ Minify/Combine Styles - ✅ Disable Emojis (off on womenunlimited, friendscic) - ✅ Google Fonts Inline (off on l8.kaburu) - ✅ jQuery Body (off on jafricasafari) - ✅ Defer Block CSS (off on womenunlimited)
### 3. Enable PageSpeed Module (CyberPanel) For sites missing it (l8, longniddry, womenunlimited), enable in CyberPanel: - `CyberPanel → PageSpeed → Enable for domain` - This handles minify, defer, combine, and image optimization server-side
### 4. Restore Redis Drop-in (l8, jafricasafari) Copy the FastPixel object-cache.php from a working site (e.g. claybusters) to the missing ones. FastPixel manages Redis internally — no WP_REDIS_CONFIG needed.
### 5. Fix friendscic no-cache headers Check which plugin sets `cache-control: no-store`: - `wp plugin list` — look for caching, security, or WooCommerce extensions - Check WooCommerce session handling — may be setting no-cache on all pages instead of just cart/checkout
—
## What NOT to do - ❌ No PHP scripts injected into theme files - ❌ No custom plugins - ❌ No .htaccess rewrites for caching - ❌ No modifying WordPress core or Divi core files - ❌ No installing LiteSpeed Cache plugin (would conflict with FastPixel)
Everything listed above is config-only: Divi UI toggles, CyberPanel settings, Cloudflare rules, or copying an existing Redis drop-in file.
—
## Related
- object-cache — Redis object cache estate-wide setup - litespeed — LiteSpeed server config - fastpixel-mainwp-cache-control — FastPixel + Cloudflare integration