Skip to content
Back to blog

Construction Labor Burden Rate Calculator in Excel: Bid the True Cost of an Hour

9 min read·June 20, 2026
Flat minimalist illustration of a construction labor burden concept: an orange hard hat beside dollar-sign blocks, a rising stacked bar chart, a calculator, and a spreadsheet grid

A framing contractor wins a $4.2 million apartment job and staffs it with carpenters at $25 an hour. The estimate carried labor at $25 an hour, because that is the number on the timecard and the number in the checkbook. Eight months in, the job is 9 percent over on labor and nobody can find the leak. The leak is not theft and it is not slow crews. It is that a $25 carpenter does not cost $25. He costs closer to $40 once you load payroll taxes, workers comp, general liability, benefits, and the hours you pay him for but never bill. A construction labor burden rate calculator in Excel exists to put that real number in front of you before you sign the contract, instead of finding it in the closeout meeting.

Most contractors handle burden with a guess. They tack 30 percent onto the wage, call it loaded, and move on. The guess is wrong in both directions. On a high-comp trade like roofing or steel it is far too low and you bleed margin on every hour. On a clean office crew it can be too high and you lose bids you should have won. Burden is not one number. It is a rate you build per trade, from real components, divided by the hours you actually get out of a worker. Get the denominator wrong and the whole thing collapses, which is exactly where most spreadsheets break.

What a Labor Burden Rate Actually Is

The labor burden rate is the percentage you add to a worker's bare wage to get the true cost of one hour of his labor on your job. Bare wage is what hits his paycheck. The burdened rate is what hits your bank account. The gap is everything you are legally and practically required to spend to keep that person on the payroll and on the site.

Two contractors bidding the same scope with the same $25 wage can have a fully burdened cost that differs by $8 an hour, and both are correct. One runs a 1.45 experience modification rate and pays a $14 per $100 comp premium. The other runs 0.78 and pays $6. One offers family health coverage, the other offers none. The burden rate is where your actual business shows up in your bid, and a flat 30 percent erases all of it. The point of a labor burden rate formula is to stop pretending every worker and every trade carries the same overhead.

The Burden Components Most Contractors Forget

Start with the statutory costs, the ones you cannot opt out of. Then layer the discretionary costs, the ones that are real money even though a competitor might skip them. Here is the full build-up on a $25 carpenter working 2,080 paid hours a year, $52,000 in gross wage.

Burden componentBasisAnnual cost
Gross wage$25.00 x 2,080 hrs$52,000
FICA (Social Security + Medicare)7.65% of wage$3,978
FUTA (federal unemployment)0.6% on first $7,000$42
SUTA (state unemployment)3.5% on first $14,000$490
Workers comp (carpentry, $9.50 per $100)9.5% of wage$4,940
General liability allocated to labor1.2% of wage$624
Health insurance$650 per month$7,800
Retirement match3% of wage$1,560
Small tools, PPE, training, vehicleflat allocation$1,200
Total annual cost$72,634

The two components that get dropped most often are the unemployment taxes and the comp class code. FUTA and SUTA look trivial because they are capped on a low wage base, and they are small, but the bigger trap is treating comp as a single company number. Workers comp is priced by class code, and the codes are not close. Clerical work might run under $1 per $100 of payroll. Carpentry sits near $9 to $11. Roofing and structural steel can clear $25 to $40 per $100 in some states. If you load every trade at one blended comp rate, you underbid the dangerous trades and overbid the safe ones, and the dangerous trades are exactly where a bad job hurts most.

The Denominator That Wrecks the Number

Here is the mistake that turns a careful burden build-up into a wrong answer. You add up $72,634 of annual cost and you divide by 2,080 hours, because 2,080 is the standard work year. That gives $34.92 an hour and a burden rate of 39.7 percent. It feels right. It is still too low, because you do not get 2,080 productive hours out of that carpenter. You get closer to 1,800.

You pay for a full year. You bill for the hours a crew is actually moving work, and the difference is large. Holidays, vacation, sick days, safety meetings, rained-out mornings, and the unbillable hour spent driving between two jobs all come out of the same 2,080 you paid for.

Paid hoursHours
Total paid hours2,080
Holidays (6 days)-48
Vacation (10 days)-80
Sick and personal (5 days)-40
Training and safety meetings-40
Weather, travel, and downtime-72
Productive billable hours1,800

