Blog

Contractors

Job Costing for Contractors: What It Is and How to Do It

October 1, 2026 7 min readBy Moshe
Illustration of a contractor reviewing job costing on a clipboard at a construction site

Quick answer

Job costing means tracking every cost and every dollar of revenue against the job it belongs to, so you can see profit job by job. Set up a job for each project, tag every bill and hour to it, and compare estimate to actual at the end.

Why job costing matters

You can have a busy year and still not know which jobs made money. That is the problem job costing solves.

Job costing means tracking every cost, and every dollar of revenue, against the specific job it belongs to. Instead of one big pile of expenses, you see profit job by job.

Why job costing matters

A profit and loss statement for the whole company tells you if the business made money. It does not tell you why. Job costing answers:

  • Which jobs are profitable, and which are losing money?
  • Is your pricing right for each type of work?
  • Are estimates close to actual costs?
  • Where is labor or material running over?

Without job costs, your next estimate is a guess based on gut feel.

What goes into a job cost

  • Direct labor: wages and payroll costs for time spent on the job.
  • Materials: lumber, pipe, wire, equipment, supplies bought for the job.
  • Subcontractors: work you hired out for that job.
  • Equipment and rentals: anything rented or used specifically for the job.
  • Permits and fees: anything paid to start or finish the work.

Overhead, like office rent, insurance, and software, is usually tracked separately and spread across jobs, not charged to one.

A simple example (illustrative numbers)

Say you quote a bathroom remodel at $12,000. At the end of the job, the costs look like this:

ItemEstimatedActual
Labor$4,000$4,900
Materials$3,000$3,100
Subcontractors$1,500$1,500
Permits and fees$300$300
Total cost$8,800$9,800
Gross profit$3,200$2,200

You planned for a 27% margin and got 18%. The reason is clear: labor ran $900 over. Without job costing, you would only see that the month "felt tight."

How to set it up

  1. 1Create a job or project for every job in your accounting software, such as QuickBooks Online.
  2. 2Tag every bill, expense, and invoice to the job. Receipts for materials need the job name on them.
  3. 3Track labor by job. Use timesheets or a time app so hours land on the right job.
  4. 4Compare estimate to actual when the job ends, and at points along the way for longer jobs.
  5. 5Review monthly. Do it while the job is fresh enough to learn from.

Long jobs: progress billing, retainage and WIP

If a job takes months, you probably bill in stages. Two ideas matter here:

  • Retainage: a portion of each invoice the customer holds back until the job is complete. It is real money you are owed but cannot spend yet.
  • Work in progress (WIP): a view of how much of each open job is done, how much you have billed, and whether you are over- or under-billed.

Billing ahead of your costs feels great, and billing behind them can strangle cash flow. Our construction bookkeeping page goes deeper on both.

Job costing by trade

The categories change a bit depending on what you do:

  • Plumbing: service calls and installs behave differently, so track them separately.
  • Electrical: crew labor, materials and progress invoices on larger jobs.
  • HVAC: separate installation, service and maintenance revenue.
  • Framing: lumber, crew labor, change orders and retainage.

Common job costing mistakes

  • Mixing job and personal or overhead spending in the same account.
  • Forgetting change orders. Extra work that is not billed is lost margin.
  • Estimating labor without payroll costs. Taxes and workers' comp are part of the cost of a worker.
  • Never closing the loop. If you do not compare estimate to actual, the next estimate has no new information.
  • Waiting until year end. By then nobody remembers which job a receipt belongs to.

Where a bookkeeper helps

Job costing only works if every transaction is coded to the right job, every month. That is the part that gets dropped when you are on a site all day. A dedicated bookkeeper sets up the jobs, codes the transactions, reconciles your accounts, and gives you monthly statements you can use. See our contractor bookkeeping guide, our flat monthly pricing, or talk to a bookkeeper.

Next steps

Want job profit on every job, every month?

Frequently asked questions

What is job costing in simple terms?

It is tracking the revenue and costs of each job separately, so you can see the profit on each one.

Do I need special software?

Not necessarily. QuickBooks Online and Xero can both track by job or project when they are set up properly.

What is the difference between job costing and overhead?

Job costs belong to a specific job, like materials and crew labor. Overhead supports the whole business, like insurance and office rent.

How often should I review job costs?

At least monthly, and at the end of every job. Longer jobs deserve a check at each billing stage.

What is retainage?

A portion of an invoice a customer holds back until the work is complete. It counts as money owed to you, but it is not cash yet.

Is job costing only for big contractors?

No. A one-truck business benefits just as much, because one underpriced job can erase the profit from several good ones.

Does Mispar do job costing?

Yes, as part of monthly bookkeeping for contractors. Ask about it on a free consultation.

Written by

Moshe

Senior Account Manager, Mispar

Moshe is a Senior Account Manager at Mispar who works directly with small business owners and freelancers to keep their books clean, reconciled, and tax-ready every month.

More about Mispar

Ready for clean, tax-ready books?

Book a free consultation with a Mispar bookkeeping expert. We’ll review your books, show you exactly what we’d deliver, and give you a flat monthly price — no pressure.