CON-310 · Lesson 2 of 12 · 26 min

From estimate to control budget

The estimate that won the job was built to price the work, not to manage it. It may group costs in the way the estimator found convenient, hide contingency in unit prices, carry allowances and plugs, and use crew rates that the field never sees. Before the first crew starts, the project team must convert the estimate into a control budget: a set of budget lines, organized by cost code and cost type, that the field can charge to and the project manager can be held to. This lesson covers the turnover from estimating to operations, the structure of a control budget, buyout adjustments, contingency, and the rules for changing the budget once it is set.

The estimate turnover meeting

The handoff from estimating to the project team usually happens at a turnover meeting soon after award. The estimator walks the project manager and superintendent through the estimate: how each package was priced, which quotes were carried, what was excluded, what assumptions were made about methods, crews and sequence, and where the risks are. The quality of this meeting has a large effect on cost control, because a budget built without understanding the estimate's assumptions will produce variances that nobody can explain.

What an estimate turnover package should contain.
Turnover itemWhy the project team needs it
Bid summary and markup structureShows what fee, contingency and general conditions were carried
Subcontract and supplier quotes carried, with leveling sheetsStarting point for buyout; shows scope gaps and plugs
Self-performed takeoff, crews and productivity assumptionsBasis for the field budget in hours and unit rates
Method and sequence assumptionsFormwork sets, crane use, phasing and access the price depends on
Allowances and alternatesAmounts carried for work not fully defined; what the contract says about them
Exclusions and clarifications in the bidWhat the owner will pay for as a change
Risk register and known exposuresItems the estimator priced as risk or left uncovered
Schedule used for general conditionsDuration and staffing the general conditions budget assumes

The project team should leave the meeting with a list of open items: packages not yet bought out, quantities that need checking, assumptions the superintendent disagrees with, and risks that need a plan. Disagreements are healthy at this stage; it is much cheaper to discover that the superintendent plans a different formwork system before the budget is set than after three months of variances.

Structure of a control budget

A control budget is a table of budget lines. Each line has a cost code identifying the work (Lesson 3), a cost type identifying the kind of cost, a budget amount and, for self-performed work, a budget quantity and budget hours. The cost types commonly used are labor, material, equipment, subcontract and other (permits, fees, consultants). Separating cost types matters because each is recorded and controlled differently: labor through timecards and productivity, material through purchase orders and receipts, equipment through rental and usage records, and subcontracts through commitments and progress billings.

A single self-performed budget line.
FieldExample: slab-on-grade forming, Riverbend Commons
Cost code03 11 13.10 Slab edge forms
Cost typeLabor
Budget quantity and unit1,345 lf of edge form
Budget hours246 crew-hours
Budget unit rate0.18 h/lf
Budget amount$19,926
NotesIncludes stripping; excludes keyway, which is coded separately

For subcontracted work, a budget line usually carries only an amount, often one line per subcontract package. For self-performed work, carrying quantities and hours as well as dollars is what makes productivity tracking possible later (Lessons 4 and 5). Without budget hours, the field can only see that it has spent more money than planned, not whether the cause is slow work, higher wages or a quantity error.

Mapping the estimate to the budget

Estimates and budgets rarely line up one to one. The estimator may have priced concrete as an all-in rate per cubic meter, while the field needs separate lines for forming, reinforcing, placing and finishing. The estimate may carry general conditions as a single lump sum, while the budget needs lines for supervision, trailers, temporary power, hoisting and cleanup. Mapping the estimate into control lines usually involves splitting some items, combining others and moving amounts between cost types.

Flow diagram from the estimate, through a mapping step where estimate items are split, combined and assigned cost codes and cost types, to the original control budget, then through buyout adjustments and approved transfers to the current budget, with contingency and fee shown as separate lines.
From estimate to current budget: the original budget is fixed at turnover and every later change is recorded.

Two rules keep the mapping honest. The total of the original control budget must equal the total cost of the estimate (excluding fee), so that nothing is lost or invented in translation. And every budget line must be traceable back to estimate items, so that when a variance appears the team can see what the estimator assumed.

