Owner as general contractor: budget, payments and milestones per trade
Without a general contractor, you are the one reconciling every trade's quote, change orders and payments. One workbook holds each trade's contract and balance due and compares what you paid with your own estimate of work done.
Free: Contingency & Change Order Tracker, one Excel tab. Confirm your email and the file arrives right away, plus an occasional note (at most one a week) on keeping a renovation on budget. Unsubscribe in one click. Privacy.
General information only, not financial, construction or legal advice. Contingency, holdback and payment-split percentages are your own inputs, and payment and deposit rules vary by contract and by state or province; check yours. Names and numbers in the example are invented.
What changes for this kind of project
In this kitchen the owner hires five trades directly and buys the cabinets and appliances. Framing, electrical and plumbing are under way and part-paid, while tile and paint have nothing paid yet. Every trade has its own line and its own row on the Contractors tab, which adds approved change orders to the original contract and shows paid and balance due.
Two approved change orders raised what is owed: the wall opening on the framing line and the refrigerator circuit on the electrical line. The plumber's drain move is still Proposed, so it sits in pending exposure and leaves Committed alone. The plumbing quote already sits above its line budget, and the appliance line has no accepted quote yet, so it reads Not committed.
A worked example: Kitchen remodel, owner-managed
Invented numbers, to show the shape. Settings on Start Here: contingency 15% (an example value you set), total project budget $28,000.
The contingency pool is $4,200 ($28,000 x 15%). That leaves $23,800 to share out as line budgets. The lines below add up to $23,800, so $0 is unallocated.
| Line | Item | Contractor | Line budget | Committed | Paid | Unpaid commitment | Flag |
|---|---|---|---|---|---|---|---|
| L01 | Framing: old cabinet removal and new blocking | Apex Carpentry | $4,500 | $4,850 | $2,100 | $2,750 | Over budget |
| L02 | Electrical: new circuits, outlets and lighting | Circuit Electric | $3,200 | $3,380 | $1,550 | $1,830 | Over budget |
| L03 | Plumbing: sink relocation and drain line | Flow Plumbing | $2,800 | $2,900 | $1,450 | $1,450 | Over budget |
| L04 | Backsplash tile and grout | Tile Artisans | $2,400 | $2,400 | $0 | $2,400 | OK |
| L05 | Paint and finishing | Premier Painting | $1,800 | $1,700 | $0 | $1,700 | OK |
| L06 | Cabinets and countertop (owner-purchased) | Owner-bought | $5,600 | $5,400 | $0 | $5,400 | OK |
| L07 | Appliances and fixtures (owner-purchased) | Owner-bought | $3,500 | $0 | $0 | $0 | Not committed |
| Total | $23,800 | $20,630 | $5,100 | $15,530 |
Change orders on the Change Orders tab. Only Approved rows move into Committed:
| CO# | Line | What changed | Amount | Status |
|---|---|---|---|---|
| CO1 | L02 | Install dedicated circuit for new refrigerator | $280 | Approved |
| CO2 | L03 | Relocate sink drain lower due to floor joist conflict | $320 | Proposed |
| CO3 | L01 | Remove extra wall section for open kitchen concept | $650 | Approved |
What the summary shows
- Committed: $20,630. Paid: $5,100. Unpaid commitment: $15,530.
- Contingency used: $630, what each line's committed total goes above its line budget, added up. Contingency left now: $3,570.
- Pending exposure (Proposed change orders): $320. Contingency left if every proposed change order were approved: $3,250.
Where each piece goes in the workbook
- Budget: One row per trade scope, plus one row for each owner-bought item. Type the accepted quote on each trade line and leave it empty on the appliance line until you decide; it reads Not committed. List the five trades on Start Here first.
- Change Orders: Log the wall opening and the refrigerator circuit as Approved and the drain move as Proposed. Approved rows add to that trade's current contract on the Contractors tab; Proposed rows appear as its pending change orders.
- Cash Schedule: Add milestones per trade as a percent of contract or a Fixed $ amount. Percent rows use the original quote, so give the approved wall opening and refrigerator circuit their own Fixed $ rows. Put the Milestone ID on the matching Payments row to show it paid.
- Contractors: Type your own % complete for each trade. Paid ahead of work compares what you have paid with that estimate: positive means paid for more work than is done. The sheet cannot see the work, so the result is only as good as your estimate.
Two formulas worth a cell of their own
- Committed for one room:
=SUMIFS(Budget!$K$6:$K$65,Budget!$B$6:$B$65,"Kitchen")returns $20,630 on this example. - Contingency used, the sum of the Overrun now column:
=SUM(Budget!$S$6:$S$65)returns $630.
Four tracking tips
- Type each trade's milestones in the order you expect to pay them, with a due date on every row. The Due within 30 days total on the Cash Schedule then adds the unpaid milestone amounts due by then, overdue ones included, and nothing you left off the schedule.
- The cabinets and appliances have no contractor, so they never appear in a trade's contract or balance due. They still count in the Budget totals, and the unquoted appliance line forecasts at its line budget until you type a quote.
- Update % complete before you pay an invoice, not after. Paid ahead of work uses only the estimate you typed, so a stale number can make the partly paid framing line look ahead or behind.
- The drain move is Proposed. Before you say yes, check Contingency left if all pending approved: the plumbing quote is already above its line budget, so approving the move adds to an overrun that is drawing on the pool.
Questions
What does a negative Paid ahead of work number mean?
It means you have paid for less work than you estimate is done, so the trade is ahead of your payments. A positive number means you have paid for more work than is done. Either way it rests on the % complete you typed on the Contractors tab, not on an inspection.
Where do I log a payment that is not tied to a milestone?
Log it on the Payments tab with its Line ID and leave Milestone ID empty. It still counts in Paid and Unpaid commitment on the Budget tab. It just does not mark any Cash Schedule milestone as paid.
Related renovation guides
- Contractor payment schedule template for homeowners in Excel
- Renovation budget by room spreadsheet: SUMIFS per room, with an overrun flag
- Contractor bid comparison spreadsheet for homeowners
More renovation budget guides
- Renovation budget spreadsheets by room and project type
- Budget for adding a new bathroom: rough-in, fixtures and permits
- Attic conversion budget: handling structural surprises
- Basement finishing budget spreadsheet: quotes, change orders and contingency
- Deck budget spreadsheet: material upgrades and impact on contingency
- Exterior renovation budget: comparing roofing, siding and window bids
- Fixer upper budget: everything at once, commit as quotes arrive
- Garage conversion budget: multiple trades and owner-bought materials
- Home addition budget: design, permits, general contractor and utilities
- Laundry and mudroom remodel budget: owner-bought appliances and small change orders
- Primary suite renovation: bedroom, bathroom and closet with separate trades
- Whole house renovation budget: kitchen, bathroom and living spaces
Already built
The Renovation Budget Tracker has the budget, change orders, payments, contractors and cash schedule tabs wired together, with example data on every tab. One Excel file, $29.