20% OFF CODE: WELCOME2020% off with code WELCOME20Explore All Systems →
Home/Formulas/Bill of Materials (BOM) Cost Roll-Up Formula
Manufacturing & ProductionVerified: Excel 2021, M365 & Web

Bill of Materials (BOM) Cost Roll-Up Formula

Roll up a multi-level bill of materials in Excel: extended component cost with scrap, sub-assembly totals and finished-good unit cost. Free BOM template example.

Formula X-Ray Syntax Inspector
=LET(
  parent, [@AssemblyID],
  qty, BOM_Lines[QtyPer],
  scrap, BOM_Lines[ScrapPct],
  cost, BOM_Lines[UnitCost],
  SUM(FILTER(qty * (1 + scrap) * cost, BOM_Lines[ParentID] = parent, 0))
)
Interactive Token Breakdown (Click to Inspect)4 Arguments Mapped
parentargument

The assembly or finished good whose cost is being rolled up.

Official Excel System
$7.20$9-20%

Bill of Materials (BOM) Excel Template & Unit Cost Roll-Up

Skip writing this formula by hand — download the pre-built Bill of Materials (BOM) Excel Template & Unit Cost Roll-Up workbook with live structured tables, KPI dashboard, and sample data.

100% Macro-Free (.xlsx) • Native dynamic formulas
Single-user perpetual license • Zero monthly SaaS
Pre-filled demo workbook + Clean blank sheet
Instant .xlsx Download • Verified IT Safe • Polar Secured
Why Legacy Formulas Fail Here

The Problem with Standard Excel Approaches

A flat BOM list hides the real unit cost: scrap allowances, purchase-unit conversions and nested sub-assemblies are usually added by hand, so quoted prices drift away from actual material cost.

Calculation Logic

How Modern Dynamic Arrays Execute This Formula

1

Lists every component once with its parent ID, quantity per and scrap %.

2

Calculates extended cost per line: quantity per × (1 + scrap) × unit cost.

3

Sums the lines of each parent, so sub-assembly costs feed the next level up.

4

Adds labor and overhead per assembly to reach a fully loaded unit cost.

Typical Scrap Allowance
2% - 8% per component
BOM Levels Supported
Finished good + sub-assemblies
Cost Accuracy Target
Within 1% of actual material spend
Troubleshooting & QA

Common Excel Errors & How to Fix Them

#CALC!Root Cause: FILTER found no lines for the parent ID.

Solution: The third FILTER argument (0) returns zero instead; check the parent ID spelling.

Unit MismatchRoot Cause: Components bought per box but consumed per piece.

Solution: Store a purchase-to-usage conversion factor and divide unit cost by it.

Want the answer without building the formula? Try the free Bill of Materials Calculator.
Production-Grade Complete System

Skip building this from scratch.

This formula is already fully wired, error-checked, and formatted with Big-4 print-ready A4 reports inside Bill of Materials (BOM) Excel Template & Unit Cost Roll-Up.

Zero Macros (100% IT Compliant)•Pre-filled Sample + Clean Blank•One-Time $9 USD