Speed is table stakes for ecommerce sites, so it’s important to consider steps to boost WooCommerce performance. Without a fast website, you are less likely to convert your visitors into customers. Shoppers expect pages to load quickly no matter the device they use. If your pages are slow, many will leave your site never to return.
Google recommends keeping page load times under two seconds.
They have found that 53% of users will leave a page if it takes more than three seconds to load. Additional research has shown that pages with loading times over two seconds have a 38% higher bounce rate than those that load under two seconds.
If you want to provide your customers a smooth and speedy shopping experience, you need to know how to optimize your WooCommerce site performance. In this post, we will provide some actionable steps you can take to boost site speed. We will also cover how to test your website’s performance and examine some of the common reasons for WooCommerce performance issues.
Save time getting online
With GoDaddy Managed WooCommerce Stores, you save time getting online. It includes the features to help you with the strategies we’re about to cover — it’s not just about getting a domain and hosting.
This high-performance platform optimized for WordPress also includes tools for security, shipping, payments and site performance.
Once your WooCommerce store is up and running, it’s easy to track orders with customizable sequential order numbering, keep an eye on profitability with native COGS tracking, and monitor store performance using advanced and integrated Google Analytics.
How to measure the performance of your WooCommerce store
It’s important to know how to measure your website performance before you begin making changes to your site. With a detailed performance test, you can gain insights into what is working well and what is holding your site back. You can also use the test as a benchmark when evaluating the effectiveness of any changes you make.
Here are some tools we recommend for testing your website loading speed:
Each tool gives an overall performance score and recommendations for improvements. You can use them to quickly see how big your pages are and what elements take up the most space.
With PageSpeed Insights, you can quickly test both the mobile and desktop versions of your site.
Reasons for a slow WooCommerce store
There are a variety of factors that can impact your website’s performance and create a need to boost WooCommerce performance. Here are some of the common causes of a slow WooCommerce store:
Insufficient hosting plan
Fast, reliable websites start with web hosting. Ecommerce stores rely on dynamic content and generate a lot of data and requests. All these resources put a strain on the hosting server because they cannot be cached or offloaded.
If you want strong, stable performance your hosting provider needs to have enough server resources to handle all requests from users. The more concurrent traffic you have, the more difficult this becomes. Server quality and configuration are also important as they help process requests more efficiently.
Oversized pages
Larger pages take longer to load. There isn’t a fixed requirement for page size, but a general recommendation is to keep your pages under 2MB. It can be tricky to get your pages this small if you want to add a lot of features to your site.
This is especially true for ecommerce sites as they tend to be image-heavy.
For most websites, images make up the bulk of the page size. The HTTP Archive has found that the file size for the average web page is more than 50% images. Below you can see the Pingdom test for a product page to get an idea of content allocation for an ecommerce site.
Outdated PHP settings
WordPress and WooCommerce run on PHP. The server-side language is used to generate the HTML pages that make up your site. PHP receives frequent updates, each offering a boost to performance and security. If your WooCommerce site uses an outdated PHP version, your performance may be affected.
It is recommended that your website runs on at least PHP version 7.3 to avoid any issues.
You can check your PHP version by going to WooCommerce > Status. Scroll to the Server environment section and find the PHP version.
Lagging databases
Your database stores and organizes all the website data from your WooCommerce site. This includes site content such as pages, products, product categories, themes, and plugins. It also includes data from your transactions like order and payment details.
Every time you add a product or take an order, more records are added to the database. Over time, all this data can make your database bloated. If your database is overloaded, it may process requests slower, negatively impacting site performance.
Steps to boost WooCommerce performance
1. Compress images
The first step to boost WooCommerce performance is to reduce your page size by compressing your images. Image compression lowers the number of bytes in an image to make the file smaller.
Depending on the file format and compression method, the process can reduce file sizes by up to five times.
There are two main types of image compression; lossy and lossless. Lossless compression results in a moderate reduction in file size without affecting the image quality. Lossy compression provides greater file size reduction but can often affect the quality of the image.
Your image file type impacts what kind of compression is most appropriate. The most common types of image files for ecommerce sites are WebP, JPEG, and PNG. Image compression for JPEG files is often lossy. When you compress a JPEG, unnecessary data is removed, but the new image is lower-quality. PNG images tend to have a higher quality than JPEGs and work well with lossless compression.
Your ecommerce store likely has a mix of JPEG and PNG images. If so, you’ll want to use an image compressor that supports both file types. When selecting a compressor, you also need to decide whether to compress your images before or after uploading them to WordPress.
For images already on your site, it is best to use an image compressor plugin in WordPress. The plugin will let you optimize images in batches. You can use it to automate image optimization for future uploads. Below are a few of the best image optimization plugins:
After optimizing your images, be sure to check the file sizes. Ideally, your images should be under 100kb. You can improve image delivery even more by using lazy loading. When enabled, off-page images won’t load until the user scrolls past them. This can lower the perceived loading time for your pages as fewer requests are made when the page first loads.
2. Implement a caching plugin
Caching is one of the simplest ways to boost WooCommerce performance. It helps you lower your page load times by serving resources faster and reducing the number of requests made to your server.
Each time a user visits your website, their browser requests the webpage from your server. To serve the page, your server must respond by providing every file needed to render the page. Without a cache, browsers must make new requests each time someone visits your site.
A cache provides a temporary store of website data.
It allows you to save static versions of files like HTML, CSS, and images. If your content is cached, visitors can receive a static copy of the resource instead. This improves loading speeds as you can serve static resources faster than processing requests to your server.
There are many types of caching used to store files. Some of the most common caching types for ecommerce sites include:
- Object caching: Object caching stores snapshots of database queries allowing you to serve them without waiting for PHP processing.
- Page caching: With page caching, you store a static snapshot of a dynamically generated HTML page. You can serve this static page faster as you do not need to make database queries or PHP scripts to generate the page.
- Browser caching: Static copies of files are stored in a visitor’s web browser. When a user returns to the site, they receive the static files instead of loading new ones.
- CDN caching: Multiple copies of static files are stored at different server locations for quick delivery to users.
If you use GoDaddy hosting for your WooCommerce store, caching at the server level is already handled for you. All settings are configured to support any commerce functionality.
Along with server-level caching, it is recommended to download a caching plugin. Below are some solid options with flexible caching rules:
When you use a third-party plugin, you must be careful what pages you cache. Many ecommerce features rely on dynamic content. If you cache pages with dynamic elements, users will all receive the same experience instead of content specific to the customer.
The best examples of dynamic ecommerce content are account, cart, and checkout pages. You want to exclude these pages in your caching rules.
3. Use a CDN for static resources
Server location plays an important role in your website speed. The greater the physical distance between your server and the client’s browser, the longer it takes for pages to load. You can’t make your origin server close to everyone, but you can serve files from a content delivery network.
A content delivery network (CDN) is a network of servers spread across different geographic regions. Each region is known as a point of presence (or PoP). PoPs are strategically located to cut the distance between users and the site’s resources.
Each PoP uses edge servers to store static content that can be delivered quickly to nearby users.
With a CDN, users’ requests for content are routed to the closest PoP. If the PoP has the requested files, it serves them to the user. If the edge server does not have a file, it will grab it from the origin server and deliver it to the visitor.
Distributing content through a CDN can dramatically reduce page load times. It also lowers the total load on your server. With more bandwidth available, your website can handle more concurrent traffic.
4. Clean up the database
We touched on how a bloated database can impact site performance. Eventually, you will need to clean up your database if you want your site to stay fast.
You can clean up your database manually, or you can use a WordPress plugin to help automate the process. Below are a few of the most thorough and easy-to-use options:
You can start your database clean-up by deleting revisions. By default, WooCommerce saves old versions of products, pages, and posts. It does so for each little change that you make. This means that every time you update the words on a page, another version is added to the database.
You likely do not need all these revisions so you can free up valuable space by deleting them.
With a plugin, you can clear old revisions and deleted posts with a few clicks. Below is an example using the WP-Sweep plugin:
If you do not need revisions, you can disable them altogether by adding the following line to your wp-config.php file:
define ('WP_POST_REVISIONS', false); |
You can also limit the total number of revisions by adding:
define ('WP_POST_REVISIONS', 5); // limit to 5 revisions |
Here are some other ways to speed up your WooCommerce database:
- Delete any expired transients
- Clear empty database tables
- Clean comments and user profiles
5. Increase the WordPress memory limit
The PHP language needs memory to process WordPress queries and perform other operations. If there isn’t enough memory available, processes fail and you experience all kinds of issues. This typically occurs for more resource-intensive actions such as activating a new plugin or making bulk changes to your product catalog.
To avoid PHP memory problems, you need to allocate more memory to your site. You can do so by scaling your hosting plan or increasing your PHP memory limit. WordPress has an adjustable setting that specifies how much memory your site’s PHP can consume. The default WordPress configuration sets the memory limit at 32M.
A 32M memory limit does not support the demands of most WooCommerce stores. WooCommerce recommends that you increase your memory limit to 256M to avoid issues. Some extensions will even require up to 512M to work effectively.
You can check your PHP memory limit by going to Tools > Site Health > Info. Scroll to the Server section and find the memory limit
There are several ways you can increase the WordPress memory limit.
The first method is to add the following line to your wp-config.php file: define('WP_MEMORY_LIMIT', '256M');
The next option is to edit your PHP.ini file (if you have access to it). If the memory limit is below your desired level, replace it with the following line: memory_limit = 256M ; Maximum amount of memory a script may consume (64M).
If you do not have access to the PHP.ini file, you can try editing your .htaccess file with the following line: php_value memory_limit 256M.
6. Use a fast WordPress theme
When choosing a WordPress theme, it is important to consider performance just as much as a design. Themes play a big part in your website speed. The more scripts and stylesheets your theme has, the longer it will take to load.
When selecting a theme, look for one that is lightweight but still has the ability to meet your desired aesthetics.
You also want to ensure that your theme supports all the dynamic functionality of WooCommerce. WP Rocket tested dozens of WooCommerce-compatible themes to see which is the fastest. Below are some of the notable performers from their list:
In addition to offering a boost for WooCommerce performance, these themes provide extensive features for building your store. When combined with the Gutenberg editor or a page builder like Elementor, you have all the tools needed to design any sort of experience for your store. Plus, the more you get out of your theme, the fewer plugins you need to install.
7. Remove unused stylesheets & scripts
Many WordPress plugins load stylesheets and scripts even when they are not being used on the page. Removing these unused CSS and Javascript files can reduce page sizes and boost WooCommerce performance.
A quick way to check if your pages are loading unnecessary resources is to use Chrome DevTools.
To open Chrome DevTools right click on the browser window and select Inspect. Click the settings icon then go to More tools > Coverage.
Click the Reload button and Chrome will create a report detailing the page’s resources. By looking at the Usage Visualization section, you can see what files have unused resources.
The quickest way to remove these scripts and stylesheets is with a plugin. I recommend using Asset CleanUp as it is quick to implement and easy to use. After you activate the plugin, go to Asset CleanUp > CSS / JS Manager to check what elements are loading for each of your pages.
There, you will see all the files the page loads. Files are grouped by type and you can expand each file to see more detailed information. If you want to strip a file from a page select Unload on this page.
Be aware that the plugin can sometimes conflict with javascript-based payment gateways. You’ll want to make sure to exclude the checkout page to keep your payment gateways from failing.
Conclusion: Try these steps to boost WooCommerce performance
There are many reasons why your website performance may be lagging — especially if you have a WooCommerce store with many products, images, and dynamic elements. Fortunately, many impactful performance issues can be resolved with a few simple fixes.
Here is a quick review of how you can speed up your WooCommerce site:
- Compress your images
- Implement caching
- Use a CDN for static resources
- Clean up database bloat
- Increase WordPress memory limit
- Use a fast theme
- Removed unused CSS and JS
Try some of these steps to see if you can boost your store’s performance. Customers and search engines will both value the improvement.