Website fixes · Guide
Why Your WooCommerce Store Is Slow
By Paul Walsh Updated 5 min read
A slow WooCommerce store costs you sales in a way you can't see. People don't email to say the product page took six seconds to load. They leave, often from their phone, and buy from someone quicker. Google notices too, and slow stores tend to sit lower in the results.
WooCommerce stores are slower than ordinary WordPress sites for a simple reason: many of their pages can't be saved and reused like a brochure page can. The basket, the checkout and the customer's account are different for every visitor, so the server has to build them fresh each time. That makes everything else about the store's setup matter more.
Here are the causes I see most, roughly in order of how often they're to blame.
1. Slow or overloaded hosting
Cheap shared hosting puts your store on a server with hundreds of other sites. That's fine for a brochure site, but a shop doing real work on every basket and checkout soon runs out of room, especially at busy times. If your store is slow even with a light theme and few plugins, and slowest in the evenings, the hosting is the likely culprit.
What to do: move to hosting sized for WooCommerce, with a recent version of PHP and enough memory. It's often the single biggest improvement, and it's a job worth doing carefully so no orders are lost in the move.
2. Too many plugins
Every plugin adds code that runs on some or all pages. Stores collect plugins over time: a slider, a pop-up, two different SEO tools, a currency switcher nobody uses, a page builder for one page. Each one adds a little, and together they add a lot. Some also load their files on every page, even where they're not needed. See how too many plugins affect a WordPress website.
What to do: list every plugin and ask what it's for. Remove anything you don't use, replace overlapping plugins with one, and check whether heavy plugins can be limited to the pages that need them.
3. Large product images
Product photos straight from a camera or phone can be several megabytes each. A collection page with twenty of them is a heavy download on a mobile signal, and it's the most common reason category pages feel sluggish.
What to do: resize images to the size they're actually shown at, convert them to a modern format such as WebP, and make sure images further down the page only load as the customer scrolls. An image optimisation plugin can do most of this automatically, including for images you've already uploaded.
4. Caching set up wrongly, or not at all
Caching saves finished copies of pages so they don't have to be built every time. Product, category and information pages can and should be cached. The basket, checkout and my account pages must not be, or customers see the wrong totals and other people's details.
What to do: use a caching plugin, or your host's caching, that understands WooCommerce, and check it excludes the basket, checkout and account pages. Many stores have caching switched off entirely because it once caused a checkout problem, when the real fix was excluding the right pages.
5. A database that's grown for years
WooCommerce keeps a lot in the database: orders, old sessions from abandoned baskets, logs, the history of background tasks and temporary data that plugins forget to clear. After a few years, these build up and slow down both the shop and the admin. A store with an admin that takes ages to open the orders screen often has this problem.
What to do: clear out expired sessions, old logs and finished background tasks, remove leftover data from plugins you've deleted, and make sure the store uses WooCommerce's newer order storage, which is faster for stores with a lot of orders. Take a full backup first, because this is real data.
6. A heavy theme or page builder
Multi-purpose themes and page builders load a lot of code to make every layout possible, whether you use it or not. On a phone, that can mean several seconds before anything appears.
What to do: if your theme is the problem, a lighter theme built for WooCommerce can make a dramatic difference, but it's a bigger job. Start with the other fixes on this list, then judge whether the theme still needs replacing.
7. Things the store loads from elsewhere
Chat widgets, review widgets, tracking pixels, fonts and embedded videos all load from other companies' servers, and your page waits for them. One or two is fine. Ten is not.
What to do: remove what you don't use, and load the rest after the page itself has appeared.
How to tell what's slowing your store down
Don't guess. Run your product page, a category page and the homepage through Google's PageSpeed Insights, on mobile, and note the scores and the suggestions. Then test the basket and checkout yourself on your phone, on mobile data, not your home Wi-Fi. If the admin is slow too, the cause is usually the server or the database rather than images or the theme. See why your WordPress admin dashboard is slow.
Getting it fixed
Speed work is best done in order: hosting and caching first, then plugins and images, then the database, then the theme if it's still needed. Each step is measured before and after, so you know what actually helped.
If you'd rather hand it over, store-wide speed work is part of my WooCommerce fixes, quoted after I've looked at the store. If your store is on WordPress but not WooCommerce, see why your WordPress website is slow.
About Paul Walsh
Developer based in Blackburn with 25+ years in electronics and tech. I've run online businesses of my own, and now build and fix websites for small businesses across the UK.