Change Orders and Profit Fade in Construction

Construction finance dashboard showing cash flow

It's Thursday afternoon on a $4M commercial reno. The owner-side PM walks the job with the GC's superintendent and points to a wall.

"Hey, while you guys are here, can you knock that opening over to the corner? Maybe another six feet?"

The super shrugs. "Yeah, no problem. We'll handle it tomorrow."

The crew does the work Friday. Nobody writes it up. The cost, labor plus a little material, runs through the job's books like any other day.

Three months later, the job closes. The final margin comes in at 4 points below estimate.

The owner stares at the variance and can't figure out where it went. Estimating was on. Crews ran efficiently. Subs came in roughly where we carried them. So why is the GP off?

That's where it went.

That, and 25 other little moments like it across the year. Each one a "no problem." Each one unbilled. Add them up and that's two percent of net margin walking out the door.

Let's dive in.

What profit fade actually is

Profit fade is the gap between what you expected a job to make at bid and what it actually made at close. When it shows up on one job, it's a job problem. When it shows up across many jobs, it's a system problem.

The formula is brutal in its simplicity:

  • Profit fade = Bid gross profit % − Actual gross profit %

A 22% bid GP that closed at 18% actual GP has 4 points of profit fade.

If that pattern shows up on most of your jobs, you have a structural fade rate in your business. And structural fade rates compound. Every job you take this year is starting from a slightly lower margin assumption than the prior bid, because the estimator is calibrating to the new normal.

CFMA and FMI data has consistently flagged profit fade as one of the leading drags on contractor profitability. Most contractors don't measure it explicitly. They just live with the year-end gap and call it "the way the business runs."

It's fixable. But you have to start by knowing where it's leaking from.

The 5 ways change orders erode margin

Change orders are the single biggest source of profit fade we see in mid-sized contractors. Not the only source. Profit fade also lives in estimating gaps, productivity issues, and overhead absorption, but change orders are where the largest, most fixable leaks are.

Five leak points. They show up in almost every $10M+ contractor we work with.

1. Performed but unbilled (the one that hides in plain sight)

The Thursday afternoon scenario at the top of this post. Work happens in the field. Cost flows through the books. Revenue never gets billed because nobody wrote up a change order.

Every dollar of unbilled change order work is a total loss. Not a partial margin hit. You ate the cost and got zero revenue. The work cost you the full amount.

A contractor doing $30M with 2-3 unbilled change orders per active job, averaging $8K each, can leak $300K–$500K a year this way. That's a full point of net margin gone before any other leak fires.

2. Disputed but never escalated

Contractor performs work. Bills for it. Customer disputes. The bill sits in AR for 90 days. Eventually somebody decides it's not worth the fight and writes it off, or worse, just lets it age out of the AR aging report into the great unknown.

Disputes happen. The problem isn't disputes. The problem is contractors who give up on disputes too easily because the relationship feels more important than the money, or because the PM doesn't want to have the hard conversation, or because there's no internal process for escalation.

If you're routinely writing off disputed work, you're routinely paying your customers to be your customers. Knock it off.

3. Approved scope, never priced

Some contractors actually get change orders approved in writing, but they don't quantify them. The customer signs off on the scope addition. Nobody attaches a number to it. The work happens. The invoice goes out eventually, sometimes weeks later, sometimes at the wrong rate.

Approved but unpriced change orders are an open-ended exposure. The customer doesn't know what they owe. You don't know what you can collect. By the time the invoice goes out, the customer feels surprised and the negotiation starts over.

Every change order should have a written price before the work starts.

4. Priced at cost, not at base contract markup

This is the leak most owners don't see because it looks normal on the surface.

You bid the base contract at a 25% markup. Customer asks for additional scope. PM writes up the change order at cost-plus-10% because "the customer's been getting tight lately and I didn't want to push back too hard."

You just took on additional risk for 15 points less margin than your base scope. Multiply that across the year and you've meaningfully diluted your average margin without realizing it.

Change orders should be priced at the same markup as base scope unless there's a deliberate strategic reason to deviate. Reactively pricing them lower because someone got squishy in a meeting is a $100K+ per year mistake at most $20M+ contractors.

5. Time impact not captured

This one is the most invisible. A change order adds two weeks to the schedule. The contractor prices the direct cost of the additional work. Labor, materials, equipment, and bills it cleanly.

What doesn't get billed:

  • The extended general conditions for two more weeks (PM time, super time, jobsite trailer, jobsite utilities)
  • The lost productivity from re-sequencing the crew around the new work
  • The schedule impact on the next job that was supposed to start when this one finished
  • The cost of carrying the bond, insurance, and overhead an extra two weeks

Those costs exist. They're sitting on your P&L. They're not on the change order. So your margin on the change order looks fine on paper and the business is absorbing the schedule impact.

Capture time impact. Always.

The number nobody runs: change order margin vs. base contract margin

Here's a simple exercise we run with new clients. It usually changes the conversation.

Pull all the change orders from the last 12 months. Calculate the gross margin on them as a group. Then compare it to the gross margin on the base contracts from the same jobs.

You'll see one of three things:

  • Change order margin matches base margin. Your change order process is working. You're disciplined on pricing and capture. Keep doing what you're doing.
  • Change order margin is 5-15 points lower than base margin. Common. Means you're pricing change orders reactively or absorbing some unbilled work. Fixable in 6 months with a tighter process.
  • Change order margin is 15+ points lower than base margin. Also common, especially in $10M–$20M contractors. Your change orders are quietly draining the business. This is the leak.

