Invoice a Long Job From Live Job Costing, Not Memory

Most contractors rebuild a long job's numbers from memory at billing time. This walks through capturing labor, materials, and approved changes as the work happens, so the draw request and the final bill come from records you already have.

Invoice a Long Job From Live Job Costing, Not Memory

Three weeks on a job, a shoebox of receipts, and a Friday afternoon gone to rebuilding a bill you should have already had. If that sounds familiar, the problem usually isn't your invoice template. It's treating the invoice as separate paperwork instead of the last step of job costing.

On a multi-week job, a progress bill should be assembled from records you kept while the work was running. Labor, materials, and approved changes written down when they happened. Do that and margin loss shows up during the job rather than after the check clears. That last part is the working view behind this post, not a measured benchmark, but it's the habit the whole thing rests on.

We'll cover what has to be in place before the job starts, capturing labor while the work runs, logging materials at the truck, approved changes the day they're approved, the weekly review that keeps your job costing sheet honest, and how it all rolls into a draw request, final bill, and retainage. We'll also cover where the spreadsheet stops being enough, and a few tips that keep the habit alive.

The Invoice Is the Last Step of Job Costing, Not a Separate Chore

Job costing is the running record of what a job actually costs: labor hours, materials, subcontractors, rentals, permits. The invoice is that same record with a price attached and a customer's name on it.

Gather costs only at the end and somebody spends an afternoon digging through texts, glovebox receipts, and memory. That is not billing work. That is reconstruction. In this shop's experience, on a three-day job that reconstruction might cost an hour; on a three-month job it can eat most of a day, and it hides mistakes until the money is already spent.

Here is the operating view this article runs on: capture while the work happens, and the bill becomes assembly instead of detective work. That difference matters most on long jobs, where cash flow depends on billing on schedule, and it is a big part of why fixing the process comes before adding software. No invoicing tool fixes this on its own. The records have to exist before anything has something to total.

What Has to Be in Place Before the Job Starts

Five things have to be in place before the first hour of work. What you need before you start should be written down, not remembered.

  • A schedule of values: billing lines like mobilization, demolition, rough-in, and finish. Each draw request points at real progress instead of one lump sum.

  • Cost codes that match those lines. If you bill by phase, capture cost by phase, or you end up comparing two versions of the same job.

  • A change order process short enough to use: number, description, price, who approved it, and the date. A confirming text is fine if it gets logged that day.

  • Contract terms read before mobilization: retainage percentage and release timing, billing cycle dates, and what each pay application must show. Many commercial jobs use a standard pay application form, so follow your contract instead of assuming.

  • One place where job costs land: a job costing sheet in a spreadsheet or a job costing program. Two places means two versions of the truth.

Capture Labor While the Work Runs, Not Friday Afternoon

With cost codes and a sheet in place, the hard part is daily entry.

Record hours daily, by job and cost code, not one weekly total per person. A weekly number tells you the job used 96 hours. Cost codes tell you which phase ate the budget.

Record who worked, how long, what phase, and any truck or equipment time tied to the job. On covered jobs, federal prevailing wage rules already require daily hours per worker.

The foreman or the person doing the work records it the same day. Hours rebuilt Friday afternoon are guesses, and guesses sound reasonable.

Format matters less than timing. A text to the office, a phone note, or two minutes at the truck all work.

Daily entries total into the job costing sheet, so labor against budget is visible while there is still time to change how the crew runs the work. For a closer look, see what tracking real cost data per job looks like.

Capture Materials and Subcontractor Costs at the Truck

Materials need the same daily discipline as labor hours.

At the counter, write the job number on every receipt, delivery ticket, and supply house charge. A glovebox full of unlabeled paper is how a job ends up with costs nobody can bill.

Track materials on site separately from materials installed. Progress billing generally follows installed work, so a pallet bought early is a cash flow event, not completed progress.

Code subcontractor invoices to the job and phase the day they arrive, and note their retainage terms. If your numbers and theirs disagree, a draw request can sit while it gets sorted.

Rentals, disposal, permits, and small tool charges belong on the job too. Left in a general expense account, they quietly eat margin the job appeared to make.

One weekly habit covers all of it: every receipt photographed, tagged with the job number, and filed where the job costing sheet can find it. That is a process fix rather than a software purchase.

Log Approved Changes the Day They Are Approved

Approved changes are a billable event the moment they are approved, not at the end of the job. Wait, and you invite a debate about whether the work was ever extra.

Write it down that day: change number, description, price or pricing method, who approved it, and the date. Save any confirming text and log the details the same day, but follow your contract's change-order clause for what constitutes formal approval.

Track changes on the same job costing sheet as the base scope, but on their own lines, so you can see whether the change made money.

Keep unpriced or unsigned work on a pending list and review it weekly. In our view, work performed without written approval is the fastest way to lose margin you had no way to measure.

By the time the draw request goes out, approved changes already sit on their own lines. Nobody has to remember anything.

The Weekly Review That Keeps the Job Costing Sheet Honest

The last piece is a standing weekly appointment with your own numbers. Pick one time each week, twenty to thirty minutes, and run the same short list for every active job.

