• Resolved shieldfactory

    (@shieldfactory)


    We are currently using the following theme on our WP website with WooCommerce.

    https://themeforest.net/item/the-retailer-responsive-wordpress-theme/4287447

    Having never before had any variable products on our website, we recently added about 35-40 of them to a newly created category (direct link can be seen under “Link to the page you need help with”).

    About half of these variable products consist of the same clothing item which comes in 25 color variations and six sizes which equates to 150 color variations as well as the same amount of different color images uploaded to each item. The other half is another clothing item, consisting of 7 color variations and six sizes which equates to a total of 42 variations – all under the same category.

    As we used variable products for the first time on our site, we noticed pretty long load times for said category and the pages under the very same.

    After a bit of research and communication with our ISP, we figured, that we needed a caching plugin. We first installed and tried out “W3 Total Cache”. Although the page load was getting way better and we were pretty satisfied with the result, we then ran into a new issue. We use the “IQ Block Country” plugin which conflicts with the W3 Total Cache plugin and other, similar plugins as explained here https://webence.nl/questions/iq-block-country-and-caching-plugins/ and thus, had to find an alternative caching plugin. We hence ended up using “WP Super Cache”.

    This particular caching plugin now works and doesn’t conflict with the “IQ Block Country” plugin.

    However, after trying to benchmark the new load times repeatedly throughout the last 6-7 days, the outcomes often vary widely.

    The ISP’s technician mentioned the following – before – we installed the caching plugin:

    I have checked their network traffic on https://www.trykpaatshirt.dk/vare-kategori/predesigned-toej/ and it’s quite big. It is making 106 requests which is a lot.

    Now, although the new caching plugin does work and the load of the product pages is pretty much instant, it does so sometimes better, sometimes worse, but – always instantly – after having loaded each of the pages once fully. However, when in particular the second page out of the three pages under the category is loaded (16 variable products with 150 variations), the load time can usually be anything from instant to 10-12 seconds (and very rarely more) while the two other pages are loaded in timeframes, ranging from instant to 4-5 seconds (first page is containing 16 product items with 42 variations while the last page contains 4 product items with 150 variations).

    Now the different load times seem to also be varying due to the differences in internet speed and the different devices’/computers’ hardware performances, but the issue here is, that the load time is still unacceptably high for especially the second page in that category unless said page has already been loaded once before etc.

    We did a benchmarking test with Google PageSpeed Insights here https://pagespeed.web.dev/analysis/https-www-trykpaatshirt-dk/ko8n92sapo?form_factor=desktop but even this benchmarking tool doesn’t show the actual and true picture since the results for desktop computers indicated looks pretty great, all while the results for mobile devices looks average – at best – which doesn’t hold true as we have benchmarked both repeatedly with various outcomes.

    Generally speaking, the faster the internet connection, the better and faster the load time – with very few exceptions.

    We found other posts via Google of people that had similar issues throughout the past many years with WooCommerce performing poorly, when having to load many variable products.

    The problem is, we don’t only need those approximately 35-40 variable products in that category, but are intending and need to add many, many more.

    So what gives? Why is it such an issue and challenge for WooCommerce to handle these variable products with many variations? And how can we get this show on the road asap?

    Looking forward to any reply and advice.

    Thanks.

    PS. Since we use geoblocking, access to our page is restricted. If anyone needs to see the page from their current physical location to take a look at the problem, drop us a short comment and let us know which country to unblock so the necessary access can be given.

    • This topic was modified 7 months, 2 weeks ago by shieldfactory.

    The page I need help with: [log in to see the link]

