What Is a Cost Code in Construction?

By Wyatt Cooper · Published · 3 min read

Key takeaways

  • A cost code is the label that puts every dollar on a job into a category of work, so budget, commitments, costs and changes can be compared line by line.
  • Commercial contractors commonly build their codes on CSI MasterFormat divisions and sections, sometimes adding a cost type such as labor, material or subcontract.
  • Codes only work if they are set before buyout and used the same way on every contract, invoice and change order.

A cost code is the number a contractor assigns to each category of work in the budget, so every estimate line, subcontract, purchase order, invoice and change order can be tracked against the same bucket. Commercial contractors commonly base cost codes on CSI MasterFormat divisions, such as 23 for HVAC, sometimes with a cost-type suffix for labor or material.

What cost codes do

A cost code is the job's filing system for money. Federal cost guidance makes the same point about its work breakdown structure: "A WBS is an essential part of developing a program's cost estimate", and it "facilitates establishing the schedule, cost, and earned value management (EVM) baseline" (GAO-20-195G, Cost Estimating and Assessment Guide). On a building job the cost-code list plays that role.

Most commercial contractors start from CSI MasterFormat, which CSI describes as organizing specifications "into work results that contractors can price, procure, and build" (CSI). Using the spec's numbers means the bid package, the subcontract's schedule of values and the budget all line up. The setup is in how to build a schedule of values and how to buy out a job.

Example

One cost code through the job (fictional figures)
RecordCost codeAmount
Budget line: HVAC controls23 09 00$84,000
Controls subcontract23 09 00$79,500
Change order: added zone sensors23 09 00$3,200
Committed to date23 09 00$82,700
Left in the budget23 09 00$1,300

The arithmetic: $79,500 + $3,200 = $82,700 committed; $84,000 − $82,700 = $1,300 still uncommitted. Had the change order been coded to general HVAC instead, the controls line would look $3,200 healthier than it is. The committed column is explained in what a committed cost is.

How it works in Conflo

In Conflo's budget, lines are keyed by MasterFormat cost code and grouped by division, with subtotals on each division row. Every commitment line carries a cost code, so an executed subcontract's schedule of values rolls into the matching budget codes, and its approved change orders count against the contract's first code.

The Budget in Conflo: original, approved changes, revised budget, committed, actual to date and projected final, by CSI division and cost code, with lines not yet bought out flagged and the amount projected over budget.
The budget in Conflo by CSI division and cost code, with committed, actual and projected columns.

The bottom line

A cost code is the tag that lets you compare what you planned, bought and spent on each piece of work.

Set the list from the specs before buyout, and code every contract, invoice and change order the same way.

See how the budget works in Conflo

Sources

  1. GAO-20-195G, Cost Estimating and Assessment Guide (March 2020) — U.S. Government Accountability Office. Read October 22, 2026.
  2. Standards overview: MasterFormat — Construction Specifications Institute (CSI). Read October 22, 2026.

Questions

What is the difference between a cost code and a cost type?

The cost code says what work the money is for (HVAC controls); the cost type says what kind of cost it is (labor, material, equipment, subcontract).

Do cost codes have to follow MasterFormat?

No. Any consistent list works, but codes based on the specification's section numbers make it easier to match bids, contracts and submittals.

How many cost codes should a job have?

Enough to see where the money is going, no more. Many commercial jobs use one code per bid package plus the GC's own general conditions codes.