Optimize and improve WooCommerce loading speed

WooCommerce is a plugin that allows us to transform our WordPress into a virtual store, but many times we find very heavy, slow sites that require work to transform our site into a fast and agile platform.

Below we will detail some tips to improve the loading speed of our store in WooCommerce.

Some of the tips are general and apply to any WordPress site, and some are specific to WooCommerce.

General recommendations for WordPress

Updated 100% platform

In our experience, updates are the first step before working on a site. It is normal to find sites with very outdated plugins or templates, potentially causing performance problems and much more importantly, security. Our primary focus when it comes to keeping our store agile, is to have updated WordPress, plugins and the theme that we use, 100%.

Less plugins, less consumption

WordPress has more than 60,000 plugins available, giving us flexibility and freedom when choosing how to meet our requirements, but it can also cause the consumption of our site to skyrocket, not due to lack of resources at the server / hosting level, but because we have too many plugins.

Before analyzing in depth the consumption of each of our plugins, it is always convenient to verify that all the ones we have activated fulfill a necessary function that is not included in any other active plugin.

WordPress Health

WordPress has a tool available in the Tools menu, Health Report, from which we talked in detail previously.

This can alert us to necessary PHP adjustments in our hosting plan.

PHP Settings

We suggest using PHP 8.0 as a minimum, and checking if PHP 8.1 is compatible with our chosen plugins and template. At our php configuration guide We explain how to change the version and adjust its variables.

If one of your plugins or themes is not compatible with PHP 8.0, you might want to consider a replacement, as PHP 7.4 is no longer maintained by the PHP.net team since November last year (Nov/28/2022).

with the plugin QueryMonitor we can see potential PHP errors. If we see "deprecated" errors, it means that the functions of the plugin or theme that generate that error may be discontinued in versions of PHP 8.

In our experience, most of the updated sites already support PHP 8.0, and only a few do not issue errors with 8.1. Support for PHP 8.2, which would be ideal in terms of performance, we only noticed in stores with very few plugins.

Recommendations for WooCommerce

Optimized databases

WooCommerce generates a significant number of MySQL queries, so having our database in good condition is essential.

Using the plugin that we recommend, LiteSpeed Cache, from the Database option, we will be able to:

  1. Clear expired transient data
  2. Optimize tables
  3. Convert all MyISAM tables to InnoDB from the "Database Table Engine Converter".

Those are the only 3 options we recommend doing. The rest will depend on each one.

Enable WooCommerce HPOS

WooCommerce High-Performance Order Storage (HPOS) is a functionality that WooCommerce enabled in its version 7.1, and that will be included by default starting next year, that will allow you to create dedicated and optimized tables for WooCommerce, instead of using the default table format used by WordPress for articles and pages.

Meanwhile we can manually enable it from the WooCommerce menu, Advanced tab, Features:

Some plugins may not be compatible with HPOS yet. In this case, like the one in the screenshot, it will indicate the plugins that are incompatible with this excellent new functionality.

Indexes for MySQL

If we have a significant number of products, articles or users, it is likely that having indexes for MySQL will speed up the navigation of our administrator.

Index WP MySQL for Speed It is an excellent plugin that allows us to do this easily (don't forget to make a backup beforehand).

, ,
Start » Blog » Tutorials » Optimize and improve WooCommerce loading speed


We are online, we are not a bot :)

I will be back soon

Hi 👋
Select the prefered contact method to get in touch.
Connect via: