How to Create a Bill of Materials (BOM): 8 Steps, One Example

A dressmaker smiling as she drafts paper patterns at a cutting table, with fabric laid out beside her

How to create a bill of materials comes down to eight steps, from naming the product to building one unit as a test. The quantity step decides whether you can trust the result, because every order and every cost multiplies it. Most guides skip how to set it for sheets, lengths and paint, and where scrap belongs.

This guide builds one BOM in full: a steel-frame school desk from a Kampala workshop, costed in Uganda shillings. The finished table is a template you can copy.

What to know before you create a BOM

Gather five things before you write a line: the product, how it is made, its units, current prices and one owner. Each saves a correction later.

  • A finished unit or a drawing. A real desk on the floor beats memory, because you can count its bolts.
  • How it is made. Which parts the workshop makes, such as the frame, and which it buys ready.
  • The units. How each material is bought (tins, sheets, 6 m lengths) and how the floor uses it (litres, pieces, metres).
  • Current landed prices. What each material costs delivered to the workshop, with transport and any duty you can't recover.
  • One owner. The person who will approve every later change, usually whoever runs production.

Which BOM are you creating?

A workshop creates a manufacturing BOM (MBOM): what the floor needs to make and ship the product. An engineering BOM (EBOM) describes the design, and suits a business with a design team.

EBOM or MBOM: the differences
FeatureEBOMMBOM
Created byEngineers or the designerWhoever runs production
Used forDesign and developmentBuilding, buying and costing
ListsParts as drawnParts, raw materials, packaging and scrap allowances
DetailThe product's structureQuantities in the units the floor uses

The other kinds, from single-level to modular, are compared in the bill of materials guide.

How to create a bill of materials in 8 steps

For example, a workshop in Kampala makes a steel-frame double desk for schools. The figures are illustrative, not a real workshop's.

Step 1: Name the product, its unit and its revision

Give the finished product a code, the unit the BOM describes and a revision: DSK-2S, one desk, revision A. Every quantity below is for that one unit.

Step 2: Break it into levels

List what goes straight into the product (level 1), then what each of those is made from (level 2). Stop breaking down when you reach something you buy.

The desk has three made parts at level 1: a frame, a top and a seat. The bolts that join them are bought, so they sit at level 1 too.

Step 3: Give every line a code and a description

Give each material one code and use it everywhere: PLY-18 for 18 mm plywood. The description carries the size a supplier needs, 1220 × 2440 mm, so nobody buys 12 mm board by mistake.

Keep codes short, unique and never reused, as SKU management sets out.

Step 4: Set the quantity per parent, in the unit you use

Write how many of each item go into one parent, in the unit the floor counts. The tube is 1.5 lengths per frame: the cut list needs 9 metres, and a length is 6 metres.

Take sheet goods from the cutting plan, never from the area. Four desk tops fit on one 1220 × 2440 mm sheet, so a top needs 0.25 sheet, and eight seats fit, so a seat needs 0.125.

The area tells a different story: a 1100 × 500 mm top is 0.55 m² of a 2.98 m² sheet, or 0.18 sheet. Order by area and 120 desks get 36 sheets of plywood, when the cutting plan needs 45.

Measure paint, varnish and welding rods on the test build in step 8. Buy units stay off the BOM: varnish is bought by the tin but used by the litre, as units of measure explains.

Step 5: Add a scrap allowance where material is lost

Add an allowance only to lines that lose material in normal work: saw cuts and short offcuts on tube, overspray on paint. The desk carries 5% on tube and 10% on paint and varnish.

Don't count scrap twice. The plywood quantity already comes from the cutting plan, offcuts included, so it carries none.

The allowance covers normal loss only. In the IFRS Foundation's module on inventories, normal wastage stays in a product's cost, while abnormal waste is an expense (paragraph 13.13 and Example 31). Waste above the allowance is a problem to fix, not a number to build in.

Step 6: Cost each line and add them up

Multiply each line's quantity with scrap by its landed unit cost, then add the lines. The desk's materials come to UGX 123,150, as the table below shows.

That is materials only. Under paragraphs 13.5 and 13.8 of IFRS for SMEs, a product's cost also takes in direct labour and production overheads, and manufacturing costs works out the rest.

Step 7: Add the supplier, lead time and an approved alternate

Record who supplies each bought line, how long delivery takes, and a substitute you have tested. The buyer works from these columns, as bill of materials procurement shows for a school's order of 120 desks.

An approved alternate saves a job when a supplier is late. The desk's plastic foot caps are imported, so rubber caps from a Kampala hardware shop are tested and listed beside them.

Step 8: Build one unit to the BOM, then release it

Build one desk using only what the BOM lists, and measure what it really used. Correct the quantities, then mark the BOM revision A and date it.

From then on, every change gets a new revision letter, approved by the owner. Two copies on the floor with no revision is how a batch gets built to last year's design.

For example: the desk's costed BOM

This is the finished BOM, with every column the floor, the buyer and the costing need. Copy the columns into a spreadsheet, with Line cost = Qty with scrap × Unit cost.

