#1 Independent Seller of WooCommerce Plugins
Switch language

YITH WooCommerce Product Add-Ons & Extra Options

What the plugin does Add‌‌ ‌paid‌ ‌or‌ ‌free‌ advanced ‌options‌ ‌to‌ ‌your‌ ‌product ‌pages‌ ‌using‌ ‌field‌s like‌ ‌radio‌ ‌buttons,‌ ‌checkboxes,‌ drop-downs,‌ ‌custom‌ ‌text‌ ‌inputs‌, and‌ ‌more.‌
How you can benefit from it:
  • Offer additional services on your product pages (warranty, insurance, special transfer services, customizations, etc.) to increase the order value;
  • Promote products that are either optional or related to the one the users are viewing to encourage them to purchase more items with the same order;
  • Allow users to upload photos, images, or files to request a customized product;
  • Configure your options by using the comprehensive library of elements included in the plugin: text fields, select dropdowns, radio buttons, checkboxes, images, date pickers, upload fields, color swatches, etc.
  • Use images, icons, labels, and color swatches to show the available product variations;
  • Set dependency rules to show different options according to the user's selection (e.g., show an Upload field ONLY IF the user has selected the checkbox "Customize product");
1 year of updates and support
30-day money back guarantee
Buyer Protection If you are not satisfied with our products, you will receive a 100% refund for any reason. Read more about the refund policy >
This plugin is used by 22,370 customers, with a rating of 4.4/5 and a 98% customer satisfaction in support!
YITH WooCommerce Product Add-ons

The ultimate tool to add options and extra services (free or paid) to your products and offer them to your users

WooCommerce allows selling any type of product and lets users choose simple variations, like size and color.

Yet, this is not enough. If you sell your products online, you most likely need more advanced options. For example, if you sell rings or jewelry, you might need to let your customers add custom text to be engraved in a piece of jewelry or choose carats for a gemstone, the size, and the color for gold.

If you sell T-shirts, cups, and other custom items, you certainly need a field to let your customers upload files, like their photos, during the checkout process. Or if you run an e-commerce site for tech products, you might want to offer warranty and assistance services for an extra cost or allow users to select a large number of options like RAM, processor, screen size, weight, etc.

Some options might have a cost higher than others or require a dependency and show only after a specific selection has been made by the user. All these scenarios need a versatile and powerful tool to help you add an unlimited number of options, of any kind, to a product page.

With YITH WooCommerce Product Add-ons & Extra Options, you can create several blocks of options to insert into your products: after creating the block, you can add the options you need by choosing elements through an amazing library (input fields, text areas, select dropdowns, checkboxes, images, labels, radio buttons, upload fields, date pickers, etc.). For each option, you can set an additional cost, which will be added to the standard product price, and, in a few minutes, you’ll be ready to sell complex or customizable products and offer any kind of optional service to your customers.

Create unlimited blocks of options to show on specific products or product categories

Create a block of options for all products in a certain category, another block for a specific product, the third block for another different product, and so on. The plugin allows creating and configuring an unlimited number of blocks, each of them with an unlimited number of options. The key idea behind it is, as usual, flexibility.

Blocks of options
Block types

Populate every block by choosing one or more options among the ones available in the library

Pick the options you want to add to the block from the options library provided. To present your product options, you can use checkboxes, select dropdowns, file upload fields, input fields, color swatches, textual labels or labels with images, date pickers, and much more.

Promote products as additional options

Since version 2.0, you can select a product as an option: this way, on the product detail page, you can suggest one or more products or related services, side options, and push the user to add them all in bulk to the cart in just one click.

Add extra products
Options customization

Customize every option to show it the way you like it

Once the option has been added to the block, you can customize the way it appears on the product page: set which title and/or a description to show; add a tooltip and image to easily identify the option (you can also choose to whether this image will replace the default product image when it is selected by the user); you can also set the option as “required” and decide whether to show it as selected by default on the page.

