Advanced Product Options Suite extension for Magento 2

Icon of the Mageworx Advanced Product Options extension

Advanced Product Options Suite extension for Magento 2

94 % of 100
    Includes lifetime access to the source code, 1-year of free updates & support.*
    *Onwards annual updates & support will be available 40% off the list price for your Magento edition. No recurring payments.

Main features

Product option templates to group Magento custom option
Color/image/text swatches for better product visualization
Custom option pricing to assign ANY possible price type
OR/AND dependencies to regulate custom options display
Inventory management to track and display options stock
Dynamic options for price per unit calculation
SKU policy to control how the final product SKU is formed
GraphQL support for easy integration with PWA storefronts
Full options import/export/migration to make it a breeze
Magento 2 REST API support to add/edit/remove product customizable options



Magento Compatibility

CE 2.3.7 - 2.4.x; EE 2.3.7 - 2.4.x

Hyva-ready PWA-ready GraphQL API REST API

Comes with

  • Lifetime access to the source code
  • 1 year of free updates and support
  • No subscriptions
money back

Key features

custom option template

Custom option templates

Display product options in Magento―mass-assign smart customizable templates with an unlimited number of options and variants to an unlimited number of products.
Learn more
advanced option pricing

Advanced option pricing

Develop different pricing scenarios for your product options―set fixed, percentage, special price, tier prices, price per character, absolute price, price per unit.
Learn more
magento 2 color, image, text swatches

Color, image, text swatches

Create a beautiful visual representation of any custom option for any product type. Replace/overlay images with the option ones. Customize the layout style of custom options.
Learn more
magento 2 dependent custom options

Dependent custom options

Turn product options display into a strategy! Use OR/AND dependencies to show product variants that are relevant to the shopper.
Learn more
magento 2 options inventory

Inventory management

Take full control over option inventory. Synchronize the options stock with the one of a linked product, automatically hide out-of-stock product options.
Learn more
magento 2 options import/export

GraphQL API & import/export

Benefit from extended GraphQL API requests―integrate product options and all the added features with PWA storefronts. Full options import, export, migration is available.
Learn more

Extensible. Customizable. Developer-friendly

Composer installation for easier extensions installation and management

No overwriting the core classes unless unachievable within a functionality

Unencrypted code for hassle-free editing if required by your clients

Extensions' code implementation following Magento's recommended best practices

All features

Option templates

Add a multitude of product variations to product pages in a couple of clicks. Create templates for a wide range of custom variants, including size, color, brand, storage, dimensions, or whatever quality your configurable products may have, and apply them to ANY amount of products.

The Advanced Product Options (APO) extension enables you to:

Create an unlimited number of templates
Assign templates to any selected item or group of products
Add an unlimited number of custom options for an unlimited number of products
Assign templates to products by SKUs or product IDs
Assign templates right when editing products or adding new ones
Keep template's options on the products even after template is unassigned
Set any templates' option as default
Manage, edit/delete, and duplicate custom option templates
Manage all product options through templates to save time
Migrate your custom option templates from Magento 1 stores

Watch this video tutorial for step-by-step templates configuration guidelines.

Option types & styling

Each product option in Magento is unique. It may require its own input option type, price, SKU, weight/cost values. With Advanced Product Options, you can create the following types of options:

Text swatch (buttons)
Text multiple-select swatch (buttons)
Image swatch
Image multiple-select swatch
Color swatch (single choice)
Color swatch (multiple selections)
Buttons (multiple selections)
Text field
Text area
File option
Date & time
Hidden options (hidden on a product page and selected automatically when an item is added to the cart)

The extension also allows you to Magento customize the custom options layout by adding the CSS classes to your product options.

Learn more about creating a gift card product in Magento 2.

Custom option pricing

Diversify your pricing strategy by setting pricing for every product variant. Deliver great offerings with flexible pricing schemes.

With Magento Product Options, you can:

