How to Set Up a Bill of Materials

Master product variants, pack sizes, flavours, materials, and attribute scaling — so production planning, costing, and inventory stay accurate in DotOne.

What is a BOM in manufacturing?

A Bill of Materials (BOM) is the complete recipe for making a product — every raw material, sub-assembly, quantity, and operation step needed from input to finished goods.

In DotOne, a BOM connects to your routing (production steps), work orders, inventory consumption, and costing. Getting the BOM structure right upfront saves weeks of rework later.

MSME manufacturers often struggle with variants: same liquid in 5L and 1L bottles, tiles in two sizes, or juices in different flavours. The golden rule below tells you when to split or keep one BOM.

0% Less BOM duplication with parent + packing model
0× Faster MRP when recipe is defined once
0% Cost accuracy per SKU when structure is correct
0 Typical go-live for BOM + routing setup

Two ways to structure variants

Same bulk product, different outcomes — choose the model that matches how your recipe actually changes.

Recommended · One Parent BOM

Pack size / label / dimension only

One manufacturing recipe. Variants created at the packing step.

Engine Oil Bulk — Base materials + blending
→ Packing operation
→ 5L Bottle (pack material + label)
→ 1L Bottle (pack material + label)
→ 500ml Pouch (pack material)
Separate BOMs required

Recipe / flavour / material changes

Each variant needs its own BOM because inputs or process differ.

Mango Juice BOM — Mango pulp, sugar, water
Lemon Juice BOM — Lemon concentrate, sugar, water
SS304 Valve BOM — Different raw material grade

The golden rule

Does the manufacturing recipe change?

If the raw materials, percentages, routing steps, or manufacturing process changes → create a Separate BOM (or separate parent product).

If only packaging, labels, pack sizes, colours, or physical dimensions change → use One Parent BOM with Multi Variant Packing or Attribute Scaling.

Routing matters too. If blending takes 2 hours but packing takes 20 minutes, keep blending on the parent BOM and add a dedicated packing operation. Packaging materials (bottle, cap, label, carton) attach to the packing step — not duplicated across every SKU's recipe.

Quick decision flow

Use this every time you add a new product, pack size, or variant.

New Product / Variant
Does the recipe change?
Materials · % · Routing · Process
No
One Parent BOM
+ Packing / Scaling
Yes
Separate BOM
Per recipe / material

When to use one parent BOM

Same recipe — different packaging or scaling only.

ScenarioExampleRecommended Setup
Pack Size5L, 2L, 500ml engine oilParent BOM + Multi Variant Packing
Pack TypePouch vs BottleParent BOM + Packaging Materials
Size Scaling600×600 vs 300×300 tileAttribute Scaling on area
Thickness8mm vs 12mm sheetAttribute Scaling on thickness
Colour / LabelRed vs Blue label, white-label brandPackaging Variants on packing step
UOM ConversionBulk kg → retail gramsPacking targets + conversion factor

When to create separate BOMs

Different recipe, material, or formula — always split.

ScenarioExampleAction
FlavourMango vs Lemon juice — different inputsSeparate BOM per flavour
Material GradeSS304 vs MS componentsSeparate parent product + BOM
Model / SKU familyCompletely different part listsSeparate BOM
Formula changeReformulation with new additivesNew BOM version or product
Make-to-order configCustomer-specific recipe each timeConfigurable BOM / variant rules

Step-by-step BOM setup in DotOne

Follow this sequence for a parent BOM with multi-variant packing.

1

Create the parent (bulk) product

Define the item you manufacture in bulk — e.g. "Engine Oil Bulk" or "Tile Slurry". Leave product variant empty on the parent BOM.

2

Define routing & operations

Add blending/mixing/pressing steps first, then a dedicated Packing operation as the last step before finished goods.

3

Add raw materials to the BOM

List base materials with quantities per unit of bulk output. Use scrap % and alternate items where needed.

4

Enable Multi Variant Packing

Turn on packing for the parent BOM. Link each sellable SKU (5L, 1L, 500ml) as a packing target.

5

Add packaging materials

Bottle, cap, label, shrink wrap — attach to the packing step. Use "Apply on Variants" to assign labels per SKU only.

6

Test work order & costing

Raise a trial work order for bulk qty, run packing to each SKU, and verify material issue + unit cost before go-live.

Attribute scaling explained

For products where quantity scales with size, area, or thickness — like tiles, sheets, or panels — use Attribute Scaling instead of duplicating BOM lines.

Formula: Scaled Qty = Base Qty × (New Attribute ÷ Base Attribute)

Example: A 600×600 tile uses 4× the raw material of a 300×300 tile (area ratio 4:1). DotOne calculates consumption automatically when you enter dimensions on the work order.

Material use by tile size

600 × 600 mm100% (base)
300 × 300 mm25% of base

Area ratio: (300×300) ÷ (600×600) = 0.25

BOM field guide

Key DotOne fields and when to use each one.

Product

Parent product or bulk item that holds the core manufacturing recipe.

Product Variant

Use only when the recipe itself differs — assign variant on a separate BOM.

Multi Variant Packing

One bulk output packed into multiple sellable SKUs from a single work order.

Packing targets

Which finished SKUs can be produced from one bulk batch — with qty per pack.

Attribute scaling

Auto-scale material qty by length, width, thickness, or custom attributes.

Apply on variants

Limit packaging materials to specific SKUs — e.g. premium label on 5L only.

Common BOM mistakes

Avoid these — they cause wrong costing, stock issues, and planning errors.

Duplicating the full BOM for every pack size

Creates maintenance hell. Use one parent BOM + multi-variant packing instead.

Mixing flavours in one BOM

Mango and lemon share a bottle but not a recipe — separate BOMs with shared packing materials if needed.

Forgetting the packing step in routing

Packaging materials won't consume correctly. Always add packing as the final operation.

Not testing with a trial work order

Validate material issue, WIP, and finished goods qty before enabling for production planners.

Real manufacturing examples

Lubricant manufacturing

  • Engine Oil Bulk (blending)
  • Engine Oil 5L / 1L / 500ml
  • Shared additives in parent BOM

✓ One Parent BOM + Packing

Juice manufacturing

  • Mango Juice BOM
  • Lemon Juice BOM
  • Same bottle, different pulp inputs

✓ Separate BOM per Flavour

Tile manufacturing

  • Single tile slurry recipe
  • 600×600 and 300×300 sizes
  • Clay scales by area

✓ Attribute Scaling

Go-live checklist

Parent BOM

  • Product variant empty
  • Routing linked with packing step
  • Raw materials & scrap % verified
  • Multi variant packing enabled
  • Trial work order passed

Variant BOM

  • Recipe differs from parent
  • Variant assigned on BOM header
  • Routing matches variant process
  • Multi variant packing disabled
  • Unit cost validated per variant

Frequently asked questions

Yes, if recipes are identical. Merge materials into a parent BOM, enable multi-variant packing, and migrate open work orders during a planned downtime window with DotOne support.
On the packing operation within the BOM. Bottles, caps, labels, and cartons should consume when packing runs — not during bulk blending or machining.
Define custom attributes (length, diameter, weight) on the item. Map each BOM line to scale by that attribute. DotOne recalculates qty when dimensions change on the work order.
Yes — use multi-level BOMs. Sub-assemblies are manufactured separately with their own routing, then issued as components into the parent product BOM.

Build better BOM structures

Reduce BOM maintenance, simplify production planning, and manage product variants correctly with DotOne Manufacturing.