December 16, 2025
Fixed vs. Variable Costs in Contracting: How to Price Accordingly
Contractors underprice when they ignore fixed overhead. Separating fixed and variable costs, building overhead into hourly rates, and pricing small jobs higher creates consistent, predictable profit.
.png)
Most contractors think they know their costs. They know what they pay for materials, what they pay their crews, what fuel costs this week, and what their supplier charges for wire, copper, lumber, or roofing. But when you look closely at how contractors price work, you can see that many bids are built on instinct more than true cost understanding.
And in the trades, instinct is expensive.
If you don’t understand the difference between fixed costs and variable costs - and how they should shape your pricing - you’ll constantly wonder why two jobs with the same labor and material mix produce completely different profit. Smart contractors don’t just calculate costs; they categorize them. And that’s how they protect their margins even when the market shifts.
Why most contractors underprice without realizing it
On paper, pricing seems simple: estimate labor, add materials, apply markup, send the bid.
But behind that formula are costs you pay no matter what - and costs that rise and fall with the amount of work you do. When you blend these two categories without understanding them, your bids end up inconsistent, your profit becomes unpredictable, and you accidentally price jobs in a way that barely covers overhead.
This is why one small job might feel profitable, while a larger one somehow feels worse - even though you used the same multiplier.
To fix this, you need to separate the two categories and price each job in a way that ensures the job pays for its share of your business.
Fixed Costs:
the bills that don’t care how busy you are
Fixed costs are the expenses you pay whether you have five jobs this month or fifty. They’re the cost of just being in business, and every contractor has them.
Here’s what fixed costs usually include:
- Office admin wages
- Office rent or mortgage
- Insurance (general liability, workers comp, auto)
- Vehicle payments
- Software subscriptions
- Marketing budget
- Shop rent
- Phones, utilities, accounting
- Loan payments
- Salaried staff, including project managers
These costs don’t disappear when you have a slow month. They don’t shrink because a job was delayed. And this is where many contractors get into trouble: fixed costs don’t get charged to jobs, so jobs aren’t paying for them.
That means the company is - out of its own pocket.
The top 10% of contractors do this differently. They build fixed costs right into their hourly rate or markup, so every job - big or small - carries its weight.
Variable Costs:
the expenses that move with production
Variable costs rise and fall depending on how much work you do. These include:
- Jobsite materials
- Subcontractors
- Hourly labor
- Fuel used for travel
- Consumables (blades, bits, tape, caulk, screws)
- Equipment rental
- Waste disposal
- Freight and delivery fees
- Permit costs
These are much easier to track because they follow the job. The more work you do, the more variable costs you incur. Good estimators are skilled at forecasting these; the challenge is understanding how they interact with fixed costs.
The mistake most contractors make:
mixing the two
Here’s where contractors lose margin: they treat all costs like variable costs.
That’s how you end up with:
- Hourly rates that barely cover payroll
- Markups that don’t touch overhead
- Estimates that assume “this job will be profitable” without confirming it
If you don’t assign fixed costs to each job, then your company operates at a deficit - and your next big job is paying for the last job’s failures.
You wouldn’t order concrete without calculating how much the pour needs. You shouldn’t price work without calculating how much overhead each job needs to pay.
How to price jobs using fixed and variable costs correctly
Step 1: Know your real hourly cost
Every crew member has: their wage, payroll tax, workers comp, benefits, PPE/tools allowance, vehicle costs (if assigned).
But here’s what many contractors forget:
Each field hour also needs to cover a share of your fixed overhead.
If your company spends $300,000/year on fixed costs, and your crews produce 10,000 billable hours per year, then each billable hour needs to carry $30 of overhead, on top of labor burden.
Suddenly, that $35/hour wage tech actually costs you $65/hour before you even add profit.
Many contractors only charge $60-75/hour for that tech - which means they’re giving away work at a loss without realizing it.
Step 2: Apply markup that reflects reality, not hope
Your markup isn’t guesswork.
It’s math.
Markup must cover: variable job costs, each job’s share of fixed overhead, profit
If you skip the second thing in that formula, your markup is wrong - even if your labor and materials are accurate.
A 40% markup on materials might sound healthy, but if your overhead factor isn’t built into your labor burden or job cost structure, you’re still leaking profitability.
Step 3: Price small jobs differently than large jobs
This is where many contractors finally see the light.
Small jobs often carry much more overhead per dollar of revenue because they include travel, setup time, cleanup, admin time for invoicing and scheduling.
Larger projects spread fixed overhead more efficiently - so small jobs need a higher rate.
Smart contractors use:
- Higher minimum service rates (HVAC/electrical/plumbing)
- Minimum mobilization charges (concrete, roofing, mechanical)
- Fixed trip charges
- Tiered hourly rates depending on job size
Small jobs are only profitable when priced to carry the true burden of fixed overhead.
Step 4: Use your overhead factor to create consistent pricing
Once you know your annual fixed overhead, expected billable hours and burdened labor cost, you can build a consistent pricing model that keeps every job profitable.
This makes your business:
- Predictable
- Scalable
- Less dependent on desperate bidding
- Less vulnerable to slow seasons
It’s the difference between hoping you priced a job right and knowing you did.
A Real Example:
why two jobs with the same labor can have different profit
Take a small electrical contractor:
- Fixed overhead: $240,000/year
- Billable hours: 12,000
- Overhead per billable hour: $20
- Electrician burdened wage: $42/hr
- Total hourly cost: $62/hr
- Desired profit: 15%
Now apply this to two jobs:
Job A: One-day service call
- 6 hours on-site
- 1 hour travel/setup
- Material cost: $85
This job uses 7 billable hours. So:
7 × $20 overhead = $140 overhead cost
7 × $42 labor = $294 labor cost
Materials: $85
Total cost: $519
Add 15% profit → $597
If priced anything below $600, the job loses money.
Job B: A five-day tenant improvement
- 40 hours on-site
- 5 hours total travel/setup
- Material cost: $3,200
45 billable hours × $20 overhead = $900 overhead cost
45 × $42 labor = $1,890 labor cost
Materials: $3,200
Total cost: $5,990
Add 15% profit → $6,888
The big job is more efficient - overhead is spread across more hours.
This is why small jobs must be priced higher per hour than big ones, otherwise they cannibalize your profit.
The contractors who get this right win more than money
Understanding fixed vs. variable costs does more than improve pricing. It gives you control.
Contractors who price accurately experience:
- Consistent margins
- Less fear of slow weeks
- Better cash flow
- The confidence to turn down bad work
- The ability to grow without “accidentally” growing broke
They stop living job to job.
They stop underbidding to stay busy.
They stop guessing.
Profit isn’t in the job - it’s in the math
Every contractor works hard. But hard work doesn’t guarantee profit.
Understanding your cost structure does.
When you separate fixed and variable costs and price jobs accordingly, you’re no longer gambling on estimates - you’re running a business with predictable, reliable margin.
Correct pricing doesn’t just protect profit.
It protects your future.
If you want the right tool to keep track of everything and price your jobs as easy as possible, book a demo and let us show you how MotionOps is your new best friend.
.png)
.png)