Enter or check hours, materials, subs, and changes against the job costing sheet budget. Then compare cost to date against percent complete on each billing line. If framing is 40 percent through the budget but 70 percent through the work, that is a now conversation, not a final-bill one. An illustration only, but the pattern is the point.

Next, list what is unbilled: finished work, approved changes, or additions that have not hit a draw request.

Keep it identical and boring. The routine that survives a busy week is the one still running in month four.

In this shop's view, quiet overruns only become visible when captured cost meets budget while the work is still open. That same comparison, run after closeout, is what feeds the post-job review.

A Multi-Week Job, Week by Week (Illustration)

Now stretch that habit across two months. Picture a labeled illustration, not a customer story: an eight week tenant improvement, five billing phases, retainage set by contract.

Week 0: schedule of values at five lines, matching cost codes, the job opened on the job costing sheet, change order path agreed up front. That setup follows the standard trade job lifecycle.

Week 2: the customer approves two added floor drains by text for a set price. Change order 01 gets logged that day, text saved as the approval.

Weeks 1 through 8: hours recorded daily by phase, foreman photographs receipts at the counter with the job number on them, electrician invoices coded to the job when they arrive.

Day 30: the first draw request pulls captured totals for completed phases plus change order 01, minus retainage per contract. Review, not reconstruction.

Week 8: the final bill covers remaining phases, bills change order 01 if it was missed, requests retainage release on contract terms. Total billing time across the job: minutes of checking, not an afternoon.

From Captured Cost to a Draw Request

That draw is the method in miniature. A draw request, sometimes called a progress bill or a payment application, asks to be paid for work completed in a period, not for the whole job. It points at completed billing lines or percentages, not one lump sum.

Build it straight off the job costing sheet: what is complete now, what you billed last period, and the difference. When billing lines match the schedule of values, that is arithmetic instead of archaeology.

Apply retainage per the contract, and show prior payments, current amount due, and retainage held as separate figures. A named pay application form changes the layout, not the source.

Approved change orders ride along as their own lines. Unapproved work stays off the bill and on the pending list, the same discipline as only starting work when there is demand for it.

Bill on the agreed cycle, not when the paperwork feels finished. A draw that leaves a week late is a week your money funds the job.

The Final Bill, Retainage, and Closing the Job Out

The last draw is not the finish line. The final bill runs the same process with the remaining lines: the last progress items, approved changes not yet billed, and retainage release if the contract allows it now.

Retainage is money the customer holds back until the job is finished. How much and when it releases comes from your contract, so settle it in writing before the job starts and ask your accountant how to track it.

Reconcile once, on purpose: every receipt, sub invoice, rental, and change order is billed, held in retainage, or written off deliberately.

Compare final captured cost to the budget and to the bid. That comparison improves the next bid, and it is where a job costing program earns its place: usable history instead of a folder.

Close the job where you tracked it. If costs keep arriving after the final bill goes out, the job was never properly closed.

Where This Breaks Down: When the Spreadsheet Stops Being Enough

That closeout works fine until the volume grows.

A job costing sheet in a spreadsheet holds up for one job and one person. Add several active jobs, several crew members, and subs billing on different cycles, and it strains. Warning signs: two versions of the same job sheet, receipts surfacing after the bill goes out, changes billed late or never, and nobody able to say what has already been invoiced.

Fix the process first. Decide what gets captured, by whom, and when, then decide what holds it. Software on top of a vague process just moves the mess.

1Site2See builds crew&cost for trade contractors: job costing, bids, invoices, crew and license tracking, and smart bidding from real labor and cost history. Custom Builds are systems shaped around how a business already works. Either way, capturing still happens on the job.

Tips That Keep the Habit Alive

The process only survives if it survives a busy week. A few small rules keep it alive.

  1. Keep the entry wherever the work is, phone, truck cab, tablet. If it means walking to the office, it waits.

  2. Keep the change order form short enough to fill in while the customer is still on site.

  3. Bill on schedule, even with one uncertain line. Correct it on the next draw instead of holding up the whole invoice.

  4. Name every billing line on day one. A line called other collects cost nobody can bill.

  5. Check the pending change list before the draw goes out. Approval generally has to exist before a change shows up in billing documents. Catch it then, not when the customer questions it.

They are small rules. Applied every week, they are what makes the next draw request a review instead of a rebuild.

Start With the Job That Is Running Right Now

The habits above only matter if you put them on a real job, so pick the one running this week rather than waiting for a clean start.

Before Monday, sit down with that job's scope and write the billing lines you will invoice against. Build cost codes with the same names, so a phase you bill is a phase you track.

Then hold two lines. Hours and receipts land the day they happen, entered by the crew doing the work. Approved changes get logged the day they are approved, with a number, a price, and a date.

Run the weekly review from the previous section on that same job.

When the next draw request comes due, build it from those records. In this shop's view, that is where the billing afternoon mostly disappears.

You do not need a new system to try this. You need one job, one week, and records that exist before the invoice does.

Conclusion

When those habits hold, the next draw request is assembled from evidence instead of memory, one job, one week, records before the invoice. That is how billing afternoons stop disappearing.

← All insights