Skip to content
Back to Journal
Engineering2 min read18 August 2022

How we cut WordPress page load time from 8s to 1.4s for a Jaipur e-commerce client

How we cut WordPress page load time from 8s to 1.4s for a Jaipur e-commerce client

The client ran a WooCommerce store selling home furnishings in Jaipur. They had been running Google Shopping ads for about four months with mediocre results. We were brought in to look at the ads and found the problem immediately: the landing pages were loading in 8.2 seconds on a 4G connection. Nobody was staying long enough for the ads to have a chance.

The ads were actually fine. The site was not.

What we found in the audit

The first thing we do on any speed engagement is run a waterfall analysis, not just a PageSpeed score. The score tells you there is a problem. The waterfall tells you what it is.

This site had 47 JavaScript files loading on every product page. Many were from plugins that were installed and then never fully configured or, in two cases, not even used anymore. The site was loading a booking plugin on every page because someone had installed it once for a popup and never removed it.

Images were uncompressed. A product hero image was 4.2MB. On mobile, that is a meaningful chunk of the user's data and it is taking seconds to load.

The hosting was a shared plan from a local provider. Database queries on the product listing page were running 60 to 70 queries per page load with no caching.

The fix, in order

We moved to a cloud hosting provider with a server location in Mumbai. That alone dropped the time-to-first-byte from 900ms to 180ms for visitors in Rajasthan.

We removed 19 unused plugins. Ran a query monitor to identify the slowest database calls and added proper indexing on the product meta tables WooCommerce uses heavily.

Replaced all product images with WebP versions sized for their actual display dimensions. The 4.2MB hero became a 180KB WebP. We set up a script to handle this automatically for future uploads.

Implemented page-level caching with cache exclusions for cart and checkout. Deferred non-critical JavaScript so the page rendered before scripts loaded.

Final result: 1.4 seconds on a simulated 4G connection. More importantly, conversion rate on the Google Shopping campaigns went from 0.4% to 1.1% in the following month. The ads had not changed. The destination had.

Speed is not a nice-to-have metric. For e-commerce running paid traffic, it is directly connected to whether the campaign is profitable.

Published 18 August 2022
Start a Project