Now divide the same $72,634 by 1,800 productive hours and the true cost to put one billable hour of carpentry in place is $40.35. That is a 61 percent burden over the bare $25 wage, not 39.7 percent. The 2,080 method understates your cost by $5.43 on every hour you bill. On a job with 4,000 productive labor hours, that is $21,720 you forgot to charge for, sitting on top of whatever margin you thought you had. The components are the easy part. The denominator is what separates a real fully burdened labor rate from a comforting one.

Build the Construction Labor Burden Rate Calculator in Excel

Set up one input column you can change per trade, and let the formulas produce the burdened rate and the burden percentage automatically. Use this layout in column B, with labels in column A.

CellInputExample value
B2Base hourly wage25.00
B3Annual paid hours2,080
B4Annual non-productive hours280
B5Workers comp rate per $1 of payroll0.095
B6GL allocation rate0.012
B7Annual benefits (health + retirement + tools)10,560

The core formulas

Annual gross wage in B8 multiplies wage by paid hours: =B2*B3. This is the $52,000 base everything else loads onto.

Statutory taxes in B9 stack FICA, federal unemployment, and state unemployment, each on its correct base: =B80.0765+MIN(7000,B8)0.006+MIN(14000,B8)*0.035. The MIN functions stop the unemployment taxes from running on the full wage, which is the cap most quick formulas get wrong.

Insurance in B10 combines comp and general liability against gross wage: =B8*(B5+B6). Because B5 is the comp rate, you change one cell to reprice the entire sheet for roofing, steel, or clerical work instead of rebuilding it per trade.

Total annual cost in B11 adds wage, taxes, insurance, and benefits: =B8+B9+B10+B7. With the example inputs this returns $72,634.

Now the part that matters. Productive hours in B12 strip non-productive time from paid hours: =B3-B4, which returns 1,800. The fully burdened rate in B13 divides total cost by productive hours, not paid hours: =B11/B12, returning $40.35. The burden percentage in B14 shows how far over bare wage you actually run: =B13/B2-1, returning 0.61, or 61 percent.

The sanity check that catches a broken sheet

Add a flag in B15 so a wrong number announces itself instead of flowing into a bid: =IF(B14<0.35,"CHECK - burden too low to be real",IF(B14>0.90,"CHECK - verify comp and benefits","OK")). A real construction burden rate almost never lands under 35 percent. If your sheet spits out 28 percent, you either dropped a component or you divided by 2,080. The flag turns a silent error into a visible one before it reaches a client.

One rate per trade, not one rate per company

Copy the input column across for every trade you carry and let the comp rate and wage drive the spread. The same structure produces a very different burdened cost once the real workers comp class code rate is in play.

TradeBare wageComp per $100Burdened rateBurden %
Laborer$22.00$7.20$34.1055%
Carpenter$25.00$9.50$40.3561%
Roofer$28.00$28.00$54.9096%
Ironworker$34.00$24.00$62.7084%

Look at the roofer. A 96 percent burden means that $28 wage costs you nearly $55 a billing hour, almost double. A contractor who loads all four trades at a flat 35 percent would bid the roofer at $37.80 and lose $17 an hour on every roofing hour in the job. That is not a rounding error. That is the difference between a profitable quarter and explaining to your bank why the line of credit is maxed.

Put the Real Number in Every Bid

Labor burden is the single most underbid line in construction, and it is underbid for a boring reason: the true rate is annoying to calculate and easy to fake. A flat markup is fast, it feels conservative, and it is wrong on exactly the trades that can sink you. The fix is not complicated math. It is a build-up of the components you actually pay, divided by the hours you actually bill, with a flag that yells when the answer is too clean to be true.

If you would rather not wire the comp class codes, unemployment caps, and productive-hour logic by hand, the SheetCraft Construction Budget Tracker ships with a labor burden calculator already built per trade, feeding straight into job costing and bid pricing. You enter the wage, the comp rate, and the benefits, and it returns the fully burdened rate and the burden percentage with the sanity flags in place. Plug your trades in once, and every bid you write after that carries the real cost of an hour instead of a hopeful one.

Related template

Construction Budget Tracker

Track every line item, change order, and payment across your entire project. Spot a $23K billing discrepancy before it hits your bottom line — not after.

Get the Template — $49