If you’ve been running WooCommerce and noticed that your site slowed down considerably because of it, then you’re not alone. In fact, this is pretty common. That’s because of how WC handles its various eCommerce functions. We also know from a Google study that a difference in load time of as little as 100 to 400 milliseconds has a measurable impact on user experience, and even more so on eCommerce. So we know WooCommerce is slow and we know that’s b-a-a-a-d news, so what should we do?
Understanding WooCommerce Architecture
First, let’s figure out exactly what makes WooCommerce so slow. Well, it’s pretty simple. Because all the product pages are database driven using queries, you’re likely running into a MySQL server speed bottleneck at wherever you’re hosting. If you’re currently on shared hosting, then this is no surprise. The more customers/sites you’re sharing a MySQL database server with, the slower it will be. Even a VPS at a crappy host may not fix things. And as your site grows, the number of rows in your tables increase and these queries become increasingly large, so unfortunately the problem only gets worse over time. Page Caching and CDN’s aren’t much help, because we’re not concerned with static assets slowing load times but rather queries.
So what are the possible solutions?
Well, at a minimum you need to be on a VPS at a good host. Even better with would be a VPS with a dedicated MySQL database. And even better would be a dedicated server so all the resources are completely yours. Does it have to cost a fortune? Not really. Our VPS units start at just $400/mo and are based on top of world-class infrastructure at Amazon. Want a dedicated DB upgrade? We offer those for as little as $250/mo. So your entry point for a smooth running WooCommerce hosting plan is $650/mo and that’s not considered too bad in the world of eCommerce. Ever tried running that resource hog named Magento? You pretty much need a dedicated server if you have any type of real volume on it.
With a dedicated database, we can use a MySQL tuning utility to log and analyze the performance, adjusting things like database query cache based on our findings. That’s a better approach than say trying to optimize the actual MySQL queries made by WooCommerce or WordPress, as those changes will need to be made again and again each time you update to new versions. Instead, it’s better to accept how WooCommerce is setup, run the current version, and put the proper hardware setup behind it. Reach out if you need help with yours!