# Map three estimate items into control budget lines (amounts $)
estimate = {
    "Concrete slab on grade, all-in": 312_400,      # priced per unit area
    "General conditions, lump sum": 1_904_000,
    "Drywall package (sub quote)": 1_418_000,
}
split = {
    "Concrete slab on grade, all-in": [("03 11 13 Forming", "L", 0.18), ("03 11 13 Forming", "M", 0.05),
                                       ("03 21 00 Reinforcing", "S", 0.17), ("03 31 00 Concrete supply", "M", 0.42),
                                       ("03 31 00 Placing and finishing", "L", 0.14), ("03 35 00 Curing and sealing", "M", 0.04)],
    "General conditions, lump sum": [("01 31 00 Supervision", "L", 0.46), ("01 52 00 Site offices", "E", 0.09),
                                     ("01 51 00 Temporary utilities", "O", 0.08), ("01 54 00 Hoisting", "E", 0.22),
                                     ("01 74 00 Cleanup", "L", 0.06), ("01 56 00 Protection and hoarding", "M", 0.09)],
    "Drywall package (sub quote)": [("09 21 16 Drywall and ceilings", "S", 1.00)],
}
budget = []
for item, amount in estimate.items():
    shares = split[item]
    assert abs(sum(s for _, _, s in shares) - 1) < 1e-9, item
    for code, ctype, share in shares:
        budget.append((code, ctype, round(amount * share)))
for code, ctype, amt in budget:
    print(f"{code:<34} {ctype}  {amt:>10,}")
print("Estimate total", f"{sum(estimate.values()):,}", "| budget total", f"{sum(a for *_, a in budget):,}")
Output
03 11 13 Forming                   L      56,232
03 11 13 Forming                   M      15,620
03 21 00 Reinforcing               S      53,108
03 31 00 Concrete supply           M     131,208
03 31 00 Placing and finishing     L      43,736
03 35 00 Curing and sealing        M      12,496
01 31 00 Supervision               L     875,840
01 52 00 Site offices              E     171,360
01 51 00 Temporary utilities       O     152,320
01 54 00 Hoisting                  E     418,880
01 74 00 Cleanup                   L     114,240
01 56 00 Protection and hoarding   M     171,360
09 21 16 Drywall and ceilings      S   1,418,000
Estimate total 3,634,400 | budget total 3,634,400

The check at the end matters: if rounding or a missed share made the budget total differ from the estimate, the difference would show up later as an unexplained variance. In practice the mapping is done in the estimating or project management software, but the same check should be run.

Buyout adjustments

Buyout is the process of awarding subcontracts and purchase orders after the contract is won (CON-330 covers it in detail). The prices finally agreed rarely equal the amounts carried in the bid. When a package is bought for less than the budget, the difference is a buyout gain; when it costs more, a buyout loss. Buyout also often moves scope between packages: the drywall subcontractor may agree to supply wood backing that the estimator had carried in carpentry, or the electrical subcontractor may exclude temporary power that then has to be budgeted elsewhere.

Contractors handle buyout results in one of two ways. Some revise the budget line to the bought price and move the gain or loss to a buyout or contingency line, so that the subcontract budget always equals the commitment. Others leave the original budget unchanged and let the gain or loss show as a variance on that line. Either works if it is consistent and visible. What should not happen is for buyout gains to be quietly absorbed into other lines, which hides problems elsewhere and makes the job look healthier than it is.

Worked problem

Recording buyout on Riverbend Commons

The drywall package was carried at $1,418,000. It is bought for $1,371,500, but the subcontractor excludes wood backing, which Northline will self-perform at an estimated $14,800. The roofing package carried at $612,000 is bought at $633,400. How should the net buyout result be shown?

Show solution
  1. Drywall: 1,418,000 − 1,371,500 = $46,500 gain on the subcontract line.
  2. Backing now self-performed: add a carpentry budget line of $14,800 funded from the drywall gain.
  3. Net drywall gain: 46,500 − 14,800 = $31,700.
  4. Roofing: 633,400 − 612,000 = $21,400 loss.
  5. Net buyout result: 31,700 − 21,400 = $10,300 gain, moved to the buyout reserve line.

