Guide

Bookkeeping and QuickBooks for a Roofing Company, Including Job Costing

By Aaryan Gupta October 4, 2026

Whatever accounting software you pick, it has to show profit on each roof, which accountants call job costing. In QuickBooks Online that starts at the Plus plan, the lowest plan with job costing and inventory tracking, listed at $140 a month as of October 2026. Make each roof its own project, tag every invoice, bill, check and timesheet to it, and QuickBooks shows what each job brought in against what it cost.

Simple Start and Essentials leave out job costing and inventory

QuickBooks Online calls job costing “Projects,” and Intuit’s help page lists Projects only on the Plus and Advanced plans. Intuit’s pricing page also shows Plus as the lowest plan with inventory tracking. Simple Start and Essentials have neither.

A new roofing owner on r/smallbusiness asked, “for contracting specifically, is there any downside to using Quickbooks?” The one to watch for is buying a plan below Plus and finding out later that it can’t separate one roof from another.

Plus covers five users. Advanced lists at $340 a month for 25 users, and Intuit lists its estimates-versus-actuals view, which compares what you bid against what the job cost, as an Advanced feature. Start on Plus if the owner and one or two office people keep the books, and move up when you want that bid-against-cost check on every roof.

One project per roof keeps several open jobs apart

In QuickBooks Online you create a project under Business overview, then Projects, then New project. Each project is tied to a customer, and you can give it start and end dates and a status.

From then on, point every transaction at the job:

  • Invoices and estimates: pick the project in the Customer field.
  • Supplier bills and checks to a sub crew: pick it in the Customer/Project field.
  • Expenses and timesheet labor: assign them to the project as well.

The project profitability screen then shows each job’s income against its expenses, with the profit margin that leaves. On an insurance roof, that puts every invoice to the carrier on the same project as the supply house bill for that roof.

A roofing office on r/Contractor said it had waited more than two months for insurance and mortgage-company checks on finished jobs, and it was looking at invoice factoring. With every invoice on its project, go through finished projects each week and chase any that still show an unpaid invoice. Roofing Cash Flow: Depreciation Checks, Final Payments and Liens

One owner on r/RoofingSales writes invoices in AccuLynx instead, because it imports roof measurement files into pricing and invoices. If you invoice from a CRM, check that each invoice lands on the right QuickBooks project, or that job’s profit will leave it out. AccuLynx vs JobNimbus vs Roofr vs Leap: Pricing and What Owners Report

Leftover materials need inventory tracking, which starts at Plus

Office staff at a small, growing roofing company on QuickBooks Online couldn’t get an accurate profit and loss on small repair jobs, because “extra materials from previous jobs are not being billed to the job.” The repair used materials that no job record carried, so its profit came out wrong.

What they wanted was to credit returned materials to inventory and then bill them out to future jobs, and that needs inventory tracking. Before the next repair draws on leftover stock, settle with your bookkeeper how materials coming back from a roof go into inventory and how they get charged to the next job. Then have whoever runs the crew report what came back the week the roof is finished.

Crew hours and sub crew checks belong on the job they worked

On Plus or Advanced, QuickBooks tracks time for employees and for contractors, and it uses that time to calculate each project’s profitability. If you pay your own crews through QuickBooks Payroll, which is a separate paid subscription, you can pay them from the same hours.

One roofing owner shopping for QuickBooks said payroll was the main thing he wanted it for. Set up time tracking by project from the first pay period, so the labor lands on each roof as it’s paid instead of being split up by hand at the end of the month. For sub crews paid per job, tag the check to the project like any other bill.

The IRS lets you pick the software and expects the paper behind it

The IRS lets a business use any recordkeeping system that suits it, as long as the system clearly shows income and expenses. It also says purchases, sales, payroll and other transactions produce supporting documents, and you must be able to prove certain parts of an expense to deduct it.

Keep records as long as you need them to prove the income or deductions on a tax return, and keep employment tax records for at least four years. Keep each supplier invoice and receipt with the job it paid for, so the project in QuickBooks and the paper behind it match.

A roof job can also stay out of the percentage-of-completion rule for long contracts. For contracts entered into in tax years beginning in 2025, the exemption covers a construction contract expected to finish within two years.

It applies when your average yearly gross receipts over the prior three years were $31 million or less. The threshold moves each year, so confirm your accounting method with your CPA. Taxes for a Roofing Company: Sales Tax, Deductions, Quarterly Payments and the Year-End Bill

Read project profitability every month, thinnest margins first

A family roofing, siding and window company on r/smallbusiness grew from $800,000 in sales to a projected $3.6 million, and the owner wrote, “I Can’t Tell If We’re Making Money.” Their accountant couldn’t give them a straight answer.

A soon-to-be roofing owner on r/Construction said the sales and crew side was handled, and asked which expenses he should track weekly or monthly beyond material invoices and crew pay. Once a month, open project profitability, look at the jobs with the thinnest margin first, and find out which cost on them ran over the bid.

Seven steps set up a roofing company’s books

  • Buy QuickBooks Online Plus, or Advanced if you want estimates against actuals on every job.
  • Create a project for every roof as soon as the contract is signed.
  • Tag every invoice, estimate, bill, check, expense and timesheet to its project.
  • Agree with your bookkeeper on how leftover materials go back into inventory and out to the next job.
  • Keep each supplier invoice and receipt with its job, and employment tax records for at least four years.
  • Ask your CPA whether your jobs qualify for the small-contractor exemption from percentage of completion.
  • Read project profitability monthly and start with the thinnest margins.

Once every job shows its margin, you can see which kinds of roofs pay best, and the next question is whether homeowners near you find you when they search for that work. Run the free Google Maps heatmap: pick your Google profile and a search, and in a few minutes you’ll see your rank at 49 points around your office.