How to Scale Your Online Store with WooCommerce
One of the reasons eCommerce businesses turn to WooCommerce is because it is widely recognized as “scalable,” meaning functions can expand alongside the business.
Of course, as Chris Lema pointed out earlier this year, “scaling” is relative to what a business uses to measure success. And within a business different people will have different opinions on what to scale and even when (holidays, sales events, average non-event days).
- Finance people will look at revenue relative to costs
- Marketing people will measure page hits, conversions, and email subscriber activity
- People running the website will look at metrics like how quickly pages load
As a WooCommerce developer, I naturally fall into the third bullet but I have a healthy respect for the other two as well!
A couple of years ago, I discussed ways to scale WooCommerce by focusing speed on the front end where the customers are. I can’t overstress the importance of speed in eCommerce, especially with Google’s most recent update that rewards mobile-optimized fast websites. At a minimum, make sure your eCommerce site:
- Pages load quickly
- Search is fast and returns accurate results
- Shopping carts are easy to reach and edit
- Payments are completed swiftly and efficiently – no one wants to see their financial information taking the slow road through payment processing
eCommerce Scaling Must Support the Entire Customer Experience
eCommerce and online shopping were already growing rapidly each year but the COVID-19 pandemic sent everything into overdrive. This global map of eCommerce activity (scroll down the page a bit to see it) shows online shopping activity over the past week.
The pandemic brought even more eCommerce sites to market as brick-and-mortar businesses launched or expanded online sales. You don’t need me to tell you that in eCommerce, a good experience is one with pages that load quickly, accurate search results, and easy payments.
So how can scaling your WooCommerce site help? Where should scaling be focused?
Identify Where Increased Traffic Causes Bottlenecks That Slow Site Speed
WooCommerce itself lists traffic as the Number One item that influences scale.
Lema’s preferred scale is the add-to-cart event as measured per minute or an hour and takes a deeper dive into scaling to boost the overall customer experience. WooCommerce tools don’t report this metric, but you can use its Google Analytics extension (free or paid versions) to measure add-to-cart events and average it per minute or hour. Compare the results against site traffic and you’ll get a pretty good picture of how well the site turns visitors into shoppers.
It’s also a good idea to take other speed measurements to identify where bottlenecks have emerged. These three steps will help:
- Identify slow pages. Google’s PageSpeed Tools provide reading materials, insights, and suggestions about where and how to increase speed. PageSpeed Insights test key pages like shopping carts and payment pages. You can also use tools like Pingdom and GTmetrix.
- Cache pages that don’t change very often. Caching allows sites and browsers to save pages in their memory so that there isn’t a fresh search every time a person types in a query or clicks on a page link. Pages to cache include catalogs and About Us pages.
Some experts recommend not caching pages directly related to eCommerce including product pages. You shouldn’t cache customer-related data like shopping carts – including abandoned carts – account pages, payment details, checkout pages, and cookies.
WooCommerce doesn’t list a caching extension on its site. Caching tools that work well with it include WP Fastest Cache, W3 Total Cache, and WP Rocket. These were developed for WordPress and have been modified to recognize WooCommerce pages to recommend not caching. They can also do other functions like minify, which cleans up source code, and compress images without sacrificing quality.
- Disable WooCommerce cart fragments. This default function immediately informs customers when they add new items. It’s a nice feature, but it also hurts page speed. Credit to WP Rocket for reporting this discovery from Webnots. Here are step-by-step instructions to disable it.
A Content Delivery Network (CDN) Can Help Very Slow Sites
If you have a large site that’s still loading too slowly, you may want to try out a content delivery network, or CDN. CDNs work by creating copies of a website and distributing them to networked servers around the globe. This way, local servers can quickly send site content to local (and I mean this in a very relative sense) customers, rather than relying on a single server. If your site gets customers from around the world, a CDN could speed it up, particularly if you have very large files and lots of videos.
Before you try a CDN, talk to your web host to see if they provide integrated CDN services. Switching to this will bump you up to a more expensive plan but it is well worth the cost.
WooCommerce recommends Jetpack for CDN support. However, its Site Accelerator tool only focuses on speeding up image download.
Deeper Diving into Scaling WooCommerce
Our friend Chris Lema recommends paying particular attention to a few key areas for scaling. Not surprisingly, these include customer-facing, front-end activities that directly impact the customer experience.
- Post-purchase browsing and shopping. Many customers continue to browse even after they complete a purchase, and some might even make another purchase, or if time permits, call up the previous order to add to it. In this case, you want to auto-logoff customers so they can browse again, this time seeing pages just cached that will quickly download. If they remain logged in, it can be slightly difficult to revisit the pages they visited earlier.
- Expand site search capabilities. Tools like Elastic Site Search index your site content to make it searchable. Customers enter a search query and are guided to content that’s most relevant to them (sound familiar?) and overlook things like typos.
- Optimize customer account pages. Customers visit their account pages fairly often, usually to check order status or update information like addresses or credit cards. Each visit, of course, creates new paths that can, over time, slow down overall site performance. It’s a good idea to clean up account pages once in a while. Depending on your customers, you may not need to save orders or retain search queries for more than a couple of years.
Other improvements I’ve suggested in the past include delaying site-generated welcome and laying off customization options that deliver little but can slow the site.
Finally, talk to your web host if you anticipate a temporary but significant increase in site traffic. They can make adjustments to other parts of your website to handle the increase and set things back to normal afterward. The important factor is to consistently deliver an enjoyable experience to each customer for every visit.