How BOMs and BOM revisions work in NetSuite, including effective dates, phantoms and engineering changes.
The bill of materials lists what goes into a product and in what quantity. In NetSuite it is a record in its own right, with revisions that carry effective dates, so the same assembly can be built to one recipe this month and another next month without losing the history. Planning reads it, work orders copy it, and costing rolls up through it, which is why a sloppy BOM shows up everywhere.
Product changes are constant, and the question is always the same: what happens to the orders already in flight. A BOM revision with an effective date answers it. Work orders created before the date keep the old component list, new ones pick up the change, and the audit trail shows which build used which recipe.
For a controlled change process with approvals and affected-item analysis, engineering change orders come with the Supply Chain Management SuiteApp rather than the core product. Many manufacturers start with BOM revisions and a documented approval outside the system, then add change orders when volume justifies it.
Every level of a BOM is a level someone has to maintain and count. Model the levels you actually stock or need costed separately, and use phantoms for the rest.
Components bought in one unit and consumed in another need a conversion that everyone agrees on. This is the single most common source of quiet cost errors.
Building expected loss into the BOM keeps planning honest. Recording actual scrap on the work order keeps costing honest. Most manufacturers need both, and should be explicit about which is which.
Engineering replaces a gasket on a valve assembly. The new gasket costs more, it is not interchangeable, and the old stock has to run out first.
This is why effective dates matter more than they look. Without them, changing a BOM changes what planning thinks it needs today, and nobody can answer what a unit built last quarter actually contained.
A product with sub-assemblies can be modeled two ways in NetSuite, and the choice affects planning, costing and how much paperwork the floor sees.
Use real sub-assemblies where the thing is stocked, sold as a spare, made on a different line, or has a lead time worth planning. Use phantoms for kits that only ever exist for the ten minutes between the shelf and the bench. Shops that make everything a real sub-assembly end up with five work orders per shipment and a floor that stops closing them.
Depth also has a cost in planning time. A planning run walks every level, so a ten-level structure with phantom levels that could have been flattened makes the run slower for no gain.
Native BOMs handle structure and revisions. They are not a product lifecycle system: there is no CAD integration out of the box, and complex approval workflows need building. For formula-based production, where quantities are percentages of a batch and yields vary, ProShop adds formulas, scaling and traced repacks. For a wider view of how BOMs feed production, see the NetSuite manufacturing guide.
Yes. A bill of materials can hold several revisions, each with effective from and to dates. Work orders take the revision in force on their date, so an engineering change does not alter jobs already released.
A phantom is a sub-assembly that exists on the bill of materials for clarity but is never built or stocked separately. When a work order is created, the phantom is exploded and its components are pulled onto the parent job.
Set up a unit of measure conversion on the item, and be explicit about which unit the BOM uses. Getting this wrong is the most common cause of small, persistent costing errors.
There is no practical limit on levels. The constraint is operational rather than technical: every real level is a separate assembly item, a separate work order and a separate completion for someone on the floor to record. Most manufacturers settle between two and four real levels and use phantom items for anything shallower than that.
Yes. A bill of materials is its own record in NetSuite and can be assigned to more than one assembly item, and an assembly can have several BOMs assigned with one marked as the default. That is how alternate recipes, a second plant with different components, or a customer-specific variant are handled without cloning the item.
Setting this up, or fixing how it was set up? Get in touch and we will look at it with you. More on the whole production flow in the NetSuite manufacturing guide.