This article provides best practices for product options in Magento. Our recommendation is to have not more than 100 options per product, as performance can be affected.
A large number of product options leads to an increase in data retrieved for each product on all read and write operations resulting in:
- Increase in SQL queries traffic and heavier
JOIN
operations affecting database throughput - Increase of Magento indexes size and full-text search index
The increases listed above can cause these potential site impacts:
- Response time will be increased for most storefront scenarios related to products containing a large number of options in attributes.
- Product management operations in Admin will significantly slow down and can lead to timeouts, especially on scenarios related to attributes list and trees retrieval (including promo rules management).
- Product mass actions functionality can be blocked.
Affected products and versions
- Magento Commerce, all supported versions
- Magento Commerce Cloud, all supported versions
Best practices
Reduce the number of product options by:
- Leveraging different variation mechanisms: complex products, custom options as a source of product variations.
- Building specific product templates with targeting attributes and options, avoiding generalized product templates and option containers.
- Managing products info through external Product Management System (PMS).
Related reading
Refer to:
- Magento User Guide Create products > Configurable Product
- Magento User Guide Product Attributes > Best Practices
- Best practice for attribute SET in Magento
- Best practice Magento product attributes
- DevDocs' Inventory mass actions