Specify either positive or negative prices for product options
Set a fixed or percentage price for any custom option
Configure the option's absolute price to replace the original one
Define an option's price as “one-time” (the custom price will be added only once despite the quantity of products added to the cart)
Add special prices for custom options
Specify special prices for customer groups
Specify special prices availability period
Add a marketing message for the special prices
Add a fixed/percent tier price for each option
Specify a tier price for customer groups
Specify tier prices availability period
Set a price per character for text custom options
Set a price per 1 unit of measurement to calculate the final price if customers enter the parameters like width/length/height

Product pricing

The extension allows you to display a product price as price per one item or a final product price.

With Advanced Product Options, you can:

Display a product price as a price per 1 item, including the price of custom options and tier prices
Display a final product price, including item quantity, chosen variants
Disable any product price update if product quantity is changed on the front-end

Dynamic options

Magento Custom Products allows you to calculate the product price based on the custom values entered by the customers on the front-end. Compatible with all APO features, you can:

Calculate the final price based on the custom values entered by your customers on the front-end
Set the price per 1 unit of measurement
Create custom options to calculate line, square, volume values
Set minimum and maximum values for every custom field
Set the allowed step for every custom field
Display dynamic options on the front-end

Option values

With the extension, it's possible to equip each item variant with unique values: input types, price, SKU, weight, cost, and dozens more.

Define an input type for custom options (checkbox, drop-down, radio-buttons, multiple products select, and dozens more)
Add a unique option's title and description
Add an option's SKU
Set an option's price (fixed/percentage)
Configure the option's absolute price to replace the original one
Define an option's price as “one-time”
Set custom weight/cost values for any product variation
Specify the absolute weight/cost
Set variants as required
Limit the number of selected values for custom options by customers (set a minimum and maximum number of values your customers can choose per a certain option)

Option cost/weight

Use Magento Custom Options to get more accurate shipping costs (right in the shopping cart), and calculate the net profit each product variant brings. Set custom weight, and cost values for any chosen product option.

After you Magento get all custom options for product, you'll be able to:

