WooCommerce Performance Optimization

We, humans want things to happen fast. It is this mindset that results in us anticipating that websites should load and deliver content quickly. That means that your WooCommerce-powered website has to be fast in order to benefit from as many paying clients as possible.

WooCommerce websites are typically compatible with full page caching, however, the only problem with page caching arises when server-level caching is used and delivered by the hosting provider itself.

A pure reverse proxy solution provided by many WordPress Hosting providers is not aware about the logic provided by WordPress apps and will still end up caching pages when that shouldn’t happen. This will lead to rather unsightly results such as John viewing Mary’s shopping cart once in a while – and you don’t want that to happen.

In order to make sure it’s not your case – check the website in question by opening it in two different browsers and see how the shopping experience looks like when both those clients are active simultaneously. Next, add two different items to your cart in two different browsers and then visit your shopping cart page.

Other full-page caching issues with WooCommerce websites are normally related to theme or plugins being used, not WooCommerce itself. In addition to that, shopping cart widget might make use of an AJAX request to download shopping cart content to display it as a hover popup or icon on every page.

This means that once your website reaches 1000 page views, those pages will be delivered through page cache very quickly. However, after being displayed, the shopping cart widget may issue 1000 AJAX requests straight to the server, and those that are not page-cached may result in heavy server load.

It is not so visible, as certain widget delays don’t affect user experience by a lot, however, the highly-loaded server won’t have many resources to deliver your dynamic pages such as the checkout page. As a result, visitors will be shopping without facing major problems, but will still not be able to process their order successfully in the end. For this reason, server load needs to properly monitored to see if that’s really the case.

When everything falls into place as it should, WooCommerce will be able to store shopping cart data into local browser storage for the majority of visitors using modern browsers, which means AJAX requests will be completely avoided.

As a part of our Manager WordPress Hosting services we work to ensure that AJAX shopping cart requests are lightweight so the server can process them better. Other plugins shouldn’t hook for frequent users, thus preventing regular web server load.