Raw-material planning from bills of materials: a guide for makers
How brands that make their own products turn sales forecasts into raw-material and packaging orders using bills of materials, batch sizes, scrap allowances and lead times.
Stokrio Team · · 7 min read
If you make what you sell (candles, skincare, coffee, food, apparel), you have two inventories to plan. Finished goods are what customers buy. Raw materials and packaging are what you actually order from suppliers. The link between them is the bill of materials, and if that link lives in someone's head, you'll eventually stop a production run for want of a jar that costs forty cents.
This guide works through planning materials from finished-goods demand, using a small candle brand as the example.
Key takeaways
- Material demand is dependent demand: it comes from the finished products that use the material, not from its own sales.
- A bill of materials (BOM) lists what goes into one batch, the batch size and an allowance for scrap.
- Calculate gross requirements over the material's lead time plus a buffer, subtract on hand and on order, then round to the supplier's pack size.
- Shared materials benefit from pooling; unique materials, especially printed packaging, are where most production stoppages start.
- Cheap materials with long lead times deserve generous safety stock. They cost little to hold and a lot to run out of.
Start with the bill of materials
A BOM lists the ingredients and packaging for one batch and the number of units that batch produces. Our candle brand makes two scents in batches of 48 candles:
| Material | Per batch of 48 | Per candle |
|---|---|---|
| Soy wax | 8.64 kg | 180 g |
| Fragrance oil (scent-specific) | 0.864 kg | 18 g |
| Wick | 48 | 1 |
| Glass jar | 48 | 1 |
| Lid | 48 | 1 |
| Label (scent-specific) | 48 | 1 |
| Box | 48 | 1 |
Per-candle figures are the batch figures divided by 48: 8.64 kg ÷ 48 = 0.18 kg, and 0.864 kg ÷ 48 = 0.018 kg.
Writing BOMs per batch rather than per unit matters for materials that don't divide neatly, like a fixed amount of dye per pour regardless of how many units come out, and it mirrors how production actually happens.
Scrap allowances
Some materials are lost in production. If roughly 2% of jars break or fail quality checks, you need more than one jar per finished candle. There are two common ways to write the allowance:
- Multiply: 48 × 1.02 = 48.96 jars per batch.
- Divide by yield: 48 ÷ 0.98 ≈ 48.98 jars per batch.
The difference is small at low scrap rates. Pick one convention and use it everywhere. We'll multiply.
Sub-assemblies
If the brand also sells a gift box containing one candle of each scent, the gift box is a product whose BOM includes two finished candles plus its own packaging. That's a sub-assembly: gift box sales create demand for candles, which create demand for wax, jars and the rest. Planning has to walk down every level.
Turn sales into finished-goods demand
Say the forecasts are:
- Scent A sells 20 a day on its own.
- Scent B sells 10 a day on its own.
- The gift box (1 A + 1 B) sells 5 a day.
Total candle demand:
- Scent A: 20 + 5 = 25 a day
- Scent B: 10 + 5 = 15 a day
- All candles: 25 + 15 = 40 a day
Explode demand into materials
Now multiply through the BOM:
| Material | Calculation | Per day |
|---|---|---|
| Soy wax | 40 × 0.18 kg | 7.2 kg |
| Fragrance A | 25 × 18 g | 450 g |
| Fragrance B | 15 × 18 g | 270 g |
| Jars (2% scrap) | 40 × 1.02 | 40.8 |
| Lids, wicks, boxes | 40 × 1 | 40 each |
| Labels A | 25 × 1 | 25 |
| Labels B | 15 × 1 | 15 |
| Gift box packaging | 5 × 1 | 5 |
Notice that wax, jars, lids, wicks and boxes are shared across both scents, while fragrance and labels aren't. Shared materials are easier to plan because swings between scents cancel out. Scent-specific materials carry the full uncertainty of one product.
Batch sizes and production rhythm
You don't produce 40 candles a day; you pour batches of 48. Weekly demand is 40 × 7 = 280 candles, and 280 ÷ 48 ≈ 5.83 batches, so in practice you pour 6 batches a week (6 × 48 = 288 candles) and let finished-goods stock absorb the difference.
For material planning, that means material usage comes in lumps of one batch's worth, not a smooth daily trickle. Make sure on-hand stock always covers at least the next full batch of every material, or the batch can't start.
Calculate what to order
For each material, the same logic as finished goods applies, using the material's own lead time:
gross requirement = (material lead time + buffer days) × daily material demand
net requirement = gross requirement − (on hand + on order)
order quantity = net requirement rounded up to the supplier's pack size or minimumWorked example: jars
Jars come from an overseas supplier with a 45-day lead time. You want a 15-day buffer. You have 900 on hand and 600 on order. Jars come in cartons of 72.
- Gross: (45 + 15) × 40.8 = 60 × 40.8 = 2,448 jars
- Net: 2,448 − (900 + 600) = 2,448 − 1,500 = 948 jars
- Cartons: 948 ÷ 72 ≈ 13.17, rounded up to 14 cartons = 14 × 72 = 1,008 jars
Worked example: wax
Wax comes from a local supplier with a 14-day lead time, a 7-day buffer, and 20 kg cases. You have 60 kg on hand and nothing on order.
- Gross: (14 + 7) × 7.2 = 21 × 7.2 = 151.2 kg
- Net: 151.2 − 60 = 91.2 kg
- Cases: 91.2 ÷ 20 = 4.56, rounded up to 5 cases = 100 kg
Same brand, same candles, very different buying rhythms: jars need planning two months out; wax can be topped up every couple of weeks.
Order-by dates: where makers get caught
Finished-goods cover can look comfortable while a material is already late. Suppose Scent A has 18 days of finished stock and production takes 3 days. You need to start a batch within 18 − 3 = 15 days. If you're short of labels for Scent A and they take 21 days to print, you're already 21 − 15 = 6 days late, even though nothing looks urgent on the finished-goods side.
The fix is to calculate an order-by date for every material, working back from when production must start, and to look at materials and finished goods on the same screen.
Packaging deserves more respect
The material that stops production is often not the expensive one. It's the printed box, the custom label or the branded insert: low unit cost, long lead time, high minimum, and unique to one product. A few practical rules:
- Give cheap, long-lead items generous safety stock. Holding an extra month of labels costs little; running out stops production.
- Track packaging artwork versions. A label change makes old stock obsolete, so run down old labels before ordering new ones.
- Watch shared minimums. If a printer's minimum covers all your labels in one run, plan labels together.
Check the plan against reality
Plans drift. Each time you finish a batch, compare the materials you actually used with what the BOM says you should have used. Persistent differences mean the BOM or the scrap allowance is wrong, or materials are going missing. Fix the BOM rather than padding orders.
A note on scope
The approach above assumes you produce at roughly the rate you sell. Brands that build stock ahead of a season, or run long campaigns of one product at a time, need time-phased production scheduling on top of it: which product, which week, which line. Get the BOM and the material maths right first; scheduling sits on top.
In Stokrio
Stokrio's raw-material planning explodes finished-goods and bundle sales through bills of materials, including quantity per batch, batch size, scrap percentage and sub-assemblies, into demand for each material. Materials are forecast, alerted and reordered like any other product and inherit the importance (ABC class) of the products they go into. A material requirements report shows what's needed in the next 30 and 90 days, the shortfall over lead time, the order-by date and a suggested quantity, and work orders consume materials and add finished goods in one step, blocked when materials are short. It plans materials assuming you produce at the rate you sell; time-phased production scheduling is on the roadmap.