Set the price (regular and on-sale one) for every option or set a percentage value that will add or detract from the final product price

For every single option you can choose whether it can be selected by the user for free, if it will add an extra cost to the base price (a fixed or percentage surcharge on the product price) or if, on the other hand, selecting it will apply a discount on the product price. Additionally, in the block options, you can choose whether to offer the first options chosen by the user for free (e.g. you sell a pizza and the first three ingredients selected by the user are included in the pizza price, but from the forth one on, every additional topping will come at an extra cost).

Options price
Options layout

Choose whether to show the options in a vertical line or in a grid

Choose whether to show the options in a vertical layout, so one below the other, or show them in a horizontal grid. In the latter case, you can set the number of columns into which the options will be divided.

Create dependencies rules (conditional logic) to show or hide the options based on the user’s selection

The dependency rules make the plugin even more powerful and show or hide specific options based on what the user selects. For example, you can hide the date and time option if the user doesn’t select home delivery or show the upload field only if the user selects the option to customize the product, etc.

Conditional logic
Single or multiple selection

Choose whether the user can only pick one of the options available or select multiple ones

For every block of options, you can choose whether the user can make multiple selections (e.g., select more colors from the color swatches) or if only one of the available options can be chosen.

Set the options as mandatory and define the minimum and maximum number of options that the user can select and add to the cart

You can set specific quantity rules for the number of options the user has to choose. This is both possible for a minimum number of selected options and the maximum number of options. For example, customizing a garden shed requires at least two options but no more than six before the product is added to the cart.

Option quantity rules
Visibility rules

Choose whether the options will be visible to all users, only to registered ones, or to specific user roles only

For every block of options, you can set some visibility rules and decide whether the options will be visible to all users (also guests) or if they will be available only for registered users or specific user roles only.

Choose where on the product page the options will be displayed

Choose where on the page the block with options will show up (before or after the “Add to cart” button), and customize the “Select options” button in WooCommerce loops (i.e., the product shortcodes, the Shop page, the category pages, and so on.)

Options position
Hide Add to cart button

Hide the “Add to cart” button until the user selects all options

Enhance the options by hiding the “Add to cart” button until the user has selected every required option. Only after the user has made a selection for all the available options, the button will show up, and the user is able to add the product to the cart.

Choose whether to show the total price, including options on the product page

Do you want to offer transparency about product prices and prevent unwanted higher prices in the cart for your users? You can, by simply enabling the option that allows showing the total product price inclusive of all the options selected by the user on the product page.

Show total price
File upload permissions

Configure the permissions for file upload fields (accepted file formats, maximum file size, etc.) and enable the option to get the uploaded files as order attachments

If you choose the Upload fields to let your user upload files to the product (like documents, images, graphics, etc.), you can take advantage of the built-in options to set permissions about which file formats are allowed and the maximum size. Also, for better and flawless management, enable the option to send the uploaded files as attachments of the Order confirmation emails and choose the folder where all the files will be automatically stored.

Choose whether to show the selected option in the Cart and in the order-related emails

Choose whether to show only the basic product information or also all the options selected by the user. Similarly, you can show or hide the selected options on all the order-related emails.

Show selected options in cart
Customize colors

Customize the style and colors of the options block

In the plugin you will find many options to customize the option blocks. You can use either the theme style (for checkboxes, radio buttons, select dropdowns etc) or the plugin style; you can edit colors (block background color, highlight color for the selected option etc), show tooltips and set their color and position, set whether to show the options in a toggle button (open or closed by default), and many more styling options.

Free Vs Premium

