Building a blazing fast WooCommerce store used to be a full-time job. Now, basic WooCommerce performance optimization is simply a matter of knowing what technologies and plugins to use to keep your store speedy and your customers engaged. Here’s an intro to five performance topics and related resources for successfully optimizing your online store.
Shouldn’t I start with caching?
When looking at WooCommerce performance optimization, it’s easy to gravitate towards caching. While caching is a necessary technique for speeding up a WooCommerce website, it’s important that what you’re caching is also optimized.
Protip: Optimize your online store before enabling caching to make troubleshooting easier!
How quickly a page loads can mean the difference between a sale and a bounce. It’s important to make sure that the visible area of the page loads as quickly as possible. That means that graphical flourishes, fonts, and tracking scripts should either be some of the last things to load or should load asynchronously.
Even if you defer the loading of certain parts of the website, it’s still critical that you pay attention to how a page loads. Are external resources being loaded? Are those resources fonts or something more mission critical like CSS? Make sure critical resources are loaded quickly and/or asynchronously.
Optimizing database queries and table types is a great way to see big performance gains with minimal effort.
Create a new Index
Indexes help the MySQL database server find information quicker. Think of it as the index at the back of an old encyclopedia, or a table of contents in a book. While too many indexes can actually slow down the database, some strategically created indexes can have dramatic performance benefits.
Consider applying this index to your WordPress website to see a lift in performance.
MyISAM vs InnoDB
Usually referred to as storage engines, MyISAM and InnoDB are two different table types available within MySQL. For WordPress, tables should be in InnoDB format to get the best performance from your database. Of course, before making any changes, remember to back up your database.
Need to convert your database tables to InnoDB? This plugin should help.
While it might be hard to believe, large images can dramatically decrease the performance of your website or store. It might be tempting to think that lazy loading images can fix the problem, but remember that every image within the currently viewable area of a website must load for your user to have a good experience. In-fact, image size makes an even bigger difference when a user is visiting your website from their mobile device because network conditions and speeds are different in every place on earth. Luckily there are great plugins that can help optimize your images!
WordPress used to be just a blogging platform. As WordPress has evolved into a capable platform for building stores, learning sites, etc, so has the need for caching. You can learn about this important aspect of WooCommerce performance optimization by checking out the caching in WooCommerce article on the Hostdedi blog.
If you’ve ever been in a busy supermarket wishing they’d open up another checkout lane, you already understand the idea behind multi-threading. Because a PHP process works on commands in a linear way, a growing site will eventually grind to a halt as a single PHP process becomes overwhelmed. If you add more processes, the website is capable of responding to more requests concurrently, and the system starts to move again. WordPress hosts like Hostdedi use PHP worker processes to enable multi-threading for fast concurrent requests. For a more in-depth look at worker processes and how they work, check out this article. If you’re feeling extra cool, you can even try your hand at implementing workers using the official PHP documentation.
Remember to test your optimizations
As a final thought, remember to test the speed of your website before and after optimizations. While there are many resources for testing page speed, GTMetrix is a great place to start your journey. And remember, if you need help along the way, get in touch. We are here to help!