The Orson Group
Orson Group
Field ReportMay 14, 2026 · 4 min read

The Self-Perform Classification Trap: When a GC's Own Crews Have the Wrong Code

General contractors who self-perform often allocate all payroll to a single governing code. NCCI's rules require a split. The mismatch can inflate premium and the mod.

Traci at The Orson Group
By TraciThe Orson Group
Field Report
85%
Of GCs reviewed by Orson had self-perform payroll under the wrong class code
Orson audit data, 2025-2026
At a glance

When a general contractor self-performs carpentry, roofing, concrete, or other trades, NCCI rules require payroll for each trade to be reported under its specific class code, not the GC's governing code. The governing code covers supervision. Self-performed production work belongs under the applicable trade code. Misallocating all payroll to the governing code can inflate premium and distort the mod through incorrect expected loss rates.

A general contractor's workers' compensation policy carries a governing classification code that describes the business as a whole. For a GC that subcontracts all trade work and only provides supervision and project management, the governing code is correct for the entire payroll. The code's expected loss rate and premium rate reflect the risk profile of a supervisory-only operation.

When the same GC self-performs framing, roofing, concrete work, or any other trade, that analysis stops being correct. The self-performed work involves different tasks, different exposures, and different NCCI class codes. The payroll for those workers belongs under the applicable trade code, not under the governing class.

NCCI's experience rating plan computes expected losses per class code. The expected loss rate for a roofing code is different from the rate for a GC governing code. The gap between them determines how much the allocation error affects the mod.

The rate difference is the signal

A GC governing classification code in most NCCI states carries lower expected loss rates than the trade-specific codes for roofing, framing, or concrete. The governing class assumes a supervisory workforce with limited field exposure. The trade codes assume production workers doing the physical tasks that produce the claims.

When all payroll sits under the governing code, the expected losses in the mod formula are calculated using the governing code's lower ELR. A contractor whose actual losses are typical for their payroll mix sees a higher mod because the expected losses are too low to match the operations. The formula compares relatively high actual losses against relatively low expected losses, producing a mod that overstates the contractor's risk relative to their peers.

The opposite pattern also occurs. A GC whose self-performed work falls under a code with a lower ELR than the governing class sees the reverse effect. Expected losses are inflated because the governing code's ELR is higher than what the self-perform code would produce. The mod understates risk. In both cases, the worksheet is wrong.

How large the effect can be

In our reviews of Southeast contractor worksheets, approximately 85% of GCs who self-perform any trade had their self-perform payroll recorded entirely under the governing class code (Orson audit data, 2025-2026). The most common trades involved are carpentry and framing (code 5645) and concrete work (code 5223). Both carry ELRs that differ meaningfully from the GC governing code.

The dollar impact depends on the proportion of total payroll that is self-performed. A GC with $3 million total payroll and $800,000 in self-performed carpentry has roughly 27% of their payroll under the wrong code. The expected loss rate for code 5645 is higher than the GC code in most states. The worksheet underestimates expected losses for that $800,000 by the difference between the two ELRs. A 0.30 difference in expected loss rate per $100 of payroll produces approximately $2,400 in understated expected losses per year. Over a three-year experience period, that is $7,200 in missing expected losses, which translates directly into an inflated mod.

Why carriers assign it this way

Carriers typically classify an account based on the highest-payroll operation reported on the application. If the GC reports 100% of payroll under the GC governing code, the underwriter assigns the entire policy to that code. The carrier's underwriting system does not automatically split self-perform trade work into separate codes. The carrier relies on the employer to report payroll accurately by operation.

The premium audit at the end of each policy period is the point where the carrier checks the allocation. But premium auditors focus on total payroll verification, not on class code accuracy. A premium auditor who sees that all reported payroll matches the governing code will not reallocate it unless the discrepancy is obvious from the payroll records. The class code mismatch is invisible to the audit unless the auditor specifically reviews operational descriptions against each employee's work.

The retroactive fix path

When a class code allocation error is identified, the correction applies retroactively to open policy periods within NCCI's experience window. A corrected unit statistical report reallocates the misclassified payroll to the proper codes. The expected losses for each affected policy year are recalculated. The mod for the current period shifts to reflect the corrected allocation.

Corrections of this type are among the least adversarial audit outcomes. The data is what it is. The payroll was classified under a code that did not match the work performed. The corrected allocation produces a worksheet that matches the operations.

What an audit would check

An audit reviews how your payroll is allocated across class codes against what your crews actually do in the field. If your policy shows a single governing class code covering all employees and you self-perform any production work, the allocation is almost certainly wrong. An audit identifies the self-performed operations, maps each to its correct class code, and quantifies the expected loss rate difference. That difference is the dollar value of the classification error on your mod.

If your NCCI worksheet shows a single governing code and you self-perform carpentry, roofing, concrete, or site work, the allocation is worth reviewing. Send us your worksheet and we'll compare your reporting against the code definitions.

Common Questions

Frequently asked

What is the difference between a governing classification code and a trade-specific code?

A governing classification code covers the general operations of a business as a whole. For a general contractor, the governing code covers supervision, project management, and administrative staff. Trade-specific codes cover the production work of individual trades like carpentry (code 5645), roofing (code 5551), or concrete work (code 5223). NCCI requires that employees be classified according to the work they actually perform, not according to the employer's business type.

How does payroll misclassification affect the experience mod?

The mod formula computes expected losses per class code. When self-perform payroll is reported under the governing code instead of the correct trade code, the expected loss rate applied to that payroll is wrong. If the governing code's ELR is lower than the trade code's ELR, expected losses are understated and the mod is inflated. If the governing code's ELR is higher, the mod is deflated. Either way, the calculation does not reflect the actual risk of the work performed.

Does a premium audit catch this type of classification error?

Not consistently. Premium audits verify total payroll and confirm that the reported payroll matches the employer's records. They do not routinely review whether each employee's work description matches the assigned class code. A class code allocation error between governing and trade-specific codes is unlikely to be flagged during a standard premium audit unless the auditor specifically requests job descriptions or work logs and compares them against the code definitions.

Can a class code allocation error be corrected retroactively?

Yes. When a classification error is identified, the carrier files a corrected unit statistical report that reallocates the payroll to the proper class codes for each affected policy period. NCCI applies the corrected data retroactively within the experience window. The mod is recalculated using the corrected expected losses. The correction typically results in a more accurate mod, and in most cases the direction of the change is favorable to the contractor.

Find Out If Your Mod Is Wrong

Upload your NCCI experience rating worksheet. We'll review it at no cost. If we find errors, you only pay when we recover your money.

Get Your Mod Review