Free Template · Excel · No Email Required
Construction Cost Codes List, by CSI Division.
Here's a construction cost codes list you can actually start with: all 50 CSI MasterFormat divisions, a 29-code starter set for a general contractor, a specialty subcontractor example, and a job budget tab that compares estimate to actual. It's all in one free Excel file.
Short answer
A construction cost code combines a job number, a phase code and a cost type. Most contractors build phase codes on the 50 CSI MasterFormat divisions (00 to 49), for example 03 Concrete or 26 Electrical, then add a phase number and a cost type: labor, material, subcontract, equipment or other. For a contractor doing $1M to $5M, 15 to 30 active phase codes is usually enough.
The download is an Excel workbook with five tabs: a read-me, the full CSI Divisions list, a GC Starter Codes list, a Specialty Sub Example for an electrical contractor, and a Job Budget tab that compares estimate to actual by cost code. The starter rows are marked as sample data. Change them, delete them, or add your own in the blank rows at the bottom.
What are the 50 CSI MasterFormat divisions?
MasterFormat is the numbering system the Construction Specifications Institute (CSI) publishes for organizing project specifications. Since the 2004 edition it has used 50 divisions, numbered 00 to 49. Division 00 is the procurement and contracting requirements group. Divisions 01 to 49 are the specifications group, split into five subgroups. Here's the division-level list.
| Division | Title | Group / subgroup |
|---|
| 00 | Procurement and Contracting Requirements | Procurement and Contracting Requirements |
| 01 | General Requirements | General Requirements |
| 02 | Existing Conditions | Facility Construction |
| 03 | Concrete | Facility Construction |
| 04 | Masonry | Facility Construction |
| 05 | Metals | Facility Construction |
| 06 | Wood, Plastics, and Composites | Facility Construction |
| 07 | Thermal and Moisture Protection | Facility Construction |
| 08 | Openings | Facility Construction |
| 09 | Finishes | Facility Construction |
| 10 | Specialties | Facility Construction |
| 11 | Equipment | Facility Construction |
| 12 | Furnishings | Facility Construction |
| 13 | Special Construction | Facility Construction |
| 14 | Conveying Equipment | Facility Construction |
| 15 | Reserved | Facility Construction |
| 16 | Reserved | Facility Construction |
| 17 | Reserved | Facility Construction |
| 18 | Reserved | Facility Construction |
| 19 | Reserved | Facility Construction |
| 20 | Reserved | Facility Services |
| 21 | Fire Suppression | Facility Services |
| 22 | Plumbing | Facility Services |
| 23 | Heating, Ventilating, and Air Conditioning (HVAC) | Facility Services |
| 24 | Reserved | Facility Services |
| 25 | Integrated Automation | Facility Services |
| 26 | Electrical | Facility Services |
| 27 | Communications | Facility Services |
| 28 | Electronic Safety and Security | Facility Services |
| 29 | Reserved | Facility Services |
| 30 | Reserved | Site and Infrastructure |
| 31 | Earthwork | Site and Infrastructure |
| 32 | Exterior Improvements | Site and Infrastructure |
| 33 | Utilities | Site and Infrastructure |
| 34 | Transportation | Site and Infrastructure |
| 35 | Waterway and Marine Construction | Site and Infrastructure |
| 36 | Reserved | Site and Infrastructure |
| 37 | Reserved | Site and Infrastructure |
| 38 | Reserved | Site and Infrastructure |
| 39 | Reserved | Site and Infrastructure |
| 40 | Process Interconnections | Process Equipment |
| 41 | Material Processing and Handling Equipment | Process Equipment |
| 42 | Process Heating, Cooling, and Drying Equipment | Process Equipment |
| 43 | Process Gas and Liquid Handling, Purification, and Storage Equipment | Process Equipment |
| 44 | Pollution and Waste Control Equipment | Process Equipment |
| 45 | Industry-Specific Manufacturing Equipment | Process Equipment |
| 46 | Water and Wastewater Equipment | Process Equipment |
| 47 | Reserved | Process Equipment |
| 48 | Electrical Power Generation | Process Equipment |
| 49 | Reserved | Process Equipment |
Source: division numbers and titles as published in CSI MasterFormat. MasterFormat is a trademark of the Construction Specifications Institute. CSI revises the list periodically and sells the full section-level numbering (the six-digit numbers under each division), which isn't reproduced here. If a project spec calls out a section number, use the current edition from CSI.
Which divisions does a building contractor actually use?
Most commercial and residential building work lands in a handful of divisions: 01 General Requirements, 02 through 10 for the building shell and interiors, 21 through 28 for fire protection, plumbing, HVAC, electrical and low voltage, and 31 through 33 for sitework and utilities. The process equipment divisions (40 to 48) mostly matter to industrial and plant work. In the spreadsheet, the CSI Divisions tab flags the 19 divisions most building contractors use, so you can filter to them.
What does a starter cost code list look like for a general contractor?
Here's the general contractor starter set from the template: 29 phase codes, each built from a CSI division number plus a three-digit phase number. The checkmarks show which cost types we'd typically track on each phase for a contractor who self-performs carpentry and concrete and subcontracts most trades. Yours will be different, and that's the point of making it editable.
| Code | Phase | L | M | S | E | O |
|---|
| 01-100 | Project management and field supervision | ✓ | | | | |
| 01-200 | Temporary facilities, trailer and temporary utilities | | ✓ | | ✓ | ✓ |
| 01-300 | Permits, fees, testing and inspections | | | | | ✓ |
| 01-400 | Cleanup, dumpsters and haul-off | ✓ | | | ✓ | ✓ |
| 01-500 | Job-specific bond and insurance | | | | | ✓ |
| 02-100 | Selective demolition | ✓ | | ✓ | ✓ | |
| 03-100 | Footings and foundations | ✓ | ✓ | ✓ | | |
| 03-200 | Slabs and flatwork | ✓ | ✓ | ✓ | | |
| 04-100 | Masonry | | | ✓ | | |
| 05-100 | Structural and miscellaneous steel | | ✓ | ✓ | | |
| 06-100 | Rough carpentry and framing | ✓ | ✓ | | | |
| 06-200 | Finish carpentry, millwork and casework | ✓ | ✓ | ✓ | | |
| 07-100 | Insulation, waterproofing and sealants | | | ✓ | | |
| 07-200 | Roofing and sheet metal | | | ✓ | | |
| 08-100 | Doors, frames and hardware | ✓ | ✓ | | | |
| 08-200 | Windows, storefront and glazing | | | ✓ | | |
| 09-100 | Metal studs, drywall and ceilings | | | ✓ | | |
| 09-200 | Flooring | | | ✓ | | |
| 09-300 | Painting and wall coverings | | | ✓ | | |
| 10-100 | Specialties: toilet accessories, signage, partitions | ✓ | ✓ | | | |
| 21-100 | Fire sprinkler | | | ✓ | | |
| 22-100 | Plumbing | | | ✓ | | |
| 23-100 | HVAC | | | ✓ | | |
| 26-100 | Electrical | | | ✓ | | |
| 27-100 | Low voltage, data and communications | | | ✓ | | |
| 31-100 | Excavation, grading and erosion control | | | ✓ | ✓ | |
| 32-100 | Paving, curbs and site concrete | | | ✓ | | |
| 32-200 | Landscaping and irrigation | | | ✓ | | |
| 33-100 | Site utilities: water, sewer, storm | | | ✓ | | |
The three-digit suffixes (100, 200, 300) are our own simple numbering, not CSI section numbers. They're spaced out so you can add a phase later, say 03-150 for a retaining wall, without renumbering anything.
How should a specialty subcontractor set up cost codes?
A specialty subcontractor lives inside one or two divisions, so the phase codes split your own trade into stages a foreman would recognize. Here's the electrical example from the template. A plumbing, HVAC, concrete or framing contractor would follow the same pattern inside 22, 23, 03 or 06.
| Code | Phase | L | M | S | E | O |
|---|
| 01-100 | Project management and foreman time | ✓ | | | | |
| 01-200 | Temporary power and lighting | ✓ | ✓ | | ✓ | |
| 01-300 | Permits and inspections | | | | | ✓ |
| 26-100 | Underground and slab rough-in | ✓ | ✓ | | ✓ | |
| 26-200 | Wall and ceiling rough-in | ✓ | ✓ | | | |
| 26-300 | Service, switchgear and panels | ✓ | ✓ | | ✓ | |
| 26-400 | Feeders and branch wiring | ✓ | ✓ | | | |
| 26-500 | Lighting fixtures and controls | ✓ | ✓ | | | |
| 26-600 | Devices and trim-out | ✓ | ✓ | | | |
| 27-100 | Low voltage and data cabling | | | ✓ | | |
| 28-100 | Fire alarm | | | ✓ | | |
| 31-100 | Trenching and backfill | | | ✓ | ✓ | |
Notice that 01 General Requirements still shows up. Supervision, temporary power and permits are real job costs for a subcontractor too, and burying them in rough-in makes the rough-in look worse than it is.
How do phase codes and cost types become job cost codes?
A job cost code has three parts: job number, phase code and cost type. Cost types are L (labor), M (material), S (subcontract), E (equipment) and O (other). So 2604 / 03-200 / L means field labor on slabs and flatwork at job 2604. In the template, you mark Y under each cost type you track, and the last column writes out the codes to set up in your accounting system. The 29 general contractor phases above turn into 46 job cost codes, because most phases only need one or two cost types. That's a list a field team can actually use.
How do you compare estimate to actual by cost code?
The Job Budget tab does this for one job. For each cost code you enter the estimate, actual cost to date, committed cost that hasn't been invoiced yet (signed subcontracts and purchase orders), and estimated remaining cost that isn't committed. The sheet adds the last three into a projected cost at completion and compares it with the estimate. Here are three rows from the sample job.
| Cost code | Estimate | Actual | Committed | Remaining | Projected | Variance |
|---|
| 01-100 L Supervision | $48,000 | $52,500 | $0 | $6,000 | $58,500 | ($10,500) |
| 06-100 L Framing labor | $64,000 | $41,000 | $0 | $21,000 | $62,000 | $2,000 |
| 22-100 S Plumbing | $96,000 | $58,000 | $38,000 | $2,500 | $98,500 | ($2,500) |
The math on the first row: $52,500 + $0 + $6,000 = $58,500 projected, against a $48,000 estimate, so supervision is running $10,500 (21.9%) over. Across all ten sample rows, the job is projected at $661,800 against a $651,500 estimate, a $10,300 overrun, and almost all of it sits in one cost code. That's what a cost code list is for: it tells you where to look.
Why that matters, and how contractors use the answer to bid differently, is the subject of our post on construction cost codes and job profitability. Once the codes are in place, the projected cost at completion feeds the estimated cost to complete column in the free WIP schedule template.
Do you have to use CSI codes?
No. Plenty of specialty subcontractors use their own list, and that's fine. The rule that matters is simpler: estimate in the same codes you account in. If your estimator bids in 12 categories and your bookkeeper codes into 40 different ones, there's nothing to compare. CSI numbering helps because architects and engineers already organize the drawings and specs that way, so a scope in the bid package maps to a code without a translation step. If you're setting up job costing in QuickBooks or Sage for the first time, our QuickBooks consulting team can build the list into your file. For the bigger picture, see Construction Accounting 101.