Options blocks creation
Free Premium
Create unlimited blocks of options
Add unlimited options inside each block
Show the block in all products / just specific products / specific product categories
Hide the options from specific products
Show the options to all users / only logged-in users / only specific user roles new
Show the options to only guest users new
Add HTML elements in the options block: Heading, Text, and Separator (simple border; double, dotted or dashed border; empty space) new
Add radio type options
Add input text options (with “limit input characters” support)
Add textarea options (with “limit input characters” support)
Add color swatches (with color selector and images support) new hot
Add color picker options new
Add number/quantity options
Add select type options
Add label or images type options
Add checkbox type options (square or rounded style)
Add calendar date picker type options (with advanced settings to set a default date, a start and end year, etc.)
Add time picker to calendar option (with advanced options to set a default time, enable or disable specific time slots, etc.) new hot
Add file uploader type options with drag and drop support new
Add “product” options to show linked products on the main product page new hot
Set specific conditions to show or hide a block of options (e.g. show the option B only if the user sets option A to “yes”) hot
Enable or disable each option new
Set the option as required or not
Set the option as selected by default or not
Options blocks display
Free Premium
Choose where to display the options on the product page (before or after the “Add to cart” button)
Enter an optional title for each block of options
Enter a label and a description for each option
Show an optional tooltip for each option
Upload an image to clarify what the option is about
Choose whether to replace the main product image when the option is selected
Choose the image position (above or under the label, on the left or right) new
Choose whether to show or not the options set in a toggle collapse section
Hide the option price
Hide the option label and description
Set how many options to show in each row new
Enable the grid layout to adjust the options in a grid based on the page width new hot
Options pricing
Free Premium
Set if the option is free (product price doesn’t change when the option is selected)
Set if the option has a fixed or % cost that will increase the product price
Set if the option discounts the product price
Set whether to multiply the product price by the length of the text inserted by the user (only for Text and Textarea type add-ons)
Set whether to multiply the product price by the quantity the user selects for a certain option (only for “number” type add-ons)
Set the first “X” selected options as FREE (e.g. the first 3 pizza toppings are free and included in the pizza price, but from the 4th topping the user will be charged an extra cost) hot
Replace or not the default product price with the updated price when the user selects some paid options
Show or not an options price total box on the product page
Options customization
Free Premium
Settings for the “upload file” option: text to show, enable the “upload” button or the textual link, set the allowed file formats and the maximum file size
Set the options block titles heading (h2, h3, h4, etc.) new
Set the options block background new
Set the options block padding new
Use the theme forms style or the custom plugin style new
Customize the colors of borders, texts, and accent color new
Set the checkbox style (square or rounded) new
Set the color swatches size and style (square or rounded) new
Set the image position for the “label/image” options new
Force label images to the same height new
Set the default label and description position for the options
Set the tooltip colors and position (top or bottom)
Set text and color for error notice in required options new
Choose whether to show the options in a toggle collapse section or not
Advanced settings
Free Premium
For each block of options, set whether the user can select only ONE of the options available or select MULTIPLE options
For each block of options choose if the user has to select a minimum, maximum or exact number of options to proceed with the purchase
Hide the Add to cart buttons until the required options are selected
Show or not the selected options in the cart
Show the image replacement in the cart hot
Set an extra label for each option to show on Cart and Checkout pages new
Set the ‘Upload folder’ directory in which files uploaded by the users will be automatically saved new
Option to attach uploaded files into the order emails new
Hide the selected options in the emails related to the order

Plugin integrations

All the products in our YITH catalog are developed on the same shared framework. This grants full compatibility among all our plugins and allows combining them together to get even more powerful results and more complete solutions.

We do our best to also include compatibility with the most popular WordPress and WooCommerce plugins available on the market.

You can use this plugin with*:

WooCommerce Product Bundles

Product Bundles allows you to group existing simple, variable, and subscription products and sell them together.
The addons will be added to the bundled product (not to the components), they will be shown before or after the add to cart button.

YITH Composite Products for WooCommerce

Using YITH Composite Products for WooCommerce you can create products made of several components, allowing users to be free to choose the components they are interested in straight from the product page.

The integration with YITH WooCommerce Product Add-Ons allows you to add new add-ons to all "composite" products you can offer users to purchase.

YITH WooCommerce Catalog Mode