We've yet to see a contractor where change order margin was higher than base margin. Which is interesting, because in a well-run contractor it would be the same number, or higher, since the customer is captive and you have pricing power they don't have on a competitive bid.

Run this calculation once a year at minimum. If you can't pull the numbers, that itself is a finding.

The change order process that actually protects margin

Here's the 5-step process that closes the leaks. Each step assigns ownership and creates accountability.

Step 1: No work starts without written authorization

Period. No exceptions. "We'll handle it tomorrow" stops being an acceptable answer.

Your PM gets a request in the field, he says something like:

"Yeah, we can do that. Let me write up the change order tonight and I'll send it over in the morning. As soon as it's signed, we'll get on it."

Cultural shift. Every PM has to be on board. The owner has to back the PM up when a customer pushes back. "This is how we run jobs."

Step 2: Same markup as base scope unless intentionally adjusted

The default rate for change orders is your base contract markup. Deviation from that requires a conversation with operations leadership, not a PM's individual judgment call. Most PMs will discount because it feels easier in the moment. The default has to be the right number.

Step 3: Time impact captured separately from cost impact

Two line items on every change order:

  • Direct cost impact (labor, materials, equipment for the new work)
  • Schedule impact (additional general conditions, productivity loss, extended overhead)

Both get priced. Both get on the change order. The customer can negotiate one or the other, but they can see both.

Step 4: Billed on the next pay cycle, not at job close

Change orders should hit the next pay application, not get bundled into the job close. The longer the lag, the harder collection gets and the more cash you're financing.

If your billing process can't accommodate change order billing on a 30-day cycle, fix the billing process. That's a fixable problem.

Step 5: Reviewed in monthly WIP: change order margin reconciled

In the monthly WIP review meeting we covered in our WIP schedule post, one of the standing agenda items should be: Change order activity this month. What was approved, what's outstanding, what's been billed, what hasn't been.

That standing agenda item is the forcing function. If nobody asks the question monthly, the change orders quietly drift.

Why profit fade hides until year-end (and how to make it visible monthly)

Here's the core problem: profit fade is a trailing metric. By the time you can measure it definitively, at job close, when you have actual costs and actual revenue, it's already done.

The way to surface it monthly is in the WIP. Specifically, by tracking estimated total costs at completion every month and comparing the trajectory to the original bid.

If a job's estimated total cost is creeping up month over month and the contract value isn't moving with it via change orders, your projected GP is shrinking. That's profit fade in progress.

Catching it in month two means you can adjust crews, push for unapproved change order recovery, escalate disputed billings, or have an honest conversation with the customer about the scope reality. All of those are options while the job is active.

Catching it at year-end means absorbing it. There are no options at year-end.

This is why the monthly WIP review meeting matters so much. It's the feedback loop that turns profit fade from a year-end surprise into a month-by-month management decision.

Bonding consequences

One more layer most contractors miss.

Your surety reads profit fade history as a management quality signal. Specifically, they look at:

  • Average variance between estimated GP and final GP across your closed jobs
  • Frequency of jobs that close below bid margin
  • The size and nature of the largest variances

If your portfolio shows a consistent 3-5 point fade across closed jobs, the surety reads that as estimating or execution discipline gaps. They underwrite future bonding capacity with that data in mind. Lower capacity. Higher conservatism.

If your portfolio shows that closed jobs come in at or above bid margin consistently, the surety reads that as management quality. Higher capacity. More benefit of the doubt.

We covered the bonding capacity side in full in our bonding capacity post. The point here: change orders and profit fade aren't just a margin issue. They're a bondable capacity issue. Fix the margin discipline; the bonding capacity follows.

Frequently asked questions

How do I get a customer to sign a change order before work starts?

By setting the expectation in the original contract, training your PMs to enforce it gracefully, and having a script your team uses consistently. The line is: "We'd love to handle that. Let me get the change order written up so we can get on it as soon as you sign it." That's polite, professional, and non-negotiable. Most customers respect contractors who run their business this way.

Is verbal authorization ever OK?

In an emergency, a safety issue, an immediate scope conflict on site, sometimes you have to act and document later. For anything else, no. The contractors that allow "verbal change orders" as a habit are the contractors with the worst profit fade. The exception is the rule disguised as a convenience.

Should I bill change orders separately or in pay applications?

In the pay application, on a separate line. That keeps the customer's billing process simple (one invoice per month) and gives you clean visibility on change order revenue separately from base contract revenue. Internally, you should track them as separate revenue streams for the margin analysis.

Do I lose markup if I do change orders at cost?

Yes. And there's almost no good reason to do change orders at cost. The customer initiated the change. You're absorbing additional risk to accommodate it. The risk has a price. Price it.

What if my customer is a big GC who pushes back on change order markup?

This happens. Sometimes you have to negotiate. Sometimes you decide the relationship is worth a margin concession on a specific change. The mistake is making that concession the default instead of the exception. If your big GC customer has trained your team to discount every change order, that customer is reducing your structural margin and you need to either renegotiate the relationship or rethink the customer.

Should small change orders ($500-$2,000) get the same process?

Yes. The small ones add up. We've seen contractors leak $200K+ a year on change orders that were individually under $2K. The process should be lightweight for small changes. A one-page form or a quick email confirmation works, but the rule (no work without written authorization, at base markup) should apply.


Change orders should add profit, not quietly drain it. If yours are running at a margin you wouldn't accept on a base bid, your process is doing the bleeding.

At Civil CFO, we install the WIP review meeting, the change order discipline, and the margin tracking that surfaces all of this monthly instead of at year-end. We work exclusively with $10M–$70M construction companies trying to move from 1-3% net margin to 10%+. If that's the move you're trying to make, you'll know what to do.