Every eCommerce store owner’s worst nightmare is website crashing during peak sales. Though WooCommerce is powering 28% of the world’s online store (at the time of writing this post), most store owners have one doubt. Can we scale WooCommerce?
The question about scaling WooCommerce can’t be answered in one word. Of course, you can do scaling, but the level of scaling varies from site to site. So, the question about scaling WooCommerce can be answered like this.
“Yes, we can scale WooCommerce for small and huge eCommerce sites with the right skills and right tools.”
Without having a thorough look at your website, one can’t say how much you can scale or what you can do to scale your WooCommerce store. In this post, let’s see where we can start.
Understanding Your Website
Modern websites are very engaging and have lots of visual elements to present the content neatly to the users. Moreover, we use lots of plugins in the background to accomplish different tasks. For example, you may use WP Optin Wheel to get new leads by providing some valuable materials and coupons. Since it is an eCommerce store, we will definitely be using payment gateways and authentication services. In a normal WordPress website, we may use one or two eCommerce features. Hence a proper WooCommerce powered eCommerce site is totally different from a typical WordPress site with online store options.
Simply caching the site and using CDNs won’t help you make your site run faster at peak times. One of the most common metrics used to scale an eCommerce store is the “add to cart” event.
If there are 1000 visitors on your site at present, we can’t say all of them are purchasing a product. However, from the add-to-cart event, we can easily determine potential customers count.
Thankfully there is a WooCommerce Google Analytics extension to easily track this behavior. Most of the basic tracking is available in the free version itself, but if you need to analyze the checkout behavior, you have to use the premium version of the WooCommerce Google Analytics tool.
Monitor the Queries
Ok, now we know how much your website can handle the orders in the present state. As a next step, we have to find the potential spaces on your website for scaling the WooCommerce store. To do that, we have to find how much load your server handles in a regular state.
To do that, you can use a free plugin called Query Monitor. This tool is actually used by developers to notice the queries handled by your website. You can use this tool from your WordPress admin panel and can easily identify which part of the website/plugin is slowing your website. Suppose you don’t have the resources or the developer team to rectify the components slowing your website, you can simply delete/deactivate the plugin or the code.
Thinking from a store owner’s perspective, if a particular plugin that can’t be fixed is taking up valuable spaces and slow the website’s earning, deactivating it isn’t a bad idea.
If you need a deeper insight into your site’s performance and each plugin, you can use New Relic. Investing in using a tool like New Relic will help you collect useful site data before the big launch and a special event like Cyber Monday or Black Friday. The collected data will help you decide whether you need to do minor fixes or major core-level updates.
Understanding the WooCommerce
Setting up a WooCommerce store is very simple. By simply following the guide, even a non-tech guy can set up a WooCommerce website in 10 minutes. But for scaling WooCommerce, one must have a deep understanding of how WooCommerce works.
When a user clicks the purchase button, hundreds of data are created within a fraction of a second. For example, different metadata like the product details, shipment information, discount and tax information, payment information, etc., will be added to the product table when a user places an order. Like this, a single order placement can create hundreds of data within a second.
For instance, if 100 orders are placed in your store simultaneously, your site has to handle 100X100 = 10000 data. This data count will be through the roof on a product launch day or a special day like Black Friday.
Once the rate of inserting data into the table increases, it gradually slows down the checkout process. Eventually, your entire website will become slow as there are hundreds of checking out processes are in the queue.
To fix this, you would definitely need an experienced developer. First, you have to thoroughly examine and find out how your tables are used.
In WooCommerce 3.0 update, a new feature called CRUD(Create, Read, Update, Delete) is given, which helps you to easily interact with the database. You can even create a custom table and move the data without affecting the existing code. Of course, this process can’t be done easily with a developer alone. Your hosting provider must also be interested in working with you and providing sufficient insight into the problem. So always select a friendly hosting service provider.
Set a proper Load testing environment
Ok, now you might get an idea of how your WooCommerce store works and how your site is generally performing. Next, with all the collected data, try to set a proper load testing environment.
For better results, try to categorize your online users. For example, if there are 100 users on your site right now, 20 of them may be browsing your products, 15 of them ordering the product, 10 of them may be posting reviews. Take all these scenarios into consideration and run the test.
You can use tools like Loadimpact to run a load test on your website. Running a load test will give you a better insight into which pages are slowing your website. Caching the site is a good idea, but caching the entire eCommerce site is not good. For this issue, some WordPress hosting providers use Varnish.
In Varnish, the most requested page is cached and shown to the new users to reduce the load. However, since some pages like the cart pages shouldn’t be cached you must exclude such pages.
Try To Have A Developer Team
If you are scaling WooCommerce store for a high volume eCommerce website, then having a proper developer team will be a wise choice. Because we have to get our hands dirty for big improvement and scaling.
You can hire a WooCommerce developer to accomplish this task. If you don’t know where to find a well-experienced developer, you can start your search in the Codeable.
At the beginning of the post, I’ve mentioned that scaling WooCommerce for a high-volume eCommerce site can be done by having proper skills and tools. For skills, you can hire an experienced developer, and for the tools, you can use the tools listed below to help you find the right spots to scale your WooCommerce store.
Tools For Scaling WooCommerce
Loadimpact – for performing load testing
Pingdom – to check your site performance
Query Monitor – to identify the queries handled by your site
New Relic – to have a detailed insight on your website/application performance
Proper hosting – this is something you have to pick yourself that meets your needs.