Job CostingMarch 2026 · 10 min read

Job Costing for Contractors in QBO — Complete Guide

Job costing is how construction contractors know if a project is profitable. Here is how to set it up correctly in QuickBooks Online and produce reports your clients can actually use.

What Is Job Costing?

Job costing is the process of tracking all costs — materials, labor, subcontractors, equipment, overhead — against a specific project. The goal is to know exactly how much each job costs compared to what was budgeted and what was billed.

Without job costing, a contractor might finish a job and have no idea if they made money on it. With job costing, they can see exactly which jobs are profitable and which ones are losing money — while the job is still in progress.

Setting Up Job Costing in QuickBooks Online

Step 1 — Enable Projects or Use Customers as Jobs

QBO offers two approaches:

  • Projects (QBO Plus/Advanced): Turn on Projects under Settings → Account and Settings → Advanced. Each project tracks income and expenses separately.
  • Customers as jobs: Create each project as a sub-customer under the contractor. Example: "Smith Roofing : 123 Main St Roof" — works in all QBO plans.

Step 2 — Set Up Your Chart of Accounts

You need expense accounts for each cost category:

  • Materials / Supplies
  • Direct Labor (or Subcontractors)
  • Equipment Rental
  • Permits and Fees
  • Other Direct Costs

These accounts let you break down costs per job by category — not just total costs.

Step 3 — Assign Every Transaction to a Job

Every bill, expense, paycheck, and time entry must be assigned to the correct customer/job. This is the most common failure point — if the contractor or their staff forgets to assign transactions to jobs, the job costing data is incomplete.

In QBO, when entering a Bill or Expense, always fill in the Customer/Project field. Mark it as Billable if it will be passed through to the client.

Step 4 — Create Estimates for Each Job

Estimates in QBO serve as the budget. Create an Estimate for each project with budgeted amounts by line item. When you run job costing reports, QBO compares actual costs against the estimate to show budget vs. actual variance.

Running Job Costing Reports in QBO

Once transactions are assigned to jobs, run these reports:

  • Job Profitability Summary — Shows profit/loss per job at a glance
  • Job Profitability Detail — Breaks down costs by category per job
  • Estimates vs. Actuals Summary — Shows budget vs. actual variance per job (requires Estimates)
  • Project Profitability (if using Projects feature) — Similar to above with a cleaner interface

These reports are found under Reports → Business Overview or by searching "Job" in the reports search bar.

The Three Cost Categories Every Construction Bookkeeper Tracks

1. Materials

Lumber, concrete, roofing materials, electrical supplies, plumbing fixtures — anything physically installed in the job. Tracked via Bills from suppliers and credit card expenses.

2. Labor

Wages for employees working on the job. In QBO, labor costs are assigned to jobs via payroll (if using QBO Payroll) or via time entries. This is often the hardest category to track accurately because it requires workers to record their time by job.

3. Subcontractors

Payments to subcontractors (electricians, plumbers, HVAC, etc.) tracked as Bills under a Subcontractor vendor. These are often the largest cost category and are tracked separately because of 1099 reporting requirements.

Budget vs. Actual — The Most Important Column

The variance between budget and actual costs is the most actionable number in a job costing report. A job that is 20% over budget on materials halfway through the project needs immediate attention — the contractor may need to adjust their bid pricing or have a conversation with their supplier.

Example — Variance Analysis:

Materials Budget: $25,000 | Actual: $31,000 | Variance: -$6,000

Labor Budget: $40,000 | Actual: $36,000 | Variance: +$4,000

Subs Budget: $20,000 | Actual: $20,000 | Variance: $0

Why Job Costing Is Hard to Do in QBO Alone

QBO has the raw data but the reporting is limited. The built-in reports don't give you a clean, client-ready job costing report that shows all jobs side by side with budget vs. actual variance at a glance. Most bookkeepers end up exporting to Excel and reformatting manually.

ReconcileBook solves this by pulling all the data from QBO automatically and generating a clean job costing report — materials, labor, subcontractors, budget vs. actual, variance — for every active job, in one screen.

ReconcileBook pulls job costing data directly from QBO.

Materials, labor, subs, budget vs. actual variance — all in one report. Export to PDF in one click.

Try ReconcileBook — $99/month →

Job costing reports in 30 seconds

Connect QuickBooks Online → full job costing report ready automatically for every active project.

Start for $99/month →