Answer: Budget the drywall line at $1,371,500, add $14,800 for backing, budget roofing at $633,400, and credit the $10,300 net gain to a visible buyout reserve, not to the fee or to other cost lines.

Contingency, allowances and fee

Estimates often contain several kinds of money that are not tied to specific work. Each needs its own line in the control budget, because each is governed by different rules.

Lines in a control budget that are not tied to specific work.
LineWhat it coversWho controls it
Contractor's contingencyRisks within the contractor's scope: estimate errors, productivity, minor scope gapsProject manager, with management approval above set limits
Owner's contingencyOwner changes and unknowns; usually held outside the contractor's priceOwner
Cash or specified allowancesWork described but not fully defined, such as hardware or signageSet by the contract; unused amounts usually return to the owner
Buyout reserveNet buyout gains and lossesProject manager and operations manager
Fee or profitThe contractor's marginNot a cost line; never used to absorb overruns without disclosure

Contingency deserves particular care. If it is spread across cost lines at the start, it disappears from view and the team has no way of knowing how much risk cover is left. If it sits in a single line, every draw on it must be recorded with a reason, and the forecast can show contingency remaining against risks remaining. CON-350 explains how contingency is sized and managed against a risk register; for cost control the key point is that contingency use is a budget transfer and must be documented like one.

On cost-plus and GMP contracts, the treatment of contingency, allowances and savings is set by the contract, for example in the AIA A102 and A133 or ConsensusDocs 200-series forms. The cost report must follow those definitions exactly, because the owner will audit them.

Original budget, current budget and transfers

Once the control budget is set, it is fixed as the original budget. From then on, changes are recorded so that anyone can trace the current budget back to the original. Three kinds of change are normal. Approved change orders add or remove budget along with contract value (Lesson 10). Buyout adjustments move money between subcontract lines and the buyout reserve. Budget transfers move money between lines, for example from contingency to a cost line where a risk has occurred, or from one cost code to another when work is reorganized.

Every transfer should be recorded with a number, date, amount, the lines affected and a reason, and should be approved by someone with authority. A budget that changes without records turns the cost report into fiction: if lines are adjusted each month to match actual cost, there will never be a variance to explain, and the forecast will always look good until the job ends.

original = {"03 11 13 L": 56_232, "06 10 00 L": 182_000, "09 21 16 S": 1_418_000,
            "07 50 00 S": 612_000, "Buyout reserve": 0, "Contingency": 289_700}
log = [
    ("BT-01", "Buyout drywall", {"09 21 16 S": -46_500, "06 10 00 L": 14_800, "Buyout reserve": 31_700}),
    ("BT-02", "Buyout roofing", {"07 50 00 S": 21_400, "Buyout reserve": -21_400}),
    ("BT-03", "Extra formwork crew for winter protection risk", {"Contingency": -18_600, "03 11 13 L": 18_600}),
]
current = dict(original)
for no, why, moves in log:
    assert sum(moves.values()) == 0, no          # transfers must net to zero
    for line, amt in moves.items():
        current[line] += amt
for line in original:
    print(f"{line:<15} original {original[line]:>10,}  current {current[line]:>10,}")
print("Totals:", f"{sum(original.values()):,}", f"{sum(current.values()):,}")
Output
03 11 13 L      original     56,232  current     74,832
06 10 00 L      original    182,000  current    196,800
09 21 16 S      original  1,418,000  current  1,371,500
07 50 00 S      original    612,000  current    633,400
Buyout reserve  original          0  current     10,300
Contingency     original    289,700  current    271,100
Totals: 2,557,932 2,557,932

Each transfer in the log nets to zero, so the total budget is unchanged; only approved change orders change the total. The cost report then shows both columns, original and current, so that management can see how much the budget has moved and why.

Budgeting general conditions

