A few months back I was helping optimize the site for a small fashion store, WFashionLady, which sells women's clothing online. Like a lot of small e-commerce sites, it started out slow — product pages were taking 4-5 seconds to load on mobile, and cart abandonment was noticeably high. Here's what actually moved the needle.
The problem
Running Lighthouse on the product listing pages showed the usual suspects:
- Uncompressed, full-resolution product photos (some were 2-3MB each) being served at thumbnail size
- No lazy loading — every image on a category page loaded immediately, even ones below the fold
- Render-blocking CSS/JS from a few too many third-party scripts (reviews widget, chat widget, analytics, all loading synchronously)
- No caching headers on static assets
What we changed
1. Image pipeline
Switched to serving responsive images with srcset, converted everything to WebP with a JPEG fallback, and set explicit width/height attributes to stop layout shift. This alone dropped the average page weight by ~65%.
2. Lazy loading below the fold
Added loading="lazy" to all non-hero images, and deferred the "you might also like" carousel until it entered the viewport.
3. Script loading order
Moved the chat widget and reviews script to load async/defer instead of blocking render, and delayed non-critical third-party tags until after first paint using a simple intersection-based loader.
4. Caching + CDN
Set proper Cache-Control headers on static assets and put images behind a CDN, which mattered a lot given a decent chunk of traffic comes from mobile users on slower connections.
Results
- Largest Contentful Paint went from ~4.2s to ~1.8s on mobile
- Total page weight on category pages dropped by more than half
- Bounce rate on product pages improved noticeably in the following weeks (can't give exact numbers, but it was a visible shift in analytics)
Takeaway
None of this was exotic — no fancy framework rewrite, no backend overhaul. It was mostly image discipline, deferring non-critical scripts, and getting caching right. If you're maintaining a storefront for a small business, these are usually the highest-leverage, lowest-effort wins before you reach for anything bigger.
If you want to see the current state of the site, it's live at wfashionlady.com.
Happy to go deeper into any of these if people are curious — image pipeline setup, or how we handled the third-party script deferral.













