Gross profit: what it means for home-service and trades companies

A plain-English explanation of gross profit for contractors, including how the formula works, what it tells you about each job, and why it shows up differently when QuickBooks data lives separately from your CRM.

By Datacube content engineAutogeneratedJune 24, 2026

Formula

Gross profit = Revenue minus Cost of goods sold (COGS)

If a plumbing company invoices 120,000 dollars in a month and spends 54,000 dollars on direct labor, materials, subcontractors, and other job costs, its gross profit is 66,000 dollars. That number is what the business has left to cover overhead and generate net income before a single office expense is counted. Gross profit is the first real profitability checkpoint after you know how much a job or a period actually cost to deliver.

For gross margin (gross profit expressed as a percentage of revenue), see /glossary/cogs and the related KPI dictionary pages. This page owns the definition of gross profit as a dollar figure and as a concept.

Gross profit in plain English

Revenue is what customers pay you. COGS (cost of goods sold) is what it costs you to deliver that work: direct labor, materials, equipment, subcontractors, and any other job-level costs. Gross profit is the gap between those two numbers. It is not net income, and it is not cash in the bank. It is what remains after you have paid to do the work, before you pay for anything that keeps the lights on at the office.

In the trades, gross profit is the number that tells you whether you are pricing and delivering work at a level that can sustain the rest of the business. A company can grow revenue quickly while shrinking gross profit by discounting, under-pricing materials, or running callbacks that cost labor without recovering it on the invoice. Gross profit catches that problem where revenue alone cannot.

Why gross profit matters for home-service companies

Home-service operators often have a clear view of their booked revenue and a much fuzzier picture of their costs at the job level. When you can see gross profit in real time by department, technician, or job type, you stop managing revenue as if it equals success and start managing the spread between what you charge and what you spend to earn it. That spread is what funds payroll, marketing, equipment, and growth.

The specific problem in the trades is that gross profit requires two data streams: invoiced revenue (usually in the CRM) and actual job costs (usually in the accounting system). When those two systems do not talk to each other, the only way to know gross profit is a monthly accounting close, which means you discover a margin problem after the month is already gone.

Info

Owner takeaway: gross profit is a real-time coaching number

When gross profit is only available after the monthly close, it is a scorecard. When it updates in near-real-time as jobs close and costs post, it becomes a coaching tool. An operations leader who can see gross profit by technician or job type through the month can catch a pricing problem, a callback pattern, or a material-cost spike before it shows up as a bad month. The goal is not a better report at month-end; it is a faster feedback loop through the month.

How gross profit reads across trades

TradeCommon COGS componentsWhat gross profit tells you
HVACTechnician labor, refrigerant, equipment, install crew hoursWhether the gap between equipment cost and installed price is holding across repair vs. install jobs
PlumbingPlumber hours, pipe and fixture cost, drain-service consumablesWhether service-call profitability is holding versus drain jobs or water-heater installs
ElectricalElectrician labor, wire and panel materials, permit costsWhether panel upgrades or service calls are carrying more of the total gross profit
RoofingShingles and materials, subcontractor labor, disposal feesWhether insurance vs. retail vs. commercial jobs have materially different gross profit per square
Garage doorTechnician time, springs and openers, door unitsWhether same-day service calls vs. full-door replacements drive the majority of profit dollars

Gross profit signal ranges for trades businesses

There is no universal gross profit target that applies across all trades, job types, and markets. The ranges below are illustrative of what operators in home services commonly treat as healthy, watch, or poor signals. Validate against your own historical data and trade benchmarks before setting company targets.

  • Gross profit as share of revenue (service/repair-heavy mix)Service and repair work typically carries fewer material costs, so gross profit per dollar billed often runs higher than install-heavy mixes.
    Good
    Current
    Above target floor
    Target
    Covers overhead and produces net income at current volume
  • Gross profit trending down while revenue is flat or upIndicates rising direct costs (callbacks, material overruns, unrecovered labor) or pricing pressure that has not yet shown up in revenue decline.
    Watch
    Current
    Declining spread
    Target
    Should track revenue growth proportionally
  • Gross profit insufficient to cover fixed overheadA company that runs gross profit below its overhead structure loses money on every dollar of overhead paid, regardless of how much revenue it generates.
    Poor
    Current
    Below breakeven floor
    Target
    Must at minimum cover all overhead to produce any net income
  • One department's gross profit subsidizing another'sSeen when install or service run at thin margins while CSR-driven same-day calls carry the overall number. The subsidy masks the underperforming line.
    Watch
    Current
    Uneven contribution
    Target
    Each revenue-generating department should carry its direct costs

Warning

Data visibility gap: when your CRM and QuickBooks do not talk

The most common gross profit problem in the trades is not a pricing problem, it is a data problem. Invoiced revenue lives in the CRM (ServiceTitan, Workiz, Housecall Pro). Actual job costs, especially material postings and labor burden, live in QuickBooks. Until those two datasets are connected to the same view, gross profit is a monthly accounting number, not an operational one. Teams that run jobs all month without seeing real cost data make pricing and staffing decisions on revenue alone and discover margin erosion at the close.

Gross profit vs. related financial terms

TermHow it differs from gross profit
Gross marginGross profit expressed as a percentage of revenue. Gross profit = 66,000 dollars on 120,000 dollars revenue means gross margin is 55 percent. Same underlying math, different presentation.
Net operating income (NOI)What remains after overhead and operating expenses are subtracted from gross profit. Gross profit is the intermediate step; net income is what the owner actually keeps.
COGSThe subtraction. COGS is the total of direct job costs; gross profit is what is left after COGS comes out of revenue.
Revenue / booked revenueThe top line. Revenue tells you how much you invoiced; gross profit tells you how much of that you kept after paying to deliver the work.
Contribution marginA project-level variant that subtracts only variable costs (not fixed direct costs). Gross profit in the trades usually includes all direct job costs, so it is a fuller view than contribution margin.
Labor percentageOne component of COGS expressed as a share of revenue. Labor percentage tells you what one input is costing you; gross profit tells you what all direct inputs combined are costing you.

Gross profit FAQs

See gross profit on a live datacube financial dashboard

Datacube can consolidate QuickBooks financial data with your CRM revenue figures so gross profit updates as jobs close and costs post, not just at month-end. See what a financial dashboard built for your operation could show.