Slow is usually not “the theme”
When a client says WordPress is slow, the theme gets blamed first. In practice we more often find oversized hero images, three caching plugins fighting each other, and a page builder stacking unused CSS.
Measure before you rewrite
Start with field data if you have it (CrUX / Search Console) and a lab pass on the real homepage URL. Note LCP element, CLS offenders, and third-party scripts. Guessing wastes budget.
High-ROI fixes we do first
- Images — correct dimensions, modern formats, lazy-load below the fold, preload only the true LCP image.
- One cache path — page cache + object cache + CDN rules that agree. Remove duplicate optimizers.
- Script diet — defer non-critical JS; kill chat widgets and tag managers that load on every page if marketing agrees.
- Database hygiene — revisions, transients, orphaned options from removed plugins.
What we avoid
Blindly switching themes mid-campaign. A redesign can help, but most sites get 40–70% of the win from assets and caching alone.
Hosting still matters
Cheap shared hosting with noisy neighbors will cap your ceiling. For client sites that sell, we prefer hosts with PHP workers, Redis/object cache, and edge caching we can configure.
Deliverable clients understand
We report before/after LCP and a short list of what changed. Marketing keeps the look; engineering removes the drag.