The situation
A store losing sales every second its pages took to load
The client — an Australian home goods ecommerce store running WooCommerce on WordPress — contacted us after noticing a sharp drop in mobile conversion rate over a 3-month period. Revenue was flat despite increasing ad spend. Their Google Ads manager had flagged a Quality Score drop on landing pages. A quick look at GTmetrix confirmed what we suspected: the mobile experience was broken.
Mobile PageSpeed was 29. The largest contentful paint was happening at 6.8 seconds — long past the point most mobile users abandon a page. Desktop performed better at 54, but still failed core thresholds. CLS errors were causing the add-to-cart button to visually jump as the page loaded, producing accidental taps and abandoned sessions.
Core challenges
Four distinct problems compounding each other
Unoptimised image library
3,200 product images were serving full-resolution JPEGs — some over 4MB — with no compression, no modern formats, and no responsive sizing. Images accounted for 78% of total page weight.
Render-blocking resources
14 JavaScript files and 6 CSS files were loading synchronously in the
, blocking first paint for over 3 seconds on mobile connections.
No caching layer
Every page visit hit the PHP/MySQL stack from scratch. No object caching, no page caching, and the hosting plan had no built-in CDN.
CLS and layout instability
Web fonts, late-loading ad scripts, and unsized image elements were causing the layout to shift as the page rendered — directly hurting Google's CLS score and user experience.
Our approach
A structured 6-phase SEO programme
We built a phased plan that addressed technical foundations first, then content, then authority — in that order. Skipping the technical audit would have wasted the content investment.
1
Full performance audit
Used GTmetrix, WebPageTest, and Chrome DevTools to profile load behaviour across mobile 4G and desktop connections. Produced a 22-item fix list with expected impact scores for each item.
GTmetrix auditWebPageTest profilingDevTools waterfallPrioritised fix list
2
Image optimisation at scale
Wrote a batch script to convert all 3,200 product images from JPEG/PNG to WebP format with appropriate quality settings. Implemented responsive srcset attributes so mobile devices received appropriately sized images. Average image file size dropped from 1.2MB to 87KB.
WebP conversionBatch processingsrcset implementationLazy loading
3
Critical CSS extraction and JS deferral
Identified and inlined the critical CSS needed for above-the-fold rendering. Moved all non-critical JavaScript to deferred loading. Removed 4 unused plugins that were loading resources on every page load.
Critical CSS inlineJS defer/asyncPlugin auditUnused CSS removal
4
CDN and caching implementation
Migrated static assets to Cloudflare CDN with appropriate cache-control headers. Implemented Redis object caching for WooCommerce and WP Rocket for full-page caching. Database query time dropped by 68%.
Cloudflare CDNRedis object cacheWP RocketCache-Control headers
5
CLS and font optimisation
Added explicit width and height attributes to all image elements. Preloaded web fonts to eliminate FOUT. Moved third-party scripts (chat widget, analytics) to load after user interaction rather than on page load.
CLS fixesFont preloadingImage dimensionsDeferred third-party scripts
6
Post-optimisation testing and documentation
Ran final tests across 12 device/connection combinations. Documented every change made for the client's developer. Set up ongoing monitoring in Google Search Console and a PageSpeed API alert for regressions.
12-device testingDeveloper documentationSearch Console monitoringRegression alerts
Month by month
How progress unfolded
Days 1–3 — Week 1
Audit and planning
Complete performance profile across mobile and desktop. 22-item fix list produced and prioritised. Client briefed on expected outcomes per phase.
Days 4–8 — Week 1–2
Image optimisation
All 3,200 images converted to WebP, resized, and deployed with lazy loading. Immediate PageSpeed improvement from 29 to 51 on mobile from this step alone.
Days 9–13 — Week 2
CSS, JS, and caching
Critical CSS inlined, JS deferred, CDN configured, Redis and WP Rocket deployed. Mobile score reached 78 at end of this phase.
Days 14–17 — Week 3
CLS fixes and fine-tuning
Font preloading, image dimensions, third-party script deferral. Final score: mobile 92, desktop 99. Load time 1.4s on 4G mobile.
Days 18–21 — Week 3
Testing and handover
Cross-device testing, documentation delivered, monitoring configured. Client team trained on maintaining performance standards for new product uploads.
Results: before vs. after
The numbers speak clearly
Before (February 2024)
Mobile PageSpeed score29
Desktop PageSpeed score54
Mobile load time (LCP)6.8 seconds
CLS score0.38
Average image file size1.2 MB
Total page weight (homepage)14.2 MB
Google Ads Quality Score4/10
After (March 2024)
Mobile PageSpeed score92
Desktop PageSpeed score99
Mobile load time (LCP)1.4 seconds
CLS score0.02
Average image file size87 KB
Total page weight (homepage)1.8 MB
Google Ads Quality Score8/10
92
Mobile PageSpeed score (up from 29)
79%
Reduction in total page weight
+23%
Ecommerce revenue within 60 days
Mobile conversion rate increased from 1.2% to 2.1% in the 60 days following the optimisation — attributed directly to faster load times by the client's analytics team
Google Ads Quality Score rose from 4/10 to 8/10, reducing average cost-per-click by approximately 34% across the account
Bounce rate on product pages dropped from 61% to 38%, indicating users were staying long enough to engage with product content and reviews
The client's SEO rankings improved for 23 competitive product keywords within 45 days of the speed fix — Core Web Vitals is a confirmed Google ranking signal
"
We'd been told our site was 'fine' by three different developers. These guys showed us in a single audit document exactly why we were losing money every day — and then fixed it in three weeks. The mobile revenue jump in the month after was the fastest ROI we've ever seen from any agency work.
AL
★★★★★
Alicia Lowe
Founder, Home Goods Ecommerce Store — Australia (name withheld by request)