For example: the double desk's costed bill of materials, revision A (UGX)
LevelCodeItemQty per parentUnitScrapQty with scrapUnit costLine cost
0DSK-2SDouble school desk1each123,150
1FRM-2SSteel frame1each59,550
2ST-25Square tube 25 mm, 6 m1.5length5%1.57532,00050,400
2WR-25Welding rods 2.5 mm0.2kg0%0.211,0002,200
2PT-BLKBlack metal paint0.3litre10%0.3315,0004,950
2FC-25Plastic foot caps4piece0%45002,000
1TOP-2SDesk top1each38,300
2PLY-18Plywood 18 mm sheet0.25sheet0%0.25140,00035,000
2VN-CLRClear varnish0.15litre10%0.16520,0003,300
1SEAT-2SBench seat1each19,700
2PLY-18Plywood 18 mm sheet0.125sheet0%0.125140,00017,500
2VN-CLRClear varnish0.1litre10%0.1120,0002,200
1BLT-M8Bolt M8 × 40, nut and washer8set0%87005,600

Each made part carries the sum of its materials, so its own cost shows. A desk top costs UGX 38,300 in materials, worth knowing when a school asks for spare tops.

The buying columns sit in the same file, one row per bought material.

For example: the desk's buying columns
CodeBought bySupplierLead timeApproved alternate
ST-256 m lengthSteel dealer, Kampala1 weekNone
WR-255 kg packetHardware shop1 weekNone
PT-BLK4-litre tinPaint dealer1 weekNone
FC-25Bag of 100Importer8 weeksRubber caps, local hardware shop
PLY-18SheetTimber yard2 weeksNone
VN-CLR4-litre tinPaint dealer1 weekNone
BLT-M8Box of 100Hardware shop1 weekNone

Six mistakes that make a BOM wrong

Each of these mistakes passes unnoticed on paper and shows up as a shortage, a surplus or a wrong price.

  • Quantities from the area. Sheets, rolls and lengths come from the cutting plan. Here the area would buy a fifth too little plywood.
  • Scrap counted twice. An allowance on a quantity that already includes offcuts buys stock nobody uses.
  • Mixed units. One line in tins and the next in litres, and someone multiplies the wrong one. Keep the BOM in the units the floor uses.
  • Missing small parts. Bolts, foot caps and labels are cheap, and a desk can't be delivered without them.
  • Tools on the BOM. Saw blades, grinding discs and machine oil serve many products: they are MRO inventory, kept and costed apart.
  • No revision. With two undated versions about, nobody knows which one the last batch was built to.

Spreadsheet or software: where to keep the BOM

Start in a spreadsheet, and move to BOM or MRP software when products share parts or several people edit. The columns above work in either.

In a spreadsheet, give every row its parent's code, so a sort can't break the levels. Software adds where-used lists, dated revisions and buying lists netted against stock, often inside an ERP.

How to load your BOM's materials into ArmPOS

ArmPOS has no production module: no bill of materials, no work orders and no automatic use of materials when goods are made. The BOM stays in your spreadsheet, and its materials go into ArmPOS as products.

  • Make the units first. Create Sheet, Litre, Length and the rest in Products › Unit. The import finds each product's unit by its Short Name or Name (Categories, brands and units).
  • Import the materials from the BOM's columns. In Products › Import products, the Single Products template needs name, code, cost, retail_price, category and unit. The BOM's description, code, unit cost and unit fill four of them. You add the category and a retail price, which the template needs even for a material you never sell (Import products from a spreadsheet).
  • Add what is in the store. Products › Opening Stock takes a file of product_code and qty for one warehouse.
  • Buy in the supplier's unit. Build a Tin unit on Litre with Multiply 4, and make it the varnish's Purchase Unit.
  • Record each run with two adjustments. A Subtraction takes off the materials used, and an Addition puts on the finished goods made. Put the run and the BOM revision in the Note (Count and adjust stock).
  • Set the desk's Product Cost from the costed BOM: UGX 123,150 of materials, when you record wages and overheads as expenses. Adding them here would make Profit and Loss count them twice.

Enter what the store really issued for each run, not the BOM times the desks made. Entering the BOM's figures would hide waste, and inventory control starts with every movement on record as it happened.

The full run method is in barcodes in manufacturing, and it works the same for a workshop in Uganda or Egypt.

Frequently asked questions

What should a bill of materials include?

The level, item code, description, quantity per parent, unit, scrap allowance, unit cost, supplier, lead time and the BOM's revision. The desk's two tables above hold them all.

Can I create a BOM in Excel?

Yes, and most small workshops should start there. Give each row its parent's code, and move to software when products share parts or several people edit.

What is the first step in creating a BOM?

Naming the product, the unit the BOM describes and its revision. Every quantity after that is per one unit of it.

How do you work out the quantities in a BOM?

Per parent, in the unit the floor uses. Sheet goods come from the cutting plan, paint and rods from a test build, and a scrap allowance goes only where material is lost.

Who should create the bill of materials?

Whoever runs production, checked by whoever buys. One owner then approves every change.

Pick your best-selling product, write its BOM this week and build one unit to test it. To keep its materials, purchases and runs in one record, create a free ArmPOS account.