With the use of YITH WooCommerce Catalog Mode, you can show or hide the price and/or “Add to cart” button for one or more products of your shop. If hidden, you can provide a form through which users can send possible requests.

The integration between these two plugins allows hiding price and Add to cart button also on products with add-ons.

YITH WooCommerce Deposits / Down Payments

YITH WooCommerce Deposits / Down Payments is a plugin designed to offer users the opportunity to leave a deposit for a specific order, which they will then finish paying at a later time.

The integration with YITH WooCommerce Deposits / Down Payments allows you to enable a deposit service for products with one or more add-ons.
A deposit will be placed for the final price, net of the price of user-selected add-ons.

YITH WooCommerce Membership

YITH WooCommerce Membership is a plugin that allows you to organize the content of your site into plans and make it accessible only to users who have paid for it.

Thanks to the integration between these two plugins, you will be able to create blocks of options and show them only to users belonging to specific membership plans through the dedicated options.

YITH WooCommerce Multi Vendor

YITH WooCommerce Multi Vendor allows you to turn your store into a multistore where vendors manage their own product and earn a commission on every sale.
The integration between the two plugins allows, in a multistore shop, vendors to create advanced options groups for their products.

Each vendor can create global, category or single product options groups.
All options groups created by vendors won’t show on products that don’t belong to them.

YITH WooCommerce One-Click Checkout

YITH WooCommerce One-Click Checkout allows users to skip the checkout process once the billing info has been added.

The integration between these two plugins allows using the one-click checkout feature also on products with advanced options.

YITH WooCommerce Product Bundles

YITH WooCommerce Product Bundles is an extension conceived to create bundles with the combination of some products of your shop. You can assign an ad-hoc price to the bundle or a price given by the sum of the single elements contained in the bundle itself.

Combining YITH WooCommerce Product Bundles and YITH WooCommerce Product Add-Ons allows you to add custom options to all "bundle" products.

YITH WooCommerce Quick View

YITH WooCommerce Quick View allows the users to get a quick view of the product for which they are interested. The product details will be shown in a popup, so they don't need to leave the current page.

Using it in combination with YITH WooCommerce Product Add-ons, your customers can select their options in the popup screen, without leaving the current page.

YITH Request a Quote for WooCommerce

Thanks to YITH Request a Quote for WooCommerce you can offer users the chance to ask for a quote for one or more products in your shop.
Once the request is received, you can process your offer and send it via email. Users can accept the offer and will be automatically redirected to the cart where they will find the exact agreed price.

Combining YITH Request a Quote for WooCommerce and YITH WooCommerce Product Add-Ons allows you to add to the quote request any possible add-on the product shows.
It will then be possible to receive complete quote requests that would include products you are offering additional options for.

YITH WooCommerce Role Based Prices

YITH WooCommerce Role Based Prices lets you change the price of the products in your store dynamically, increasing or decreasing it based on the role of a certain logged-in user.

Using this plugin in combination with YITH WooCommerce Product Add-ons, the product price will change according to the role in your shop, the add-on prices will remain the same.

YITH WooCommerce Subscription

YITH WooCommerce Subscription is a plugin designed to enable recurring payments for the services offered in your shop.

This plugin perfectly integrates with YITH WooCommerce Subscription and this will allow your users to purchase a subscription for several services, meaning, for instance, a "subscription" product with a custom set of selected add-ons.

* All the plugins listed in this section are not included in YITH WooCommerce Product Add-Ons & Extra Options. In order to take advantage of a specific integration, you need to purchase and activate the premium version of the related plugin.


Plugin panel

Examples of products with custom options

Reviews (97)

Customer reviews

Rated 4.43 out of 5 stars
97 reviews

Are you a customer? Submit your review

