Product Attributes and Variants in Odoo#
A T-shirt comes in 3 sizes and 5 colors - that's 15 combinations. Creating 15 separate product records wastes time and fragments analytics. Odoo product attributes generate all variants from a single product template, sharing information that's common and differentiating only what varies.
Setting Up Attributes#
Inventory → Configuration → Attributes → New:
- Size: XS, S, M, L, XL, XXL
- Color: Red, Blue, Black, White, Green
- Material: Cotton, Polyester, Blend
- Power: 100W, 200W, 300W
Each attribute value can have:
- Extra Price: color "Custom Print" adds $5 to the base price
- Excluded Values: some combinations are not available (XL only in Black and White)
Applying Attributes to a Product#
Inventory → Products → [Product Template] → Attributes & Variants tab → Add a Line:
- Attribute: Color → Values: Red, Blue, Black
- Attribute: Size → Values: S, M, L
Odoo generates: 3 colors × 3 sizes = 9 variants automatically.
Click Variants button to see all generated combinations. Deactivate specific variants that you don't produce (e.g., Red-XL is not available).
Per-Variant Pricing#
Variants tab → [Variant] → Edit:
- Base price: $25.00 (from product template)
- Color = Custom Print: +$5 (extra price on the attribute value)
- Size = XL: +$2 (extra for larger size)
- Result: Custom Print XL = $32.00
Per-Variant Inventory Tracking#
Each variant has its own stock:
- Red-S: 150 units
- Red-M: 200 units
- Blue-L: 75 units
Inventory moves are recorded per variant - picking, receiving, and reporting all show the specific color/size.
Variant on Sale Orders#
Salesperson selects "T-Shirt" → a dropdown appears: choose Color and Size → correct variant and price auto-populate.
On eCommerce: customer selects attributes from dropdowns → variant-specific price and availability shown in real time.
Attribute-Based Reorder Rules#
Create reorder rules per variant:
- Red-S: reorder when below 50 units, order 200
- Blue-XL: reorder when below 20 units, order 50
Each variant can have different safety stock levels based on its demand pattern.
Reporting on Variant Performance#
Sales → Reporting → Sales Analysis → group by Product Variant:
- Which color/size combination sells most?
- Which variants are slow-moving (candidates for clearance)?
- Variant mix analysis: are high-margin variants growing?