Viewing 3 replies - 1 through 3 (of 3 total)
  • Plugin Support Shameem R. a11n

    (@shameemreza)

    Hi @shieldfactory,

    WooCommerce can handle variable products, but when there are many variations, it can affect the site’s performance, especially if images are attached to each variation.

    Variable products can add a bit of complexity and potentially slow down your site, especially when there are many variations, as in your case. This is because each variation is a separate product with its own SKU, price, and inventory count, which can add to the load time.

    A couple of things you could consider:

    1. Optimize Images: High-resolution images can significantly slow down your page load times. Consider compressing your images or using a plugin that does this automatically.
    2. Pagination: Limit the number of products displayed on a single page. This can reduce the initial load time of a page.
    3. Database Optimization: Regularly cleaning up your database can help improve your site’s performance. This includes removing old revisions, spam comments, and unused tags.
    4. Use a Content Delivery Network (CDN): A CDN can help to deliver your content, including images, more quickly to users based on their geographic location.
    5. Upgrade Hosting Plan: If your current hosting plan doesn’t provide enough resources (CPU, RAM), an upgrade could help improve site performance.

    Additionally, the benchmarking results might not always reflect the real-world user experience, especially since they don’t account for the speed of the user’s internet connection or the performance of their device.

    I hope this helps! Please let us know how it goes or if you need further assistance.

    Thread Starter shieldfactory

    (@shieldfactory)

    Hi @shameemreza,

    and thank you very much for the quick reply.

    First things first. Each of the mentioned products does in fact have an SKU, price – but no inventory count – although each does have the earlier mentioned variations in swatches and sizes. This adds to the multiplication of separate products, which you also noted in your last reply.

    In terms of your recommendations…

    1. Optimizing Images – We already have installed and are running plugins for image optimization for quite some time now. The resulting images balance quality vs. performance pretty well as far as we can tell and thus, we won’t be able to further maximize performance in that direction.
    2. Pagination – This actually sounds quite interesting and could be a feasible solution to lowering the extreme load times – if – we understood your suggestion correctly. So does your idea imply that we lower the display of products per page load from for instance the present 4 x 4 rows and columns, totalling 16 products per page load, to a lower product count of for instance 4 x 2, bringing the total of products per page load down to 8 items, so the webserver needs to serve less transactions to the client and hence, load times are increased that way…?
    3. Database Optimization – Although, we do know about this option, we never have tried it before. What would the consequences be if we’d optimize the database if any? For instance, is there a risk of customers losing their carts while shopping on our site in that exact moment etc.? We don’t allow comments on our site and keep a tab on tags ourselves. By “old revisions” are you talking about the website or database?
    4. Use a Content Delivery Network – We seem to be using a CDN at the present by means of a plugin. However, we don’t really need a CDN as we geoblock pretty much any country that is irrelevant to us and only allow a handful of countries, that are in our sphere of interest for sales. So also here, we won’t be able to improve a lot on load times.
    5. Upgrade hosting plan – This could be an option although our hosting plan already is one of the hightest possible tiers, that our ISP provides to its customers. However, we’ll be checking up on this down the road if things don’t get better using your suggestion under point #2.

    In retrospect, what you are saying in your answer sounds as if WooCommerce doesn’t really handle a lot of variable products with many variations too well unless you find workarounds, such as your suggestions.

    Is that correctly understood?

    Another question…, would the paid version of WPRocket be worth the money and effort or would it create other or more issues such as conflicting with the “IQ Block Country” plugin etc.?

    Plugin Support ckadenge (woo-hc)

    (@ckadenge)

    Hello @shieldfactory,

    Thanks again for getting back to us.

    so the webserver needs to serve less transactions to the client and hence, load times are increased that way…?

    You’ve understood it correctly. Pagination reduces the number of products displayed per page, thus lowering server load and improving load times.

    By “old revisions” are you talking about the website or database?

    Old revisions refer to past versions of posts or pages which are automatically saved by WordPress. You can try a third-party database cleaner like Advanced Database Cleaner. Please be sure to create a full site backup before using the plugin. (Also note that we do not provide support for third-party plugins)

    we’ll be checking up on this down the road if things don’t get better using your suggestion under point #2.

    Upgrading your hosting plan can indeed provide better performance, but as you’ve mentioned to be using the highest possible tier of your hosting plan, I wouldn’t be upgrading the plan any further but focusing on optimizing the database and products.

    Is that correctly understood?

    WooCommerce does handle variable products well, but like any platform, there can be performance considerations when dealing with a large number of variations. Our suggestions are not workarounds, but best practices for optimal performance.

    would the paid version of WPRocket be worth the money and effort or would it create other or more issues such as conflicting with the?

    While we do not offer support for third-party plugins like WPRocket, it can indeed provide additional performance enhancements. However, whether it’s worth the investment or if it would conflict with other plugins largely depends on your specific setup. We’d recommend testing it in a staging environment first.

    I hope this clarifies your concerns. Feel free to reach out if you have any more questions.

    All the best.

Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘Woocommerce variable products got excessive load times’ is closed to new replies.