submit review
  1. 5 out of 5

    Pablo Galarza - verified owner

    PerfectoCompré este + One Click Checkout y son excelentes juntos. Por fin pude agregar todas las opciones que ofrecemos con nuestros productos y establecer el precio correcto, justo lo que necesitabamos.

  2. 5 out of 5

    Elise O'Sullivan - verified owner

    SplendidIts features are really advantageous to customize a standard product, it has worked great for me.

  3. 5 out of 5

    Hillary Wood - verified owner

    Great products and support!So many cool features! It got my page to another level since I had another similar plugin before but I'm thankful for changing to yith

  4. 2 out of 5

    Mary Ward - verified owner

    No Import featureWe have been using this plugin for almost 3 years now and it generates the profit for us.

    However, we had to pay a 3rd party company (pay them $1000) to develop another plugin for us, that will make this plugin usable in large stores, since assigning Product Add-Ons strictly against product categories is simply not good enough.

    We needed the flexibility to do it through Product Tags, if not, at least being able to import add-ons through CSV file against the SKU list.

    So, if your store has couple of hundreds of products (our has well over 10K) avoid this plugin as you will only be able to assign the Product Add-On using product categories, and if that does not work for you, good luck putting it to work.

    We have addressed this issue with Yith support numerous times, and they were always "working on a next big update" or "adding more important features".
    They simply do not care.

    The truth is, YIth plugins should be taken as what they are and never expect Yith to implement a feature you need or is logical.

    Best thing that happen to you, while using Yith's plugins, is hoping that it will still be compatible with your store settings after they launch a plugin update.

    Overall in majority of cases, Woocommerce plugins store is a fine alternative to Yith's when looking for useful plugins and it certainly is more affordable.

    • Alessandra Giuliani

      Hi Mary,
      thanks for your review!
      Every new feature request we receive from our users is taken into account by our development team, that implements them in our plugins according to the number of similar requests, when technically possible. Unfortunately, the feature you need hasn't been expressly requested by other users so far, but this doesn't mean we don't care. We just give priority to what our users request more. The import feature is still on the features list, yet, we are not currently able to determine if and when it will be added to the plugin. As suggested through your support ticket, for urgent and specific customization that our support policy doesn't allow providing, our customers can rely on our external partners, which are reliable agencies and have good experience with our plugins. 

  5. 5 out of 5

    Joe Dickinson - verified owner

    Just perfection!This plugin is beyond perfect! It helped me improving my business in a way I cannot explain so thank you!


Here you can find some frequently asked questions about this plugin. If you can't find a reply to your doubts, ask a question: we will reply in a very short time
  • All
  • Shortcode
  • Stock
  • General
  • SKU

Does it work with page builders?

Yes, as long as you add the WooCommerce product form, the options will always be visible.

Can I manage the stock of options?

Only for the "Product" options set (available since v. 2.0): you can let your users select existing products as custom options and the stock will be automatically updated.

Can you limit the number of characters a customer enters in the text field?

Yes, it is possible by setting the max field available in each add-on.

Is it possible to add the SKU to the add-on?

Yes, since version 2.1.0, when you show an existing product as add-on, you will also be able to show the SKU.

Can't find the answer?

Send us your question and we will reply very quick!

Send your question

Technical Info

  • Version: 4.5.0
  • Released: 2023-10-03
  • Minimum PHP version: 7.0
  • Requires: WordPress 6.1 and WooCommerce 8.0
  • Compatible up to: WordPress 6.3.x and WooCommerce 8.2.x
  • WPML compatible: YES
  • Translation ready: YES
  • Languages 100% guaranteed by YITH: English, Italian, Spanish
  • Languages provided by users: German (53%), French (60%), Dutch (57%), Turkish (60%)
  • Support for: YITH Proteo theme. All YITH plugins except for: YITH WooCommerce Dynamic Pricing and Discounts
  • Supported third party themes: Divi, Flatsome, Unero theme
  • Supported third party plugins: Elementor, Woo Layout Injector
  • GDPR Compliant: Not applicable
1 year of updates and support
30-day money back guarantee
Buyer Protection If you are not satisfied with our products, you will receive a 100% refund for any reason. Read more about the refund policy >

We take great care of you and your shop today, and every day after that.

Meet the team