Matrix items handle products with variants — a t-shirt in 5 colors and 4 sizes, a cable in 3 lengths and 2 connectors, a chemical in different concentrations and container sizes. Instead of creating 20 individual items for every combination, you create one parent item and NetSuite generates the child items (sub-items) for each variant combination.
How Matrix Items Work
A matrix item consists of:
- Parent item — the product concept (e.g., "Premium Cotton T-Shirt")
- Item options — the dimensions of variation (e.g., Color, Size)
- Sub-items — the individual SKUs for each combination (e.g., "Premium Cotton T-Shirt - Blue - Medium")
The parent item holds shared attributes: description, vendor, item category, weight, tax schedule. The sub-items inherit these attributes and add the specific option values plus their own SKU, barcode, and pricing.
Inventory tracks at the sub-item level. You don't have 500 "Premium Cotton T-Shirts" — you have 35 Blue/Small, 42 Blue/Medium, etc. Sales orders, purchase orders, and fulfillments all reference specific sub-items.
Enabling Matrix Items
- Navigate to Setup > Company > Enable Features
- Under the Items & Inventory subtab, check Matrix Items
- Save
Once enabled, you'll see the matrix option fields when creating inventory items, non-inventory items, service items, assembly/BOM items, lot numbered items, serialized items, and other charge items.
Setting Up Item Options
Before creating matrix items, define the option values. Item options in NetSuite use custom lists.
Creating a custom list for options
- Go to Customization > Lists, Records & Fields > Lists > New
- Create a list for each dimension:
Color list example:
- List name:
Product Colors - Values: Black, White, Navy, Red, Gray, Green, Blue
Size list example:
- List name:
Apparel Sizes - Values: XS, S, M, L, XL, 2XL, 3XL
Creating item option custom fields
- Go to Customization > Lists, Records & Fields > Item Fields > New
- Configure each option:
For Color:
- Label:
Color - List/Record:
Product Colors(the custom list you created) - Matrix option: checked (this automatically sets the Type to Multiple Select and the Subtab to Matrix)
For Size:
- Label:
Size - List/Record:
Apparel Sizes - Matrix option: checked
The Matrix option checkbox is critical — this is what tells NetSuite to generate sub-items based on these options.
Creating a Matrix Parent Item
NetSuite offers two ways to create matrix items: the Matrix Item Assistant (a guided wizard) or manual setup. The Assistant walks you through item basics, property lists, name templates, and option combination selection in four steps — it's the fastest path for most users.
To use the Assistant: go to Lists > Accounting > Items > New, select your item type, and click the Matrix Item Assistant link. For manual setup, follow the steps below.
Manual creation
-
Go to Lists > Accounting > Items > New
-
Select Inventory Item (or the appropriate item type)
-
Fill in the shared fields:
- Item Name/Number:
PREM-COTTON-TEE - Display Name:
Premium Cotton T-Shirt - Description, vendor, tax schedule, etc.
- Item Name/Number:
-
On the Matrix subtab:
- Select the matrix options: Color, Size
- Check the specific option values that apply to this item (not every t-shirt comes in every color)
- Click Create Matrix to generate the sub-items
-
NetSuite shows you the generated sub-items grid:
| Sub-Item | Color | Size | SKU |
|---|---|---|---|
| PREM-COTTON-TEE-BLK-S | Black | S | Auto-generated |
| PREM-COTTON-TEE-BLK-M | Black | M | Auto-generated |
| PREM-COTTON-TEE-BLK-L | Black | L | Auto-generated |
| PREM-COTTON-TEE-NVY-S | Navy | S | Auto-generated |
| ... | ... | ... | ... |
- Review and customize the SKUs, then save.
Pricing Matrix Sub-Items
You have several options for pricing variants:
Uniform pricing — all sub-items use the parent's price. Set the base price on the parent and sub-items inherit it. Good for items where variants don't affect cost (color variations, for example).
Per-sub-item pricing — each variant has its own price. Edit individual sub-items to set different prices. Use this when variants have different costs (size-based pricing, material differences).
Price levels — use NetSuite's price levels to set wholesale, retail, and web prices across all sub-items. Price levels can be set at the parent (inherited) or sub-item level (overridden).
Quantity pricing — set volume discount schedules that apply across the matrix or per sub-item.
Inventory Management
Purchasing
Purchase orders reference specific sub-items directly — the parent item cannot appear on transactions. Vendors ship specific variants, and your POs should reflect that.
Warehouse operations
Receiving, picking, packing, and shipping all happen at the sub-item level. Your warehouse team picks "Blue/Medium" not "T-Shirt." Bin assignments and lot tracking apply to sub-items.
Inventory counts
Inventory counts track at the sub-item level. When doing physical inventory, each variant is a separate line on the count sheet.
Reorder points
Set reorder points on individual sub-items. A popular color/size combination needs a different reorder point than a slow-moving one. Use inventory reports to identify which sub-items need higher safety stock.
Ecommerce Considerations
Matrix items display differently depending on your ecommerce platform:
SuiteCommerce displays the parent item on category pages and shows option selectors (color swatches, size dropdowns) on the product detail page. The customer selects options and the correct sub-item SKU adds to cart.
Third-party platforms (Shopify, BigCommerce) map matrix items to their native variant systems. The integration syncs the parent-child relationship and maps option fields between systems.
Key ecommerce fields per sub-item:
- Web display image (variant-specific photos)
- UPC/barcode for variant
- Available for web store (flag to hide out-of-stock variants)
- Web price (if different from standard pricing)
Common Pitfalls
Too many options. Two options with 10 values each = 100 sub-items. Three options with 10 values each = 1,000 sub-items. NetSuite enforces a hard limit of 2,000 sub-items per parent item. Keep option dimensions limited to 2-3. If you're exceeding that, consider whether matrix items are the right approach.
Adding options after creation. Adding a new color to an existing matrix item creates new sub-items. Removing an option value doesn't delete existing sub-items — you need to manually inactivate them.
SKU naming. Plan your SKU convention before creating matrix items. NetSuite auto-generates sub-item names by concatenating parent name + option values, but these can get unwieldy. Customize them at creation time.
Reporting. Sales reports can aggregate at the parent level or show sub-item detail. Make sure your reporting needs are met — some saved searches and reports need the Matrix Parent filter to show the right level of detail.
Matrix items getting complicated?
Our NetSuite team can help you plan your item structure, set up matrix options, and avoid the pitfalls that slow down implementations.
Talk to a NetSuite consultantBulk Operations
For matrix items with many sub-items, use CSV import for:
- Setting prices across all sub-items
- Updating inventory counts
- Adjusting reorder points
- Activating/deactivating specific variants
The CSV import uses the sub-item internal ID as the key. Export current sub-items first to get the correct IDs, then modify and reimport.