Accounting for a Roofing Business: COGS, Job Costing, and Close
Most roofing owners run their books reactively: stuff receipts in a shoebox until tax time, then hand to a CPA. That works until you hit $1M and the CPA tells you margins have been 8 points below industry average for 3 years. Proper accounting catches leaks before they become hemorrhages.
Cash vs Accrual: The Decision
Cash Basis
Revenue recorded when cash received. Expense recorded when cash paid.
- Simple
- Tax-friendly: deduct expenses when paid, defer revenue recognition
- Allowed for businesses under $29M annual revenue
- Bad for decision-making: shows cash flow, not profitability
Accrual Basis
Revenue recorded when earned (contract signed or milestone hit). Expense recorded when incurred.
- Required by GAAP and most banks for loans
- Shows true monthly profitability
- Requires more bookkeeping discipline
- Needed for any meaningful job costing
Recommendation: cash for tax return, accrual for internal management. Your accountant can maintain both.
Chart of Accounts for Roofing
Standard roofing chart of accounts:
Revenue
- Residential Retail
- Residential Insurance Restoration
- Commercial Roofing
- Repair Services
- Warranty Work (offset)
Cost of Goods Sold
- Materials: shingles, underlayment, flashing, fasteners
- Direct Labor: crew wages
- Subcontractor Costs
- Dump Fees
- Permits
- Material Delivery
- Equipment Rental (per-job)
Operating Expenses
- Sales Commissions
- Marketing (Facebook ads, yard signs, canvass apps)
- Office Rent and Utilities
- Insurance (general liability, workers comp, auto)
- Vehicles (fuel, maintenance)
- Professional Services (legal, accounting)
- Software (CRM, accounting, project management)
COGS Tracking by Job
Every dollar in COGS should tie to a specific job. Setup:
- Assign each signed contract a job number
- All material POs reference the job number
- All crew timecards reference the job number
- All subcontractor invoices reference the job number
- Month-end: pull total COGS by job, compare to contract revenue
Result: per-job gross margin. Target: 40 to 50 percent gross margin on residential retail, 35 to 45 percent on restoration.
Job Costing: The Report That Matters
FieldExample Job #2026-0347 CustomerSmith, 123 Oak St Contract Value$18,400 Materials$5,800 Labor$3,200 Subs$0 Dump/Permit$450 Total COGS$9,450 Gross Margin$8,950 (48.6%) Commission$1,472 Net Contribution$7,478Run this weekly on installs from the prior 2 weeks. Jobs below 35 percent gross margin get flagged for investigation.
QuickBooks vs Xero
QuickBooks Online
Pricing: $30 to $200/month depending on tier.
- Industry standard, accountants prefer
- Strong 3rd party integrations
- Contractor-specific features at Plus tier ($90/mo)
- Job costing requires Plus or Advanced tier
Xero
Pricing: $15 to $78/month.
- Better UI than QuickBooks
- Weaker job costing out of the box
- Strong for cash-basis simple books
- Fewer US-specific contractor features
For roofing: QuickBooks Plus minimum. Xero works for shops under $500k who do not job-cost.
Monthly Close Checklist
By the 10th of each month, close the prior month:
- Reconcile all bank and credit card accounts
- Enter all vendor bills received
- Record depreciation
- Record accruals (unpaid wages, expected commissions)
- Review A/R: flag anything 60+ days past due
- Review A/P: flag anything overdue
- Run job costing report for all installs completed
- Run P&L and compare to prior month and YTD budget
- Management review meeting
Hiring a Bookkeeper
Under $1M revenue: part-time bookkeeper at $30 to $50/hr, 10 to 15 hours/week.
$1M to $5M: full-time bookkeeper + fractional CFO consulting.
Over $5M: full-time controller + part-time CFO.
Never have the owner do their own books past $500k. You will burn 10 hours/week on data entry that a $400/week bookkeeper would handle.
Sales Tax Compliance
Most states tax roofing materials. Labor exemptions vary. State-by-state:
- Texas: tax materials at retail value included in contract
- Florida: tax materials at purchase cost, labor not taxed
- California: tax materials + labor in most situations
- Illinois: tax materials, permit labor exempt
Check your state''s rules. Penalties for wrong sales tax remittance compound.
Cash Flow Forecasting
Roofing has seasonality and payment timing issues. Build a 13-week cash flow:
- Expected inflows (by week): installs closing, insurance checks hitting
- Expected outflows: payroll every 2 weeks, materials on 30-day terms, commissions monthly
- Beginning balance + inflows - outflows = ending balance
Identify weeks where cash goes negative. Line of credit or factoring covers the gap.
RoofKnockers Feeds Accounting
Contract values, install dates, commissions, and material usage export from RoofKnockers to QuickBooks. Single source of truth. See pricing or start a trial.
FAQ
When should we upgrade from QuickBooks to a full ERP?
Around $15M revenue or when you operate in 3+ states. Until then QuickBooks Advanced ($200/mo) covers most needs.
Should we use the percentage-of-completion method?
For long commercial jobs spanning multiple months, yes. For residential that installs in 1 to 3 days, completed-contract method is fine.
How do we handle insurance supplement checks?
Record as additional revenue when received and tie to the original job. See our commission guide for rep comp on supplements.
Ready to grow your roofing sales operation?
Start Your 14-Day Free Trial