Having a speedy store is a no-brainer if you want people to shop around on your site and buy more of your products.
These days, instant gratification is the norm. People lack the patience to wait around in line at the supermarket or even Starbucks, let alone wait for Netflix to buffer. So if customers can’t load your product pages quickly, they won’t think twice about abandoning your store and buying from your competitor.
According to usability research, 47% of consumers expect a web page to load in 2 seconds or less and 40% of people will abandon a website that takes more than 3 seconds to load.
In addition, a 1-second delay in page response can result in a 7% reduction in conversions.This means if your eCommerce store, for examples, makes $100,000 per day, a 1 second delay could potentially cost you as much as $2.5 million in lost sales each year.
To help you speed up your WooCommerce store and achieve the all-important goal of having a fast and efficient site, I’ve put together the tips below – all essential steps worth reviewing regularly to keep your store running smoothly.
How Big Is Your Store?
To determine the size of your site – and your page load speed – tools like Pingdom and GTmetrix can scan your site (for free!) and give you an accurate picture of what’s loading and possibly slowing down your site.
Pingdom provides a user-friendly interface that includes a page loading waterfall analysis in real-time as the tool is scanning your site.
When a scan is completed, you get a performance grade out of 100, the load time, page size, and number of server requests. You can also access performance insights, which, when expanded, provide more detail about specific files on your site that are loading slowly.
A quick scan of woocommerce.com shows the home page size is 2.8MB.
The waterfall analysis is particularly helpful as it provides a file-by-file breakdown of server requests and the load time of each of your page’s assets, including files, images and third-party services like social media and CDNs.
A waterfall analysis of the WooCommerce home page displays the files and third-party services that are loaded whenever someone accesses the site.
It’s a good idea to regularly benchmark your site so you can keep track of its performance. Learn more in WP Rocket’s guide to page speed and benchmarking.
Only Use Good Quality Hosting
Many online stores start out small with cheap shared web hosting. This makes perfect sense – there’s no point signing up for expensive VPS or dedicated hosting when you’re just starting out and your store doesn’t get much traffic.
But over time, as your store grows, traffic increases and your bandwidth needs start to blow out, you’ll quickly outgrow your shared hosting. This is when you know it’s time to start looking for a better hosting plan with the increased disk space, memory and bandwidth your store needs to scale up.
For an explanation of the different hosting types, check out Shared vs VPS vs Dedicated vs Cloud Hosting.
It’s important to keep track of the resources your store consumes each month so you know when it’s time to upgrade your hosting plan or migrate to a new host. You can do this by logging into cPanel or your host’s dashboard and accessing your site’s resource usage information – look out for your bandwidth use and how much disk space you have available.
With an upgraded hosting plan, your store will have more space to grow and will load faster and more efficiently for customers.
Always Optimize and Compress Images
Image-heavy stores can take forever to load. For every image, that’s another HTTP request – and more time your customers have to wait around for pages to load.
Images make up a whopping 51% of all web content and account for 50% of your page load time, which is why optimizing images is absolutely essential.
Plugins like Imagify can automatically optimize and compress your JPG, PNG and GIF files, reducing the size of your images by as much as 70% without sacrificing their quality.
Lazy loading images can also help speed up your store. With lazy loading enabled, only images that come into view when a customer scrolls down the page will be loaded. This means that if a customer doesn’t reach a certain image on the page, it won’t be loaded.
The easiest way to add lazy loading to your store is with WP Rocket. Learn more in WP Rocket’s guide to lazy loading images for WordPress.
Use a Content Delivery Network
CDNs have helped solved the internet’s problem of geographical distance between users and servers. So if you have a lot of customers based in other countries, it’s worth investing in a good CDN.
When a customer visits your store from a location near the server where your site is stored (i.e. in the same city), your store’s content doesn’t have to travel far to reach their browser. But if the customer lives on the other side of the country or even on another continent, each content packet has to travel much further, resulting in slow page load speeds.
CDNs work by storing a copy of your site’s static content on servers located around the world. So when a customer visits your store, their browser will download a copy of your site from the server that’s closest to them, reducing wait time.
Cloudflare has 119 data centers around the world.
It’s for this reason why CDNs are so useful. CDNs can help ensure a faster store experience, especially when you take into account that on average, 80% of a website consists of static resources.
CDNs like Cloudflare have free plans to help get you started. There are also options like Amazon CloudFront, KeyCDN and StackPath worth looking into when you’re ready to scale up.
Before signing up for a CDN, it’s important to work out your needs, in particular where your visitors are predominantly located and your bandwidth requirements. This will help you choose a CDN that will best serve your customers.
You can learn more about the best CDN options available in WP Rocket’s guide to content delivery networks.
Use a Quality Caching Plugin
Caching is a great step for store owners who want to easily and affordably speed up their store.
Essentially, a caching plugin creates and stores a static version of your store so when a customer returns to shop with you again, they will see a cached version of your product pages.
The great thing about WordPress caching is that it occurs without the customer knowing that it’s happening; that they’re seeing content they’ve already previously downloaded. Caching minimizes the amount of data that is sent between the customer’s browser, the WordPress database and the web server, which means faster loading times.
When using a caching plugin for your WooCommerce site, make sure you exclude these pages from the cache:
- My Account
These pages, as well as other elements like cart widgets, need to remain dynamic since they display information specific to the current customer.
Since your cart and checkout pages can’t be cached but are crucial to conversions, it’s imperative that you pay special attention to their speed. It’s important that you do everything you can to streamline these pages as best you can, removing any unnecessary assets.
Inadvertently caching dynamic pages in your store can result in the customer seeing unexpected results, such as content they had previously viewed instead of new products they’ve added to their cart. So even if you think caching is working as it should be, it’s important to test your WooCommerce cache setup once you’ve configured your caching plugin to ensure it’s working as expected.
Learn more about caching and how to set it up in WP Rocket’s guide to WordPress caching.
Always Stay Up-To-Date
If you neglect to update WordPress, WooCommerce and the extensions that power your store, you’re probably missing out on performance improvements.
With each release of WooCommerce, core developers work on adding improvements to the platform, which often includes enhancements for speed and performance.
Running the latest versions of the core software and any extensions you use will also ensure your site is protected against known security threats and vulnerabilities that could break your store.
So if you’re running an older version of WooCommerce or out-of-date extensions, now’s the time to start regularly updating your store (and keeping regular backups).
Disable AJAX Cart Fragments
The AJAX “cart fragments” feature in WooCommerce automatically updates the cart total in a customer’s shopping cart without having to refresh the page. This is a useful feature as provides the customer with instant feedback that their item has been added to the cart.
The problem, however, is that this feature severely impacts page speed and consumes higher server resources. On top of that, WooCommerce performs this action even on pages where there are no shopping cart or product-related details.
WebNots explains how to fix this issue with in this helpful and very detailed post about wc-ajax=get_refreshed_fragments.
Optimize Your Store’s Database
For larger stores, cleaning up your database can help speed up your site so it loads faster and also clears up significant space for your store to run more efficiently.
WP Rocket provides database optimization – just click on “Database” in the WP Rocket settings to access this easy-to-use feature. In order to clean up your database, simply check the options you want to sweep and click “save and optimize.” WP Rocket will then get to work optimizing your database.
Learn more about how to use WP Rocket’s database optimization feature in How to Make Your WordPress Database Clean as a Whistle.
A Fast Store is a Good Store
Speeding up your online store will not only keep your customers happy and coming back for more, but will hopefully encourage more sales and help your store grow.
Don’t forget to regularly test your store to ensure everything is running smoothly – I recently wrote about this in Is Your Checkout Working? Automated Testing Solutions for WooCommerce.