Skip to main content

How to Set Up Job Costing in QuickBooks for Service Businesses

How to Set Up Job Costing in QuickBooks for Service Businesses

You finished a project. The client paid. But when you look at your bank account, the profit you expected is not there.

Sound familiar?

This is what happens when you do not track job costing properly. You win work, deliver it, and then wonder why your margins are thinner than projected.

QuickBooks can fix this—but only if you set it up correctly from the start.

Why Job Costing Matters for Service Businesses

Job costing tells you what each project actually cost versus what you billed. Without it, you are guessing.

What job costing reveals:

  • Which projects are profitable (and which are not)
  • Which clients drain your resources
  • Where scope creep is killing your margins
  • How accurate your estimates really are

Most service businesses quote projects based on gut feel. They finish work, invoice, and move on—never learning whether that project was worth taking.

The result: They keep bidding the same way, repeating the same mistakes, and wondering why growth does not translate to profit.

The QuickBooks Job Costing Setup (Step by Step)

Here is how to configure QuickBooks Online for proper job costing:

Step 1: Turn on Project Tracking

  1. Go to Settings (gear icon) → Account and Settings
  2. Click Advanced
  3. Find Projects and toggle it On
  4. Click Save and Done

This enables the Projects feature, which is the foundation of job costing in QBO.

Step 2: Create Your First Project

  1. Go to Projects from the left sidebar
  2. Click New project
  3. Select the Customer (or create a new one)
  4. Enter the Project name (be specific: “Smith Kitchen Remodel Q1 2026”)
  5. Add notes and estimated start/end dates

Pro tip: Use consistent naming conventions. Include the client name, project type, and timeframe. This makes reporting easier later.

Step 3: Assign Income and Expenses to Projects

Every transaction related to a project must be tagged:

For income (invoices):

  1. When creating an invoice, select the Customer and Project
  2. The income automatically links to that project

For expenses:

  1. When recording a bill, expense, or check, select the Customer/Project in the details
  2. For credit card charges, assign them during categorization

For time:

  1. Use the Time feature to track labor hours
  2. Assign time entries to specific projects and service items

Step 4: Set Up Service Items for Labor Tracking

Create service items that reflect your different labor types:

  1. Go to Settings → Products and Services
  2. Click New → Service
  3. Create items like:
    • “Senior Consultant Time” ($150/hour)
    • “Project Manager Time” ($100/hour)
    • “Technical Work” ($85/hour)

When you log time, select the appropriate service item. This gives you labor cost breakdown by role.

Classes let you slice expenses by type across all projects:

  1. Go to Settings → Account and Settings → Advanced
  2. Enable Track classes
  3. Create classes like:
    • Materials
    • Subcontractors
    • Travel
    • Software/Tools

Now when you record expenses, assign both the Project and the Class. This lets you analyze where money goes across your entire business.

Reading Your Job Costing Reports

Once transactions are tagged, run reports to see profitability:

Profit & Loss by Customer

  1. Go to Reports
  2. Search for Profit and Loss by Customer
  3. Set your date range
  4. Review revenue and expenses by customer/project

This shows which clients are most (and least) profitable.

Project Profitability Report

  1. Go to Projects
  2. Click on any project
  3. View the Project Profitability summary

This shows:

  • Total income
  • Total expenses
  • Unbilled time
  • Gross profit

Time Activity by Employee

  1. Go to Reports
  2. Search for Time Activities by Employee Detail
  3. Review hours by project and team member

This reveals who is spending time where—and whether it matches your estimates.

Common Job Costing Mistakes (And How to Avoid Them)

Mistake 1: Inconsistent Tagging

The problem: Some expenses get tagged to projects, others do not. Your reports are incomplete.

The fix: Create a weekly review process. Pull all unassigned transactions and tag them. Make it a habit, not an afterthought.

Mistake 2: Ignoring Unbilled Time

The problem: Your team logs time, but it never gets invoiced. Work is done for free.

The fix: Run the Unbilled Time report weekly. Before closing a project, review all time entries and bill or write off appropriately.

Mistake 3: Overhead Allocation

The problem: You track direct costs but forget that every project should carry some overhead (rent, admin, insurance).

The fix: Calculate your overhead rate (monthly overhead ÷ monthly revenue). Apply it mentally when evaluating project margins. A project with 30% gross margin might only be 10% net after overhead.

Mistake 4: After-the-Fact Entry

The problem: Transactions are entered weeks or months later. Details are forgotten, tagging is rushed.

The fix: Enter expenses within 48 hours. Use the QuickBooks mobile app for receipts. The longer you wait, the worse your data gets.

What Good Job Costing Looks Like

When job costing is working:

  • You know margins before billing. No surprises when the project closes.
  • You can benchmark projects. Similar jobs should have similar margins. Outliers get investigated.
  • You quote better next time. Historical data improves future estimates.
  • You fire bad clients with data. When a client is consistently unprofitable, the numbers prove it.

A professional services firm we worked with discovered that their largest client—the one they thought was their best—was actually their least profitable. The volume was high, but the margins were terrible. They adjusted pricing on the next contract and recovered $40,000 in annual profit.

When to Go Beyond QuickBooks

QuickBooks job costing works for most small service businesses. But you might outgrow it if:

  • You have 50+ active projects simultaneously
  • You need multi-level project hierarchies
  • You want integrated scheduling and resource planning
  • You need advanced earned value reporting

At that point, consider dedicated project management and accounting software integrations (like Harvest, Monday, or dedicated PSA tools).

But for most businesses under $5M in revenue: QuickBooks job costing is enough. The problem is not the tool—it is the discipline.

Your Next Step

  1. This week: Turn on Projects in QuickBooks if you have not already
  2. Next week: Create your first project and start tagging transactions
  3. 30 days: Run your first Profit and Loss by Customer report
  4. 90 days: Review project margins and adjust your quoting process

The businesses that know their numbers outcompete the ones that guess. Job costing is how you stop guessing.

Where This Fits in the Constraint Pyramid

Job costing is a Layer 2 (Financial Visibility) activity. You cannot scale profitably if you do not know which work makes money.

But it connects directly to Layer 1 (Operations)—because costing accuracy depends on consistent time tracking and expense logging. If your team is not disciplined about recording their work, no costing system will save you.

And it sets up Layer 3 (Systems & Tooling)—once you know where money goes, you can automate the repetitive parts (expense categorization, invoice generation, report distribution).

Related reading:

Get Help with Job Costing Setup →
Karson Lawrence

Karson Lawrence

Founder of The KPS Group & Head Consultant

Karson helps professional services firms, trades contractors, and healthcare practices build operational systems that create leverage. He believes calm execution beats hustle, and clean data beats guessing.

Want help implementing this?

Start with the right layer. See the service, then a real example of the work.