Set custom weight or cost values for any product variation
Specify absolute weight or cost (it will replace the products' original weight/cost values with the ones of a selected product option)
Add custom weight values to the shipping costs
Specify the weight type as fixed or percentage to calculate weight of an option as the percent from the product's weight

Option images

With APO, you can add an unlimited number of images for each option value. The extension enables you to:

Add an unlimited number of images
Replace the main product image with the one of a Magento 2 custom option
Enable image overlay functionality to put option images above the product image
Create an option's gallery by uploading multiple images for each option value
Display option images below an option value
Choose the option gallery display mode: disable, display once selected, or always disable below the option value
Define which image will replace the main image of your offering
Define which image will be shown in the tooltip along with the value description
Hide specific images from the option gallery

Image and color swatches

With the Advanced Product Options extension, you can create beautiful visual representations of any item variant. The extension enables you to:

Add an unlimited number of image and color variants of the swatch type
Add text custom options of the swatch type, i.e., the “button” style
Replace the standard product image with the one of a custom option
Add an option's gallery by uploading multiple products images for a single option
Display any option image in the preview tooltip
Optimize Magento custom product images for SEO

Watch this video tutorial for step-by-step images configuration guidelines


Create conditional product+option combinations by setting OR/AND product options dependencies, i.e., options depending on conditional logic.

OR dependency

Shoppers can select the next product options only after they have picked up the main one.

Example: if you are selling cell phones, you can display a custom list of “Storage” choices when the gold color is selected.
AND dependency

Dependent options are shown only when two or more product options get selected.

Example: you can unlock “Storage” and “Case” choices providing a customer initially selects the red color.

Watch this video tutorial for step-by-step dependencies configuration guidelines

Option description

Add descriptions for your variants to ensure a better customer shopping experience. The Advanced Product Options extension enables you to:

Add a description for each Magento 2 product option
Add a description for each option value
Translate descriptions to different languages or specify different descriptions for each language (store view)
Display option description as plain text or in a tooltip

Option link

The Option Link functionality allows linking simple, virtual, and downloadable products to the options for any chosen main product.

By linking products this way, you can display and synchronize such important option characteristics as price, cost, quantity, weight, etc. The extension enables you to:

Link any option value to an existing product by SKU
Display product options in Magento and synchronize a linked product's price, title, stock weight, and cost for an option
Synchronize stock between an option and a linked product to ensure accurate inventory management
Apply the SKU policy for the linked product options

SKU policy

APO enables you to manage the final product SKU and how the product with variants gets added to the cart or order. After you get Product Options, you'll be able to apply the SKU policy either in the cart and/or in the order only. The SKU policy can be chosen on a template or product level.

The following SKU policies are offered:

Standard. Append an option SKU to a product SKU
Replacement. Replace the main product's SKU with the one of a chosen Magento 2 custom option
Independent. Keep the main product (including SKU) while adding the chosen item variants as separate order items
Grouped. Transform the custom options into separate items in the order and hide the main product
Disabled. Ignore an SKU option and don't add it to the order. Only the main product SKU will be provided

Watch this video tutorial for step-by-step SKU configuration guidelines

Option inventory

With Advanced Product Options Suite, you can keep track of your customizable options inventory and optimize your store inventory tracking. The Magento extension enables you to:

Keep an accurate track of every Magento 2 product option
Automatically display the quantity of every option on the front-end
Show the total quantity of custom options
Automatically hide out-of-stock product options or disable them, and the customizable out-of-stock message
Track the stock of all product options from a single user-friendly grid with the ability to update option inventories in bulk
Add quantity field for any option on the front-end (your customers will be able to specify the desired quantity for each option if required)

Watch this video tutorial for step-by-step inventory configuration guidelines

Product inventory

The APO extension allows you to update and synchronize an option's stock with the product's inventory. After you get Product Options, you'll be able to:

Link an option's stock to a product's inventory to synchronize them automatically
Update a product's inventory by a certain amount if an option's value is chosen (useful if you sell packs and need to decrease the main product stock by a specific value if an option is chosen)

Multi-language support

The Magento Customize Product extension allows you to translate product options to different languages or even disable specific values for the necessary store views/languages. With Magento product builder for custom options, you can:

Translate any option and option value to different languages
Hide any option for specific store views if necessary

Option visibility

The APO lets you assign product options to particular customer groups and/or store views:

Assign any Magento 2 custom option to particular customer groups
Assign any Magento 2 custom option to particular store views

Options by URLs

The Advanced Product Options extension allows you and your customers to save the product URL with all selected options, i.e., get a shareable link with all final product configurations.

It gives you an opportunity to use the final setup of your offering in your marketing activities, such as Adwords campaigns, emails, social media, etc.

Enable/disable this feature globally or for specific store views
Change the link title to get a shareable URL on the front-end
Add a description shown in the tooltip for your customers
Change the success message
Supports URLs from your Magento 1 store to keep them working

GraphQL API support

The GraphQL API allows you to integrate all the added product option features with the PWA storefronts.

Advanced Product Options extends the Magento 2 native products GraphQL API requests and adds all our features to these responses. We've also developed separate requests for getting the dependent and default options. It makes dependency calculation unnecessary on your end as the Magento extension returns options and values that are hidden or selected depending on the customer choice.

Option import and export

The extension allows you to manage, add, and update product options using a CSV file.

It also enables you to migrate option templates from one Magento 2 store to another, i.e., copy option templates from your development or staging stores to live Magento 2 stores. With Magento 2 Custom Options, you can:

Export/import option templates with the relations to the assigned products
Export/import products with options in the readable format for better options management
Export/import the “products + customized options” with all the features, including the relations to the option templates

Migration tool

Migrate product options from your Magento 1 to Magento 2 store.

Full APO migration is available. Using a CSV file, you can import:

Option templates
Product options
Product options + option templates with all relations

All product options setup can be migrated to Magento 2 store in a few clicks.

Watch this video tutorial for step-by-step templates migration guidelines

REST API support

Manage your product customizable options via REST API. With the extension you will be able to:

Get customizable options data
Add/edit/update custom options
Remove custom options

Hyvä Themes compatibility

The extension adds compatibility with Hyvä Themes. The following features are currently supported:

Option dependency
Option swatches
Option link
Option SKU policy
Image replacement and overlay
Basic option attributes

Customer success story

See the story of Skirtings R Us, a UK-based home renovation brand, and how APO allowed them to reduce the company’s catalog of 10,000+ products to 207 customizable ones.
Read the story

Product changelog


June 11, 2024
Bug fix
  • Fixes price calculation issue in case of using tier prices on child products of a configurable product
  • Fixes the issue with incorrect size of swatch images and images in tooltips


May 22, 2024
Bug fix
  • Fixes the issue with missing absolute price and SKU policy values after extension update


May 21, 2024
What's new
  • Adds support for div classes on Hyva theme
Bug fix
  • Fixes price calculation issues in case if any options are not selected


Product questions

What is the difference between Magento 2 native product options and Mageworx Advanced Product Options?
If you still wonder what value the extension can add to your e-store, explore this head-to-head comparison to see the core platform’s limitations and how you can overcome them easily.

Read full article >>>

Are there any recommendations for developers to customize APO?

We’ve created a rich knowledgebase for Magento 2 developers to ease up the process of Advanced Product Options customization.

You can benefit from articles about adding a custom field to product option values and templates, removing the + sign from product option titles, etc.

Learn more >>>

Can I add product options to multiple products in bulk?

Yes, with the extension, you can create options templates and assign them to any number of products at once. If you update options within a template, the changes will be automatically copied to all assigned products.

How can I get the most out of product option dependencies?

Dependencies are often referred to as conditional logic and allow building a relationship between child and parent options and display variants that are relevant to the user.

Dependencies bring such benefits as upselling, cross-selling, increased order value, item promotion, and more.

Read full article >>>

Can I display the quantity field for specific options on the front-end?

Yes, the APO can enable the Qty field for the product options. Your customers will be able to add different quantities of each chosen option then. The final price will be calculated using these quantities.

Can I change a product image by certain options?

Yes, the Magento 2 APO extension allows you to create options and replace the main product image if your customers choose these options. You can also easily define what exact image should replace the main product picture.

How to calculate Magento 2 product price based on custom dimensions?

Suppose you are selling goods that require specifying custom values in Magento 2―fabric, washable floor covering, chipboard, etc.―then you’ll need extra functionality to implement it, and allow final price display on the front-end.

Read full article >>>

Can I hide or disable out of stock options?

Yes, sure. The out of stock options can be either hidden or disabled on the front-end with appropriate an "out of stock" message configured in the back-end.

Can I select options, which will be pre-selected for the customers?

Yes, you can choose option values to be selected by default on the front-end for your customers.

How to use option images as a sales-booster in Magento 2?

The buyer has high expectations of the product look when it comes to shopping online. Color, texture, and pattern should be well-visualized and correctly represent an item. Various types of swatches help display product variants most beautifully.

Read full article >>>

How do I get configurable product options in Magento 2?

While Magento offers the basic functionality for product options, you will need to go an extra mile to make options and values applicable to a particular configurable product programmatically or opt for our Advanced Product Options.

I sell packs of 6, 9, and 12 items. Can I deduct 6, 9, or 12 from the main product stock if customers purchase different packs?

If you set up the number of items in the pack as an option, you can set the quantity multiplier for each value to set the number, which will be deducted from the main product stock for each option value. E.g., if your customers choose the pack of 6 items, 6 items will be deducted from the stock. If your customers choose the pack of 9 items, 9 items will be deducted from the stock, etc.

What are the different product types in Magento 2?

By default, Magento offers six product types, i.e., simple, grouped, configurable, virtual, bundle, and downloadable.

Read full article >>>

How to set tier and special prices for Magento 2 custom options

To generate more sales, it’s critical to offer various pricing tiers and options. Why not create pricing tiers for your product variants?

Read full article >>>

Can I limit the number of chosen values per option?

Yes, APO allows you to set minimum and maximum numbers your customers can choose for the options on the front-end. These numbers can be configured for each option separately. You can add the corresponding notifications to inform your customers about the limits.

Can I edit the SKU of Magento 2 product options?

SKU customization allows you to update and manage inventory conveniently. Out-of-the-box Magento creates long-tail SKUs, which can negatively impact inventory tracking and more. To bypass such limitations…

Read full article >>>

General questions

How can I pay for Mageworx products?

The two most common payment methods are currently accepted―credit cards (all types) and PayPal. All the payment transactions are carried out in full compliance with the security and confidentiality requirements.

Will I get a formal invoice with all details including VAT number?

Yes, after the purchase you will receive the complete invoice with all necessary details, including our VAT number etc.

How to install our Magento 2 extensions?

We offer four independent ways of Magento 2 extension installation:

What Magento editions do Mageworx extensions support?

Mageworx extensions support Magento 2 Open Source (former Community), Commerce (former Enterprise) editions including Magento 2 Commerce Cloud platform.

Mageworx Repository: how to use it?

Our own repository has been primarily intended to facilitate and speed up the process of Mageworx extensions installation and update.

In order to work with the repository, you’ll need to have the Composer on the server first. This is the package manager of the PHP software that allows you to update & install scripts on your site.

Click here for further installation instructions >>>

Can I use one Mageworx license on multiple websites and staging/test hosts?

According to the Mageworx License Agreement, you can use one copy of Mageworx software on one Magento production installation. Thus, separate Magento installations require purchasing separate licenses.

Please mind that the extensions are not domain related, i.e., if you run each website on one Magento installation, then one license can be used. However, if you've got several websites on different Magento installations, then you would need to purchase separate licenses for each of them.

Full Mageworx License Agreement >>>

Before going live, can I test a Mageworx extension on a staging site?

Yes, you can install and set up any Mageworx extension on a test environment before making changes on your production site.

Are Mageworx extensions compatible with third-party themes?

By default, all Mageworx Magento 2 extensions are tested on three most popular themes: Luma, Ultimo, and Porto. However, some of our extensions are compatible with more 3rd party themes.

You can get in touch with our support team at [email protected] to confirm compatibility with the theme that you are currently using.

Are Mageworx extensions mobile-friendly?

In the world where 45% of purchases are completed via mobile (according to Retail Dive), we find it crucial to test and optimize all Mageworx extensions for mobile friendliness.

For how long can I get extension updates?

Extension updates are available as long as your support & updates package is active.

Purchases made before February 1, 2022, reserve the right to access our Magento extensions updates free of charge for a lifetime.

How can I get tech support?

Currently, the Mageworx Magento support team can be reached via:

How can I migrate from Magento 1 to Magento 2?

Database migration, migrating custom-built functionality and design, as well as migrating advanced SEO settings―these and other options are available within our one-stop migration service.

To get a quote, you’ll need to contact our Client Relations Manager.

Request an estimate >>>

How can I get a refund?

We offer a 60-day money-back guarantee for Mageworx extensions that have been purchased via our site. Customer satisfaction and creating true value are our top priority!

Please note that this is except for those Magento 1 extensions that are intended to be upgraded to their Magento 2 versions within 30 days since the moment of M1 version purchase. In such a case, a refund will be applied solely to the Magento 2 extension version.

Please note that extensions purchased at Magento Marketplace are covered by the 25-day Marketplace Refund Policy.

Full Refund Policy >>>

Does Mageworx have a discount program?

Reward points, bulk & upgrade discounts―at Mageworx, we do our best to show appreciation to our new and existing customers. Joining the program is fast and easy. To start saving with us, you need to create an account.

Loyalty Program details >>>

How can I become an affiliate?

By helping Mageworx promote our extensions, you can earn up to 50% on every order. To join the affiliate program, you need to create an account on our website.
Go to "My Profile ― Affiliates", then complete and verify your affiliate profile.

Affiliate Program details >>>

Feel free to drop us a line on the Support page if you have questions.