Construction Chart of Accounts for Subcontractors.
A construction chart of accounts for subcontractors separates direct job costs from overhead. Direct costs break into seven categories: material, subcontractor, equipment, tools, labor, direct job expense, and other. Overhead is tracked separately across roughly eight groups. The structure has to mirror your estimating cost codes, or your job costing and your P&L never reconcile.
If your books cannot tell you which jobs make money, the problem is usually the chart of accounts. This page lays out the right structure for a commercial subcontractor: the seven direct job-cost categories, the overhead section, and the levels of detail that actually get maintained.
Why The Generic Setup Fails Construction.
A chart of accounts is the organized list of every account your business uses to record money in and money out; for a subcontractor it has to separate direct job costs from overhead so job costing works. Most subcontractor books are set up by a generic bookkeeper who treats construction like any other business, and that is where it breaks.
The generic setup buckets everything into material, labor, and overhead. That tells you nothing about where a job made or lost money. A construction chart of accounts is built the opposite way. Direct job costs get their own categories that match how you estimate. Overhead sits in its own section so you can finally see your real overhead rate. When the chart mirrors the estimate, actual versus estimated compares apples to apples.
The failure mode is not too few accounts, it is 1,500 line items nobody can read, or three top-level buckets that hide everything. The seven job-cost categories at Level 1 and Level 2 are enough to run a $1M to $12M sub. You only go to Level 3, phase or timing, on labor for jobs over three months.
The Seven Categories.
Every project breaks into these seven direct-cost categories, in this order. This is the spine of a construction chart of accounts.
| Category | What It Holds |
|---|---|
| Material | By commodity type: concrete, PVC, rock, wire. Carry a miscellaneous line for items under $10K. |
| Subcontractor | By trade: electrical, plumbing, concrete. Carry a miscellaneous line for small trades under $10K. |
| Equipment | Owned, rented, trucks, fuel, fees. Tracked separately so idle and overuse show up. |
| Tools | Small tools as one lump budget, roughly 1 percent of total labor dollars. |
| Labor | Fully burdened, by work type. Track dollars vs dollars and hours vs hours. |
| Direct Job Expense | Superintendent, foreman, PM, job trailers, storage, permits, legal tied to the job. |
| Other | Contingency, bond, specialty insurance, project-specific interest. |
Tracked In Its Own Section.
Overhead is everything it takes to keep the business open when you are not building. It gets its own section so you can calculate your real overhead rate, the number most subs guess at. Group it into these categories.
| Overhead Group | Examples |
|---|---|
| Office | Rent, mortgage, electric, water, internet, mobile phones. |
| Software | Project management, accounting, estimating, AI platforms. |
| Administrative | Outsourced IT, website, legal on retainer, outsourced payroll and accounting. |
| Employee Benefits and Development | Payroll taxes, licensing, education, training, fractional staff, marketing. |
| Owned Equipment Idle | Fuel, maintenance, and registration on equipment not charged to a job. |
| Insurance | General liability, workers comp, property, vehicle. |
| Non-Direct Job Employees | Estimating, safety, warehouse, in-house accounting, owner, business development. |
| Miscellaneous | Union dues, state taxes, and anything that does not fit above. |
Three Levels Of Granularity.
Level 1 is the seven broad categories. Level 2 is the subcategories under each. Level 3 is a phase or timing breakdown. For a $1M to $12M sub, run Level 1 and Level 2 always, and use Level 3 only for labor on any project over three months. That is enough to manage a job without drowning the team in line items they will not maintain.
The rule that ties it together: the chart has to mirror your estimating cost codes. Same language, same structure. When the estimate and the books speak the same language, you know in real time whether a job is trending over or under. A $4.9M concrete contractor went from $161K to $1.1M in net profit after job costing was rebuilt on a chart that mirrored the estimate, with no change to crews or pricing. The download template at constructioncfo.net gives you the codes by trade.