Skip to main content
    Ready Accounting logo
    Ready Accounting

    QuickBooks Online Guide · Job Costing

    How to use QuickBooks Online for job costing

    Job costing in QuickBooks Online is the difference between knowing a job made money and hoping it did. Set up correctly, QBO tracks labor, materials, subs, and overhead against each project — and gives you real profitability, not just a company-wide P&L.

    Who this is for: General contractors, remodelers, home builders, real estate developers, and specialty trades using QuickBooks Online Plus or Advanced.

    Step-by-step

    1. 1. Turn on Projects and class/location tracking

      In Settings › Account and Settings › Advanced, enable Projects and (optionally) Track classes. Projects is the QBO-native job container — use it for every active job. Classes are useful when you want a second dimension like division or entity.

    2. 2. Build a job-costing chart of accounts

      Split Cost of Goods Sold into Labor, Materials, Subcontractors, Equipment, and Other Job Costs. Keep overhead out of COGS. Every job-cost transaction should land in one of these buckets so gross profit by job is meaningful.

    3. 3. Set up Products & Services as cost codes

      Create two-sided items (income + expense) for each cost code — Framing, Drywall, Electrical, Permits, etc. Map each item to the right COGS and income accounts. This is what makes an Estimate vs. Actual report work in QBO.

    4. 4. Create a Project for every active job

      Under Projects, add each job with the customer, start date, and value. All future bills, expenses, checks, and timesheets get tagged to that Project so QBO can roll up costs automatically.

    5. 5. Code every cost to a Project and item

      On bills, expenses, and checks, use the Item details section (not just Category details) and select the Project in the Customer/Project column. Skipping the item or the project is the #1 reason job reports come out blank.

    6. 6. Track labor with timesheets tied to Projects

      Turn on Time tracking, add employees and vendors as time-trackable, and enter time against the Project and service item. If you run payroll in QBO, labor cost flows straight to the job.

    7. 7. Review Project reports weekly

      Use Project Profitability, Unbilled Time and Expenses, and the Estimate vs. Actual report. Review weekly — not at year-end. Catching a slipping job in week 3 is a fix; catching it in month 6 is a loss.

    Pro tips

    • Use Projects for jobs and Classes for divisions/entities — don't overload one dimension.
    • Rename the default 'Services' income account to something like 'Construction Income' so reports read cleanly.
    • Set default markup on items so change orders bill correctly.
    • Attach the signed contract and change orders to the Project for one-click access.

    Common pitfalls

    • Coding costs to Categories instead of Items — Estimate vs. Actual won't work.
    • Forgetting to assign a Project on bills and expenses — the cost disappears from job reports.
    • Mixing overhead (rent, office, insurance) into COGS — gross profit becomes meaningless.
    • Using sub-customers instead of Projects — legacy pattern, harder to report on.

    Frequently asked questions

    Need a hand setting this up in QuickBooks Online?

    We configure QBO for construction and real estate every week. Book a consultation and we'll get it right the first time.

    Book a consultation
    Ruvim Glavatskiy, founder of Ready Accounting

    Book a call with Ruvim

    Tell us a little about your business and we'll follow up to schedule a call — usually same day.

    Prefer to reach out directly? We answer most inquiries within a few hours during business days.