Skip to Content

Job costing

Revenue is what you charged. Cost is what it took. The gap between them is the only number that tells you whether a job - or a whole type of work - is worth doing again.

Professional and up. Reading it takes the budgets permission; the Profitability report takes the reports permission.

What counts as a cost

Job costing is its own ledger of what each job cost, computed from the documents you already keep. It’s only as good as what’s tied to the job:

  • Labor - from time tracking. Settled time clocked against the job (including admin-corrected entries), at each person’s rate. Crew still on the clock show as a separate “on the clock” line on the job, never inside the total, so a job’s number doesn’t tick.
  • Materials and other spend - expenses tied to the job (pinned, split across jobs, or split by line), bill lines, vendor credits (which give a cost back), categorized bank transactions split to the job, and the job’s own materials list.

Revenue is what you billed to the job - invoice lines less credit memos, net of tax. A job that was never invoiced falls back to its completion total, then its estimate, and the job says which one it’s showing.

Two things are deliberately not in the number: equipment usage (no per-job machine cost is computed) and payroll burden (labor is time × rate; wages posted through payroll are the same money and never count twice). Overhead is not allocated.

If a cost was never attached to a job, it isn’t in that job’s number. That’s the whole discipline: attach as you go. Attaching a cost to a job - or moving it to another one - is a job-costing change, not a bookkeeping entry: it never touches your books, so it works in a closed period too.

In Reports, the three job reports - Job Summary, Estimated vs. Actual and Profitability - sit in their own Job costing group and carry the Job costing claim, so a job’s margin is never read as a books figure. All three read this page’s engine, so a job’s number here and there is the same number, whether your books are native or in QuickBooks. So do the dashboard’s job-profitability card and the actuals on the Budgets page. See which reports follow the basis.

Estimated vs. Actual prices what a job was supposed to cost from the estimate itself: each line’s quantity times the cost breakdown (labor, materials, equipment, dump) on the service it names, straight from your catalog. A custom line carries a price and no cost, so a job whose estimate has one shows n/a for its estimated cost rather than a partial figure - and so does the report’s total row unless every job’s estimate can be costed.

Reading it

Open Books → Job Costing. For each job you get revenue, cost by type, and the margin left over.

What to look for:

  • A job with negative margin. Either it was underpriced or it went badly. Both are worth knowing before you quote the same work again.
  • Labor much higher than estimated. The estimate was optimistic, or the crew hit something unexpected. Ask which.
  • Jobs with no cost at all. Almost always missing attachment, not free work.

Making it accurate

The number is downstream of habits, not settings:

  1. Crews clock in against the job, not just for the day.
  2. Material purchases get the job attached when categorized.
  3. Cost rates on your team are set to something real - wage plus payroll burden, not just the hourly wage.

Tips

  • Compare like to like. Cleanups and mowing have different margins by nature; the useful comparison is one cleanup against another.
  • Look at it monthly, not per job. One bad job is noise. A pattern across a service type is a pricing decision.
Last updated on