When you sell with WooCommerce, odds are you sometimes need to add extra options, so customers can personalize their products – from the possibility to customize a pizza to a laptop configurator. If you want to provide those options, you’ll find that a product addon plugin is essential. That kind of plugin allows you to easily add additional form fields so your visitors can customize products to their liking.
These plugins heavily depend on a lot of WooCommerce functionality. They display the fields on product pages, adjust final product pricing, and influence the WooCommerce cart & checkout.
Needless to say, a lot can go wrong if you don’t choose the plugin carefully. Moreover, the wrong plugin can slow down your site unnecessarily.
Jump straight to the verdict or look at our complete testing results (Google Sheet).
What We’re Comparing
To help you decide, we have looked at 6 free plugins and listed an extensive comparison below. Here are the plugins we compared:
- Advanced Product Fields for WooCommerce created by us at Studio Wombat
- Extra Product Options (Product Addons) for WooCommerce by ThemeHigh
- WooCommerce Custom Product Addons (Free) by Acowebs
- Flexible Product Fields
- Personalized Product Option Manager referred to as PPOM
- WooCommerce Product Add-Ons by Yith
We’ve compared the aforementioned plugins based on these important criteria:
- How fast is the plugin’s code?
- How many database queries are performed?
- How many extra files are loaded on the frontend?
- How do the plugins compare in terms of features?
For complete transparency, here are some technical bits. All tests were performed with WordPress 5.2.2, PHP 5.6, and 2 active plugins: WooCommerce and Query Monitor.
Now let’s dive in!
To test how well each plugin performs, we measured the page rendering time. That’s the time it takes for a server to render the page before sending it back to the browser.
An example: on an install with only WooCommerce active, a product page takes 1 second to render. Once we activate a product add-on plugin, page rendering time increases to 1.2 seconds. Hence, we know that the total time for the add-on plugin to run its code is 200 milliseconds (= 1.2 seconds – 1 second).
We performed this test 30 times for each plugin and got the following averages:
|Plugin||Page rendering time (in seconds)||Average plugin execution time||Conclusion|
|No plugins (only WooCommerce)||0.8731||–||–|
|Advanced Product Fields||0.8840||0.0109||Website slows down with 0.011 seconds or 1.23%|
|Extra Product Options||0.8979||0.0248||Website slows down with 0.025 seconds or 2.76%|
|Custom Product Addons||0.9111||0.038||Website slows down with 0.038 seconds or 4.17%|
|Flexible Product Fields||0.9340||0.0609||Website slows down with 0.061 seconds or 6.52%|
|PPOM for WooCommerce||0.9606||0.0875||Website slows down with 0.088 seconds or 9.11%|
|YITH WooCommerce Product Add-ons||0.9655||0.0924||Website slows down with 0.092 seconds or 9.57%|
The winner here is clearly Advanced Product Fields for WooCommerce, as it only needs 0.011 seconds to display fields on a product page. It’s fair to say this plugin barely slows down your pages.
The plugin by Yith, on the other hand, slows your page down with almost 0.01 seconds. That’s more than you think; it means that if your website has 10 plugins that are equally slow, your page load time will increase with 1 second!
It’s no secret that database queries can slow down your website. As a rule of thumb, plugins should try to perform as little database queries as possible. That means they should optimize their code to perform them only when they are absolutely necessary.
Thanks to the awesome Query Monitor plugin, we can easily see how many queries a plugin performs. Here are our findings:
|Advanced Product Fields||2|
|Extra Product Options||1|
|Custom Product Addons||8|
|Flexible Product Fields||14|
|PPOM for WooCommerce||46|
|YITH WooCommerce Product Add-ons||13|
As you can see in this table, the same two plugins perform remarkably better than the other candidates.
While researching this, we actually stumbled upon a bug in Extra Product Options for WooCommerce. In certain cases, you’re able to add a product to the cart without filling out any options, even if they are required. This flaw is also the reason why they perform fewer queries than Advanced Product Fields for WooCommerce.
While the number of queries can indicate a potential issue with a plugin, it’s not always the quantity that matters. Five fast queries can still outperform 1 bad query. So take this with a grain of salt.
Strictly speaking, Extra Product Options for WooCommerce is the winner in this category. However, considering the bug we found (as outlined above), we feel Advanced Product Fields for WooCommerce is still better suited. One thing is for sure: these two plugins are clearly outperforming the others in terms of database queries.
Extra Files Loaded
The number of extra files a plugin loads on your website is a very important metric. The more files you load, the larger your site becomes (in terms of kilobytes). This, in turn, means your pages will load slower before they’re visible in the browser.
Google and other search engines will penalize you for slow performance, and their algorithm favors fast sites in the top search results. So it’s important to keep your plugin footprint as small as possible.
We consider everything below 15KB the best size. Everything between 15KB and 30KB is okay as long as you’re actually using whatever is being loaded. Many plugins tend to load a lot of files you don’t actually use. Everything above 50KB can be considered too much for a single plugin (depending on the plugin’s use case of course).
|Plugin||JS file(s)||CSS file(s)||Total size|
|Advanced Product Fields||5.8kb (1 file)||1.5kb (1 file)||7.3KB|
|Extra Product Options||1.5kb (1 file)||2kb (1 file)||3.5KB|
|Custom Product Addons||0kb||5.2kb (1 file)||5.2KB|
|Flexible Product Fields||3.2kb (1 file)||0.63kb (1 file)||3.82KB|
|PPOM for WooCommerce||49.9kb (4 files)||200kb (4 files)||249.9KB|
|YITH WooCommerce Product Add-ons||357kb (6 files)||45.6kb (4 files)||402.6KB|
The winner in this category is Extra Product Options. It’s closely followed by Advanced Product Fields, Custom Product Addons, and Flexible Product Fields. Their footprint is also really small.
Yith and PPOM are performing quite badly in this category and are loading more than 100KB. Considering you’re probably using multiple plugins to make your website fully functional, your overall page size can stack up quickly.
All the plugins we’re comparing also offer a premium version which greatly enhances their feature set, but in this article we’re focusing on their free features. Below is a summary of each plugin:
|Feature||Advanced Product Fields||Extra Product Options||Custom Product Addons||Flexible Product Fields||PPOM for WooCommerce||YITH WooCommerce|
|Has more than 8 field types to choose from||Yes||Yes||Yes||No||Yes||No|
|Can adjust price of the product||Yes (limited)||No||No||No||Yes||Yes|
|Conditional logic: show/hide fields based on other field values||Yes||No||No||No||Yes||No|
|Can adjust product weight||No||No||No||No||No||No|
|Set fields globally and per product||Yes||No||Yes||No||Yes||Yes|
|Total||4 “yes”||1 “yes”||2 “yes”||0 “yes”||4 “yes”||2″yes”|
Winners in this category are Advanced Product Fields for WooCommerce and PPOM for WooCommerce.They offer the most features for free.
Full Results & proof
We created a Google Sheet detailing the results with screenshots and additional information. You can view it here.
Advanced Product Fields for WooCommerce is the most feature-rich and the fastest plugin out of the 5 test subjects. It consistently comes out on top for all aspects we tested for this comparison post. Would you like to test it for yourself? Simply download it and give it a go!
Extra Product Options (Product Addons) for WooCommerce is a very good alternative if you don’t need too many features. It’s lightweight and fast. Just keep in mind the potential bug we talked about earlier in this article.
We’re surprised that the most popular plugins are the worst performers. PPOM for WooCommerce has 20,000+ downloads in the WordPress repository, and yet it lacks in quality and only slows down your site. Furthermore, their backend looks confusing and does not blend nicely into the WordPress admin design. This is not something you want to clutter your (or your clients’!) backend with.
We would definitely recommend staying away from PPOM and Yith’s plugin because they are slower and load a lot of (unnecessary) files on your site. Both plugins have many downloads in the repository because they have been around the longest. Looking at the reviews, people are starting to realize there are better alternatives out there!
We hope this comparison helps you find the plugin that suits you best!