Seven WooCommerce Reality Checks
What you need to know about WooCommerce, when your product has a popularity problem.
WooCommerce takes second place behind Shopify in terms of market share for e-commerce platforms. With over 10% of all WordPress sites using WooCommerce and the Gross Merchandise Volume from WooCommerce stores estimated to be well over $11 billion, it’s likely you’re using the platform for your website.
But we’re just going to level with you – whether your product has moderate runaway popularity or you’ve ended up with selling tickets on WooCommerce for a popular local festival you probably need to move on from WooCommerce and look at one of the new, scalable SAAS Platforms. For retail, you should take a look at Shopify, for ticketing you should look at a platform like Ticket Tailor, Line Up or TickX.
We get plenty of customers with WooCommerce sites using our Virtual Waiting Room (VWR), to deal with their website’s traffic problems. A VWR will help, but if you’re relying on WooCommerce, and you’re getting popular, you are going to be dealing with long queues. Sadly, many of our WooCommerce customers are in denial about how much traffic they can handle, and end up making things worse. Here are seven realities to accept that will help you make the best of a bad situation:
1. The server won’t make a difference
You don’t have to look far to find a WordPress hosting service, some of which claim to be the best at operating at high performance. By the time a customer approaches us, they’ve probably changed hosting companies or server configurations at least once, paying out more money thinking it will help their server handle significant traffic. But even after all that, the website has still crashed, and sales are still lost.
If you’re a popular brand or have popular products, you shouldn’t risk your site being on a cheap shared server, but with WooCommerce, it’s very likely your site will very likely fail even if you pay extra for an upgrade.
That’s because the problem isn’t the server at all; it’s the software architecture. WordPress wasn’t built for e-commerce; it was built for one-to-many publishing (like a blog) where pages can be easily cached as every user sees the same page.
E-commerce doesn’t work like that. Every single page is personalised, along with the cart. Once you start to see high traffic, that cache issue will turn into a crash issue.
2. Your web agency/consultant doesn’t know how to fix it
If your web agency or consultant has loads of clients with very popular products, they would have recommended you a new platform by now. So, it’s likely you’re the first client they have who has a runaway popular brand. Good for you – It’s great to be popular, not everyone is. But it means your agency is probably a little out of their depth in figuring out ways to help you with this problem.
They will research the popular WordPress forums looking for plugins and hosting solutions that promise to help, But again, most of this advice comes from other WordPress consultants and developers who have not experienced true high-traffic situations like yours, or they’ll hear from hosting and plugin providers who promise to help with solutions that cannot fundamentally fix the underlying architectural issues in WordPress.
You’ve probably heard that for every WordPress problem there is a plugin to help, except you are about to find out that...
3. ...Plugins won't help (except ours!)
A WordPress site loaded with plugins is one of two things: A Swiss army knife capable of anything, or a house of cards that’s one more plugin away from collapsing. WordPress’s biggest selling point to site builders is, whatever problem you might have, there will be a plugin to solve it.
Unfortunately, cramming your site with plugins might help solve your existing problems, but it can also create a lot of new ones – especially when you’ll be so reliant on WooCommerce. And once your popularity begins to pick up, you’ll ask your WordPress consultant how to fix it. They’ll probably assure you that they can fix your scalability problems by getting the correct caching plugin.
Unfortunately, they’re wrong.
Caching plugins typically exclude WooCommerce pages from the cache because of the personalization issue – which will apply to almost every page on your site if your site is first and foremost a web store.
If you’re anticipating high traffic, Install our virtual waiting room plugin – designed to control the rate at which users can access your site, helping to ease the flow of traffic.
With this, we actually advise disabling all caching plugins as they won’t help your e-commerce store anyway, but they will interfere with queue operation.
4. Plugins are not the only way
Our own plugin takes just minutes to install on your site, and though it can help you manage large volumes of traffic, WordPress and your server are still involved in loading the plugin for your website’s users. That means there is still some load on your server, and depending upon how many other plugins you are running it could be significant.
Make sure you switch on our ‘overwrite index.php’ option when configuring our plugin.
This will minimize the amount of WordPress code invoked before users are offloaded from your site into the waiting room.
Even better though, you could install our waiting room somewhere else entirely, like Cloudflare, (Installing CrowdHandler on a CDN means it doesn’t put any load on your site whatsoever).
If you’re one of the unlucky few who isn’t able to switch off caching plugins and services, then make sure they are working as well as they possibly can be, and use our JavaScript integration instead of our WordPress plugin. Relying on JavaScript is not ideal, but it’s enough to get many users through a tough sale.
5. You can't handle as much traffic as you think
If you’re using our virtual waiting room with your WooCommerce site, you need to really think about how much your website will be able to handle. In the CrowdHandler dashboard, we recommend setting the rate to 20 if you’re confident in your site’s ability to handle traffic and 10 if you’re not. This means every minute the waiting room will let in 10 to 20 users into your site – over 10 minutes, that’s 100 to 200 users. We don’t see sites using WordPress and WooCommerce handle much more traffic than that, but if you find that you’re seeing healthy performance after 10 minutes you can begin to push the rate up slowly and carefully.
Many of our customers that use WordPress overestimate the rate their site can handle and end up dialling the rate up and down as site performance fluctuates (and crashes). This can absolutely ruin the user experience of those waiting to get their hands on your product. It’s MUCH better to leave customers in a queue – especially one you have control over – than to risk letting too many onto your site and seeing it crash causing problems for the users on your site.
6. The queue will be long and slow
If you have thousands of users wanting to buy your products, but can only send in 10 (or 20 people at most) through to your site, that means it will take hours for your customers to get to the end of the queue.
That is still better than a crashed website and potentially thousands of missed sales, but in order to get those sales, you (and your customers) have to accept that they might be waiting a long time to get their hands on your product.
Our best piece of advice is: don’t panic.
We hate to see our customers panicking about a long queue, increasing the rate in which users are able to get through and allowing the site to crash. They then panic about a crashed site and set the rate to 0.
The site recovers eventually but the user experience has gone from a customer patiently waiting for their chance, to getting through and expecting to get to the checkout, and then getting stuck with a blank screen.
If you have a hot product, with a loyal customer base, none of your customers are going to mind waiting in a queue as long as you’ve given them a heads-up. All it takes is a sentence or two in the message box on your queue, a few social posts or a TikTok video letting your audience know they should expect a queue. You could also use our countdown feature which sets clear expectations before the queue opens up.
The customers that care about your product or your brand may not love waiting, but they will be far happier with a carefully managed user experience than a chaotic one. Besides, the wait will be shorter in the long run than multiple queue cycles due to a crashed site.
7. Switch off AJAX/cart-fragments
Last, but by no means least, and we can’t stress enough how important this is – turn off AJAX/cart fragments. This technology enables your web page to be updated without reloading the entire page. The interactive cart in WooCommerce adds a huge amount of load to every page hit. By turning these off, you’ll improve the number of users your site will be able to handle – and if during a big sale or product launch, it’s likely that customers will only be looking for that one specific product anyway, so it won’t affect their user experience.
We hope those seven points have helped you understand why your WooCommerce site won’t scale, and how you can address the problems you might be facing.
You can get our virtual waiting room installed on your site in less time than it took to read this blog.
Sign up