Magento Product Customizer for a Jewelry Store With 60K+ SKUs
67% less
media volume
2× fewer
product option templates
Effortless
catalog scaling
Industry
Whidegroup provides ongoing technical support for a jewelry manufacturer operating a Magento store with more than 60,000 SKUs and worldwide delivery. This case study details the custom development work our team performed to improve the product page speed and user experience.
Here, we focus on implementing a product configurator and dynamic pricing logic.
As a jewelry manufacturer, the client can create countless product variations based on basic models to meet diverse customer tastes. This means that the same jewelry design may be produced in different metals, set with various stones, or engraved.
One model alone can have over 150 unique variations, each with its own appearance. Additionally, options such as metal purity and stone quality don’t change the visual image of the product but significantly affect its price. Given this number of options, the store’s catalog includes more than 60,000 SKUs.
Initially, the product page used only standard Magento functionality, limiting how the store displayed these endless customization options.
Therefore, the product page layout required modification, which introduced new challenges for the client:
Customers needed to compare stones, metals, engravings, and quality options on one product page. When users switch these options, the product images, title, description and price must be also updated accurately.
Each product requires at least three photos, often five to ten, to showcase every combination. For 60K products, the catalog includes around 300,000 unique images that cannot be heavily compressed because they must preserve the jewelry’s intricate beauty. At the same time, such a large media library affects both back-end and front-end performance:
To solve these challenges, the client needed a solution that would:
Instead of uploading unique photo sets for every jewelry variant, we created a database of individual product parts.
To generate product customization images, the system now combines templates of shanks, settings, and gemstones for the ring builder — or chains, clasps, pendants, and charms for the bracelet & necklace configurator.
The same approach applies to earrings, brooches, and other jewelry product types. This method enables unlimited product variations from a compact set of templates.
To optimize development time and costs, we implemented the required functionality based on the Mageworx extension. It provides Magento 2 custom product options for dynamic configurable products.
In its simplest configuration, the module gives the product page the following appearance:
We deeply customized the Mageworx extension to align with the client's complex manufacturing logic.
Configuration setup. We defined all necessary selection options and their dependencies. Different jewelry models required distinct configuration sets, which we received and imported via CSV files. These files served as the authoritative source for setting up the custom option bundles for each item.
Dynamic content engine. We implemented dynamic rules to change product image for configurable products, as well as the product title, description, and authenticity certificate. The system updates these elements automatically on product, cart, wishlist, checkout pages, and even in confirmation emails.
Accurate dynamic pricing. Across all front-end and transactional pages, price updates follow the same logic as other dynamic content changes. But first, we had to ensure the correct final price was calculated and displayed with every option change. To achieve this, we integrated the client’s specific pricing formulas and values, and developed the necessary dependencies.
Whidegroup developed new logic for the custom jewelry builder and dynamic content on product pages within the Magento jewelry store. These customizations improved both the customer experience and the efficiency of daily store management.
67% less media volume.
2× fewer product option templates.
Easier catalog scaling.
Lower server load.
Faster and more intuitive product configuration.