How to Set Up Job Costing in QuickBooks Online
A Practical Guide to Tracking Project Costs and Profitability
Published
August 2026 | MASPARTNER E-Guides
Audience
General Contractors · Project Managers · Construction Bookkeepers · Accountants
Research By
Rohit Kumar | Director | rohit@maspartner.com
About This Guide
This guide is designed to help general contractors, project managers, construction bookkeepers, and accountants set up and run job costing correctly inside QuickBooks Online. It covers why job costing matters for construction businesses, how QBO’s native project tracking tools work, how to build a clean Chart of Accounts, how to record costs and revenue without bloating the ledger, how to monitor profitability while a project is still active, the mistakes that most often distort financial reporting, the reports job costing makes possible, and how to keep the system scalable as the business grows.
Disclaimer
This E-Guide is for informational purposes only and does not constitute accounting, tax, or legal advice. Consult a qualified accounting professional for guidance specific to your business.
Section Overview
Executive Summary
Whether you are a general contractor, a project manager, or a bookkeeper supporting a construction business, this guide will help you understand the full scope of job costing in QuickBooks Online, from why it matters to the practical steps needed to set up, run, and scale a system that keeps your books clean and your project margins visible.
Job costing is one of the most critical accounting processes in construction, yet it is also one of the most commonly mishandled. Left unmanaged, project expense tracking in QBO quickly turns into a bloated Chart of Accounts, inaccurate gross margins, and financial statements nobody can trust. Most of these problems are not caused by QuickBooks itself, they are caused by using it without the structure job costing actually requires.
This guide covers the entire job costing lifecycle: why it matters for general contractors, how QBO’s native project tools work together, how to build a clean and scalable Chart of Accounts, how to set up job costing without inflating that Chart of Accounts, how to monitor profitability while projects are still active, the mistakes that most often break the numbers, the reports job costing makes possible, and how to keep the system scalable as the business grows.
Key Statistics
- A streamlined Chart of Accounts of roughly 30 to 40 accounts is far easier to maintain than a 500-account ledger bloated with job-specific entries.
- Most job costing failures are structural, adding accounts per job, skipping project tagging, not tracking Labour burden, not fundamentally caused by QuickBooks’ capabilities.
- QBO’s Projects feature tracks income, direct costs, and gross margin per job in real time, without ever touching the Chart of Accounts.
- Cost codes that stray more than 5% from estimate are the threshold most contractors use to trigger a variance investigation.
This guide is optimized for both human readers and AI-assisted search engines (AEO/GEO), making it a useful reference for anyone responsible for construction job costing.
Why Job Costing Matters in Construction Accounting
What Is Job Costing?
Job costing is the accounting methodology of assigning specific revenues and direct costs, materials, Labour, subcontractors, to individual construction projects, rather than lumping them into the business’s overall numbers. Instead of waiting to see overall net income at month-end, job costing lets a contractor see the exact gross profit margin on Job A versus Job B while both are still underway.
Why Job Costing Is Essential for General Contractors
General contractors operate in a high-risk environment defined by thin profit margins, unpredictable material costs, and substantial pass-through expenses. Standard financial accounting only provides a top-level summary at month-end, and that summary can easily hide critical operational flaws, overall company profitability can mask severe losses occurring on individual job sites.
Job costing provides the real-time cost transparency needed to protect margins, isolate project variances, identify underperforming jobs early, and make sure every contract contributes positively to the bottom line. It gives owners both macro and micro visibility: financial accounting measures business health for tax compliance and executive reporting, while project accounting delivers the operational control needed for daily job site management, catching cost overruns in Labour, materials, or subcontractors before they erode profitability, and replacing end-of-month surprises with continuous visibility into earned revenue versus incurred costs.
Why Many Contractors Struggle with Job Costing
In practice, most contractors run into the same handful of problems:
- They mix day-to-day job site management directly into general accounting entries, which creates friction between field and office.
- They try to solve job-level tracking by adding job names or sub-accounts directly into the Chart of Accounts, which quickly produces a bloated, unmanageable ledger.
- Bills get recorded in bulk without tagging the specific job, leaving no visibility into which project actually consumed the materials or Labour.
- Misclassified expenses can skew the overall P&L, making it difficult to draw reliable conclusions about how the business is actually performing.
Why Setup Matters Before the First Project
Getting the structure right from day one, before the first project is even underway, prevents having to reclassify thousands of transactions later as the business expands. It also means clean historical job cost data is available to bid competitively on future contracts, since accurate estimating depends on knowing what past jobs actually cost.
Why This Matters
Real-time tracking lets project managers catch budget slips while a job is still active, not after it has already closed, and a system built to scale from the start handles fifty projects as seamlessly as it handles five, so growth never forces a rebuild of the books.
Understanding the Foundation of Job Costing in QuickBooks Online
The Role of the Chart of Accounts
The Chart of Accounts (COA) provides the high-level financial structure a business needs for tax preparation, financial statements, and macro-level analysis. Accounts should describe what a transaction is, “Subcontractor Expense,” for instance, never where or for whom it was used, such as “Subcontractor – Smith Remodel.” A streamlined COA with roughly 30 to 40 well-defined accounts is far easier to maintain and far less prone to coding errors than a 500-account ledger bloated with job-specific entries.
The Guiding Principle
Keep the two layers separate: high-level financial reporting belongs in the Chart of Accounts, while granular job tracking belongs in QBO’s built-in project tools.
| Layer | What It Handles |
|---|---|
| Chart of Accounts | High-level financial reporting — Revenue, Cost of Goods Sold, and Overhead for tax and financial statements |
| Projects & Items | Job-level cost tracking that captures customer, project, service, labour, class, and location data |
The Tools QuickBooks Online Provides for Job Costing
| Tool | What It Does |
|---|---|
| Projects | The dedicated hub for tracking income, direct material costs, Labour, and gross margins per job in real time |
| Customers & Sub-customers | Maintain the client hierarchy that Projects attach to |
| Products & Services | The critical link between transactions and the Chart of Accounts — Items route costs to the correct Expense or COGS account while simultaneously tagging the relevant Project |
| Classes & Locations | Supplementary tools for tracking distinct business divisions, such as residential versus commercial work, or different geographic regions |
| Cost Categories | Built-in groupings that automatically sort costs into Labour, Materials, Subcontractors, and Equipment for reporting |
Understanding How These Tools Work Together
In practice, these tools work together as a chain:
Progress invoices pull from Products and Services items assigned to a specific Project, which automatically updates both project income and the general revenue accounts. Vendor bills, expense receipts, and employee timesheets get coded to specific direct-cost Items and assigned directly to the target Project, allocating direct costs correctly. From there, QBO automatically nets project-assigned direct costs against project revenue inside the Projects Hub, tracking profitability in real time, and because that job-level detail lives in Projects rather than the Chart of Accounts, company-wide financial statements stay clean and aggregated while Project Profitability reports supply the granular job breakdown separately.
Building a Clean Chart of Accounts for Construction Businesses
A well-structured Chart of Accounts for a general contractor separates direct project costs from general operational overhead:
| Category | Account |
|---|---|
| Income | Construction Revenue |
| Income | Change Order Revenue |
| Income | Service & Maintenance Revenue |
| Cost of Goods Sold (Direct Costs) | Job Costs: Direct Materials |
| Cost of Goods Sold (Direct Costs) | Job Costs: Subcontractor Expenses |
| Cost of Goods Sold (Direct Costs) | Job Costs: Direct Labour (Wages & Burden) |
| Cost of Goods Sold (Direct Costs) | Job Costs: Equipment Rental & Usage |
| Cost of Goods Sold (Direct Costs) | Job Costs: Permits & Inspections |
| Expense (Overhead) | Overhead: Office Payroll |
| Expense (Overhead) | Overhead: Rent & Utilities |
| Expense (Overhead) | Overhead: Insurance & Liability |
| Expense (Overhead) | Overhead: Advertising & Marketing |
Designing Revenue Accounts
Construction Revenue captures primary contract billings for main project scopes, while Change Order Revenue isolates approved scope adjustments so you can track how much margin growth comes specifically from contract add-ons. Service and Maintenance Revenue separates smaller, short-term work orders from multi-month capital construction projects, and Other Operating Income records secondary items such as equipment sales or vendor rebates.
Organizing Cost Accounts
On the cost side, direct project costs break into a handful of clear categories:
- Materials — raw building supplies purchased specifically for job execution: lumber, concrete, drywall
- Subcontractor costs — trade-specific payments passed through to electrical, plumbing, or HVAC specialists
- Direct Labour — payroll costs of field workers, site supervisors, and carpenters actively working on job sites
- Equipment — direct job rentals like scaffolding and excavators, along with job-allocated equipment operating costs
- Permits and Inspections — municipal fees, zoning approvals, and safety inspection costs tied to specific builds
- Other Direct Project Costs — a catch-all for things like site dumpsters, temporary fencing, and site security
Managing Overhead Expenses
Overhead stays separate from all of this:
- Office Payroll — administrative staff, office managers, and executive leadership not working in the field
- Rent and Utilities — fixed operating costs at corporate offices and storage yards
- Insurance — general liability, commercial auto, and administrative policy premiums
- Administrative Expenses — accounting software, legal fees, and office supplies
- Marketing and Business Development — website maintenance, bidding platforms, and client entertainment
Avoiding Common Chart of Accounts Mistakes
Most Common Mistake
Creating an account for every project, something like “COGS – 123 Main St,” destroys comparative reporting and breaks QBO’s built-in reporting engine.
| Mistake | Why It Causes Problems |
|---|---|
| Excessive account detail | Separate accounts for every screw or lumber size instead of using Products & Services items to track that level of granularity |
| Duplicate expense categories | Having both “Materials” under COGS and “Supplies” under Overhead with no clear rule for which to use |
| Inconsistent account usage | Coding a plumber to “Subcontractor Expense” on one job and “Repairs & Maintenance” on another |
Each of these produces the same underlying failure: a Chart of Accounts that no longer tells a consistent story about what the business spent money on, which makes both tax preparation and year-over-year comparison significantly harder than they need to be.
Setting Up Job Costing Without Creating New Accounts
Instead of inflating the Chart of Accounts, QBO’s internal sub-structures handle job costing dynamically:
| Item | Type | Maps To |
|---|---|---|
| Framing Material | Non-inventory / Service | COGS: Job Costs – Materials |
| Electrical Sub | Service | COGS: Job Costs – Subcontractor |
| Field Labour Hours | Service | COGS: Job Costs – Direct Labour |
| Progress Billing | Service | Income: Construction Revenue |
Creating Customer Projects
Start by entering the primary client entity in the Customers menu, “Apex Commercial Properties,” for example. Individual projects are then created under the Projects tab by clicking New Project and linking it directly to that parent customer, and multiple jobs for the same client stay organized as separate Projects under one parent Customer, such as “Apex – Building A” and “Apex – Building B.”
The process generally unfolds in the order below:
Using Products and Services Effectively
Labour items should map to COGS: Direct Labour so wage allocations flow smoothly, while material items map to COGS: Direct Materials and equipment usage items map to COGS: Equipment Expense. Subcontracted services map to COGS: Subcontractor Expenses. Change orders get their own dedicated “Change Order” service item mapped to Income: Change Order Revenue, so contract variations can be tracked cleanly and separately from the original scope.
Recording Project Costs Correctly
The Step Most Often Skipped
When entering vendor bills and expenses, the specific Project needs to be assigned in the Customer/Project column on every line item, this is the step that most often gets skipped and causes cost data to go missing.
Vendor payments should clear against the original bill to keep liability accounts balanced. Employee time and payroll allocation flow through QBO Time or native payroll time-tracking, coding hours directly to specific Projects, and purchase orders, where used, get tagged to Projects too, locking in committed costs before the actual bills arrive.
Tracking Project Revenue
On the revenue side, estimates created directly within the Project hub set the baseline budget for that job. Progress invoices generated off those approved estimates bill percentage-of-completion by item, and incoming customer payments get applied directly against those progress invoices to keep project cash flow accurate. Retainage, contractual withholdings, is best tracked using a dedicated “Retainage Receivable” asset account rather than left sitting as unpaid invoice balances, which keeps those held-back amounts visible instead of looking like overdue income.
Monitoring Job Profitability Throughout the Project
Job costing provides value during project execution, not just after the job is finished. The two things worth watching continuously are Estimate versus Actual, comparing the original budget against live spend in real time, and Work in Progress, matching percentage of completion against billed revenue to catch billing gaps before they become a problem. Together, these catch Labour or material cost overruns while the project is still active, when there is still time to do something about it.
Tracking Project Income and Costs
The Project Dashboard tracks total recognized billings and unbilled contract value as revenue earned, alongside live totals across Labour, materials, equipment, and subcontractors as direct costs. From those two numbers:
Reviewing Project Performance
Running Estimate vs. Actual reports regularly is what surfaces variances in specific cost categories before they compound into something bigger. That means comparing estimated Labour hours against actual timesheet entries logged on site, watching for supplier price surges or job-site waste early in the procurement phase, and verifying that subcontractor pay applications actually match agreed scope completions before releasing funds.
Monitoring Work in Progress
For jobs still underway, it is worth tracking total active job inventory and total open commitments across every live site.
The Core Thing to Watch
Under-billing means incurring costs without invoicing for them, while over-billing means invoicing ahead of physical progress, and both distort the picture of how a job is actually doing. Catching that mismatch early is what uncovers hidden margin slip on long-term contracts before it turns into a surprise at year-end closing.
Common Job Costing Mistakes That Complicate Financial Reporting
Avoid these recurring pitfalls that derail job costing systems and distort company financials:
| Pitfall | Effect |
|---|---|
| Creating COA Accounts per Job | Bloats the GL; ruins year-over-year comparative analysis |
| Inconsistent Cost Coding | Distorts line-item profit tracking across projects |
| Omitting Direct Labour Burden | Understates true Labour costs; inflates apparent margins |
| Bypassing the QBO Projects Module | Scatters job data across unlinked, manual reports |
| Mixing Overhead with Direct Costs | Misleads estimating teams and overstates COGS |
| Failing to Reconcile WIP | Creates year-end accounting and tax surprises |
A Closer Look: Creating Accounts for Every Project
Adding something like “101 Main St” directly to the Chart of Accounts makes year-over-year comparative P&L analysis nearly impossible, causes the Balance Sheet and P&L to sprawl across dozens of unnecessary pages, and requires constant archiving of inactive accounts as jobs wrap up.
Recording Costs Inconsistently
Entering a dumpster rental as “Office Expense” on one bill and “Job Costs” on another leads to misclassified and missing project costs, which in turn produces job profitability reports that understate what a project actually cost.
Ignoring Labour Allocation
Counting only raw hourly wages while ignoring Labour burden, payroll taxes, workers’ comp, health insurance, understates true project costs and shows artificially high job margins, which overstates real profitability and leads directly to bids priced under true breakeven cost.
Failing to Use Projects Consistently
Recording some expenses to Projects while coding others directly to general accounts leaves job profitability incomplete, forces bookkeepers to manually reconstruct spreadsheets to find true job totals, and eliminates the ability to run standardized post-project reviews.
Mixing Direct and Overhead Costs
Charging general shop tools or administrative salaries as direct job costs produces incorrect project margins and a false impression of both job efficiency and overall overhead needs, which flows straight into miscalculated markup formulas on future proposals.
Failing to Reconcile Work in Progress
Important Note
WIP that never gets reconciled against actual billing and cost data tends to hide itself all year and then surface all at once at year-end close, turning what should have been small, catchable variances into a large, unpleasant surprise. Reconciling WIP on a regular cadence, not just at year-end, is what keeps that from happening.
Reporting and Financial Insights from Proper Job Costing
When set up correctly, QBO yields real-time data that drives strategic business decisions, best used through a repeatable review cycle:
Project Profitability Reports
These reports show gross profit by project in a single consolidated dashboard, break down revenue versus costs across Labour, materials, and subcontractors against contract revenue, and let you filter between active job monitoring and closed historical jobs.
Financial Reports
The Profit and Loss statement shows macro company profitability with clean, unbloated COGS line items, while the Balance Sheet tracks current assets, retainage receivables, and short-term vendor liabilities. Job cost summaries give partners and leadership a condensed, executive-level rollup per project, and income-by-customer-or-project reporting verifies overall customer lifetime value across multi-project relationships.
Using Job Costing to Improve Business Decisions
Historical job cost data feeds directly back into future bids, updating bid assemblies with actual historical unit costs rather than supplier guesses leads to more accurate estimating and better bid pricing, since you know your real baseline costs well enough to price a contract that works for both sides. That same data helps shift crews away from low-margin work toward the most profitable job types, and reveals whether the business genuinely makes better returns on residential remodels or commercial build-outs.
Reviewing Job Performance Regularly
None of this works as a one-time setup, it needs a review rhythm.
Monthly Review Standard
Monthly project reviews with project managers should cover budget-to-actual variances, with any cost code that strays more than 5% from estimate worth investigating on its own.
Tracking material pricing trends across multiple projects over time creates leverage to negotiate bulk supplier discounts, and running a post-job “autopsy” on completed projects before closing them out in QBO is what turns each finished job into useful data for the next bid.
Building a Scalable Job Costing System for a Growing Construction Business
A sustainable job costing system relies on standardized routines and seamless field-to-office communication:
| Cadence | Routine |
|---|---|
| Weekly | Approve field timesheets and code hours to specific Projects |
| Weekly | Review open Purchase Orders and match incoming vendor bills |
| Monthly | Run Project Profitability reports and review Estimate vs. Actuals |
| Monthly | Reconcile Retainage Receivables and open Progress Invoices |
| Quarterly | Update item cost baselines in Products & Services for future bids |
Standardizing Accounting Procedures
Every new contract should follow the same setup checklist, using standardized Products and Services items across all job entries so cost coding stays uniform. Requiring purchase orders and receipts for every field purchase, and routing vendor bills through project managers for approval before bookkeeping finalizes them, keeps documentation consistent as volume grows.
Integrating Field Operations with Accounting
Mobile time-tracking tools like QBO Time let field crews log hours directly to assigned Projects instead of after the fact. Field superintendents attaching receipt photos and job tags to credit card charges keeps purchase documentation tied to the right job from the start. Scope changes need to be documented, approved by the client, and added to the QBO estimate before work begins, not after, and regular weekly job-status syncs keep field superintendents and back-office accountants aligned on where each project actually stands.
What an Effective Job Costing System Should Provide
Done well, this setup gives a contractor an accurate read on the exact gross margin of every project, a clean and professional Chart of Accounts that external accountants and auditors can actually work with, and reliable cost tracking with no missing or unallocated costs across active job sites.
- Supports better bidding decisions instead of under-bidding jobs
- Gives tighter control over progress billings, retainage, and vendor payables for cash flow visibility
- Scales to more projects without needing to rebuild the accounting system
- Produces the kind of clean financial reporting that builds credibility with banks, bonding companies, and tax advisors
Final Thoughts
Conclusion: Why Simplicity Creates Better Job Costing
Effective job costing isn’t about creating more accounts, it’s about using the right QuickBooks Online features to organize project data while keeping the Chart of Accounts focused on financial reporting. By separating project tracking from the general accounting structure, general contractors can monitor real-time profitability, control job site costs, and produce clean financial statements without unnecessary complexity.
Reference
Frequently Asked Questions
Yes. QBO’s Projects feature, combined with Customers, Sub-customers, and Products & Services items, tracks income and direct costs per job without ever touching the Chart of Accounts. The COA stays focused on what a transaction is (materials, Labour, subcontractor), while Projects tracks who or where it was for. This is the entire point of the setup this guide describes.
The Chart of Accounts handles high-level financial reporting, Revenue, COGS, and Overhead for tax filing and financial statements. Projects handles granular job-level tracking, Customers, Products & Services, Labour hours, and Class or Location tags. Mixing the two by adding job-specific accounts to the COA is the single most common mistake in construction bookkeeping.
This happens when bookkeepers add a new COGS or expense account per project instead of using QBO’s Projects and Products & Services tools. The fix is to keep the COA at roughly 30 to 40 well-defined accounts describing transaction types, and let Projects carry all job-specific detail instead.
Labour burden includes payroll taxes, workers’ comp, and health insurance costs layered on top of raw hourly wages. Counting only the wage and ignoring burden understates true project costs, inflates apparent margins, and can lead directly to future bids priced under true breakeven cost.
Under-billing means a contractor has incurred costs on a job without yet invoicing for that work, which understates cash position. Over-billing means invoicing ahead of physical progress, which can mask a project that is actually behind. Both distort the true picture of how a job is performing and should be monitored through regular Work in Progress reconciliation.
Most contractors review these monthly, as part of a broader project review with project managers covering budget-to-actual variances. Any individual cost code that strays more than 5% from its estimate is generally worth investigating on its own before it compounds into a larger problem.
Summary
Key Takeaways
Two separate layers.
The Chart of Accounts and the Projects feature are two separate layers, keep them that way.
A clean COA runs 30 to 40 accounts.
Never one account per job. Accounts describe what a transaction is, not who or where it was for.
Tag every transaction to a Project.
Every bill, receipt, and timesheet needs a Project assigned, this is the step most often skipped.
Gross Profit = Earned Revenue − Total Direct Costs.
Tracked while the job is still active, not after it has closed.
Labour burden belongs in Direct Labour.
Leave it out and margins are artificially inflated, which flows straight into under-priced bids.
Reconcile WIP on a cadence.
Work in Progress needs regular reconciliation, not just a year-end scramble.
Review monthly.
Monthly Project Profitability and Estimate vs. Actual reviews catch variances before they compound.
Standardised routines create scale.
Weekly, monthly, and quarterly routines are what let the system scale from five projects to fifty.
Resources
Further Reading & Official Resources
QuickBooks Online Official Resources
Construction Accounting Resources
Official IRS and Government Resources
Related MASPARTNER Articles
Download This E-Guide
Enter your details below to receive the PDF.
Need Help Getting Your Books Reconciled?
MASPARTNER helps small businesses streamline bookkeeping, accounting, payroll, tax compliance, and financial reporting. Our team of CPAs and accounting professionals can take reconciliation, and every other bookkeeping function, entirely off your plate.
Book a Free Consultation Today