General conditions, the time-related costs of running the site, deserve their own attention because they are driven by the schedule rather than by quantities. Supervision, site offices, temporary utilities, hoisting, cleanup and protection all accrue month by month. The budget for them should therefore be expressed as a monthly rate as well as a total, so that a schedule extension can be costed immediately. On Riverbend Commons, if general conditions total $1,904,000 over 16 months, a one-month extension costs roughly $119,000 at the average rate, more if it falls when the crane and hoist are on site. CON-300 Lesson 8 explained how general conditions are estimated from the schedule; the control budget should keep that link.

Common mistakes

  • MistakeSetting up the budget from the estimate without a turnover meeting.

    InsteadHold a turnover meeting so the project team understands quotes, assumptions, exclusions and risks.

  • MistakeCarrying only dollars for self-performed work.

    InsteadCarry budget quantities and hours as well, so productivity can be tracked.

  • MistakeLetting the budget total drift from the estimate during mapping.

    InsteadCheck that the original control budget equals the estimate cost and that every line traces back to estimate items.

  • MistakeAbsorbing buyout gains into other lines.

    InsteadRecord gains and losses visibly, in the subcontract lines or a buyout reserve.

  • MistakeSpreading contingency across cost lines at the start.

    InsteadHold contingency in its own line and record every draw as a documented transfer.

  • MistakeAdjusting budget lines each month to match actual cost.

    InsteadFix the original budget; change it only through approved changes, buyout adjustments and documented transfers.

Summary and key terms

  • The estimate must be converted into a control budget organized by cost code and cost type before work starts.
  • A turnover meeting passes quotes, assumptions, exclusions, risks and methods from estimating to the project team.
  • Self-performed budget lines should carry quantities and hours as well as dollars.
  • The original control budget must total the estimate cost and trace back to estimate items.
  • Buyout gains and losses should be recorded visibly, not absorbed into other lines.
  • Contingency, allowances, buyout reserve and fee each need their own line and rules.
  • After set-up, the budget changes only through approved changes, buyout adjustments and documented transfers.
Turnover meeting
The meeting where estimators hand the estimate and its assumptions to the project team.
Cost type
The category of cost on a budget line: labor, material, equipment, subcontract or other.
Original budget
The control budget as first set up from the estimate.
Current budget
The original budget plus approved changes, buyout adjustments and transfers.
Buyout
Awarding subcontracts and purchase orders after contract award.
Buyout gain or loss
The difference between the amount carried in the budget and the price finally agreed.
Budget transfer
A documented movement of budget between lines that nets to zero.
Contractor's contingency
A budget line covering risks within the contractor's scope.
Allowance
An amount carried for work described but not fully defined, governed by the contract.
General conditions
Time-related site costs such as supervision, offices, utilities and hoisting.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. List four items in an estimate turnover package.

    Show answer

    Bid summary, quotes carried and leveling sheets, self-performed takeoff and productivity, method assumptions, allowances, exclusions, risk register, schedule.

  2. Why should self-performed budget lines carry hours?

    Show answer

    So the team can separate productivity problems from wage or quantity problems.

  3. An estimate totals $9,640,000 in cost. The control budget totals $9,612,000. What should be done?

    Show answer

    Find the missing $28,000 before the budget is fixed; the totals must match.

  4. A package carried at $480,000 is bought for $455,000. What is the buyout result?

    Show answer

    A $25,000 gain.

  5. What is wrong with spreading contingency into unit rates?

    Show answer

    Contingency disappears from view, so nobody knows how much risk cover remains.

  6. A transfer moves $12,000 from contingency to masonry labor. Does the total budget change?

    Show answer

    No; transfers net to zero.

  7. What changes the total budget?

    Show answer

    Approved change orders.

  8. General conditions total $1,440,000 over 12 months. What is the average monthly rate?

    Show answer

    $120,000 per month.

  9. Who usually controls the owner's contingency?

    Show answer

    The owner.

  10. Why must budget transfers be approved and recorded?

    Show answer

    So the current budget can be traced to the original and variances are not hidden.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz