Bookkeeping for electricians, plumbers, and HVAC contractors has to handle two businesses under one roof: short-cycle service work and longer project installs. If those land in the same buckets, the company P&L can look fine while service margins, truck materials, and project jobs all lie. Specialty trade accounting is not "general bookkeeping with a trade name on the invoice." It is setup that matches how techs work, how materials move, and how you bill.
Below: service work vs project work, tracking calls / maintenance agreements / installs, materials and inventory on trucks, job costing for small tickets vs large projects, technician labor by job, and the monthly reports a trade owner actually needs. Want trade-specific books set up right? Call (480) 617-2664, or start with a DIG Diagnostic.
Specialty trades win when the books respect three realities:
Get those right and monthly close, cash planning, and owner decisions get simpler. Skip them and you get fiction: busy weeks that "feel" profitable until inventory, warranty callbacks, or a big install catches up.
Blackline Financial is construction-only bookkeeping and advisory for contractors and specialty trades (roughly $1M–$30M) — electricians, plumbers, HVAC, and related trades included. We do not prepare tax returns — tax timing and inventory elections are something we coordinate with your CPA. Monthly books and job-cost hygiene sit in Foundation / Frame; deeper owner packaging often sits in Blueprint. Every engagement starts with a DIG Diagnostic; every package is custom-quoted. Office: 4320 E Brown Rd Suite 103, Mesa, AZ 85205. East Valley and Phoenix-area trade owners often start from our city pages for Mesa, Gilbert, Chandler, Scottsdale, and Phoenix — this page owns the trade pattern; those pages own local hire intent.
Most specialty trade shops run service and projects side by side. Treating them as one pile of revenue is how owners lose the plot.
| Mode | What it looks like | Bookkeeping habit that helps |
|---|---|---|
| Service / T&M calls | Short tickets, same-day or next-day cash, high volume | Separate income / job tags for service; close tickets fast; materials and tech time on the call |
| Maintenance agreements | Recurring visits, prepaid or billed monthly | Deferred / prepaid revenue discipline with your CPA; track visits against the agreement, not as random "misc service" |
| Install / project work | Multi-day or multi-week jobs, progress or milestone billing, maybe retainage | Full job costing, WIP when progress-billed, change-order accounting when scope moves |
| Mixed week | Techs bounce from callbacks to a new install | Time and materials coded to the ticket or project, not to a catch-all "field" bucket |
Why "two books" does not mean two QuickBooks companies. It means clear classes, locations, departments, or Project types — whatever structure you can keep every day — so service margin and project margin can be read apart. One company P&L that blends a fat service month with a bleeding install hides both stories.
Cash timing differs too. Service often collects faster; projects may wait on draw packages, retainage, or GC pay cycles. A rolling 13-week cash flow (and the contractor view on contractor cash flow) should see both streams — not average them into one hopeful number.
Every call needs a home: customer, tech, materials used, labor hours, and whether it was warranty, callback, or billable. If invoices go out from memory and costs land in "parts" with no job tag, you cannot answer which call types make money.
Practical pattern:
Agreements are not the same as one-off calls. Billing may be monthly, quarterly, or prepaid; visits may lag or lead cash. Bookkeeping hygiene:
Larger installs behave like other construction jobs: estimate → cost codes → progress or milestone billing → closeout. Use the same money-page stack as GCs and other trades:
| Work type | Minimum tracking | Common failure |
|---|---|---|
| One-off service call | Ticket ID + parts + tech hours + invoice | Parts in inventory expense; labor in payroll only |
| Maintenance agreement | Agreement ID + visit log + extras billed | All visits dumped as "service"; prepaid ignored |
| Project install | Job / Project + cost codes + billing status | Treated like a big service ticket until cash gets ugly |
Specialty trades live on materials that leave the building before they hit a customer. Vans stocked with fittings, breakers, refrigerant, wire, and consumables are job-cost reality — not "shop supplies" forever.
This section is educational bookkeeping hygiene, not a pitch for any inventory software product. Use whatever system you already trust; the books still need a clear story.
| Habit | Result |
|---|---|
| PO / bill coded to job or stock location | Job cost and truck stock stay honest |
| Month-end "materials" dump | Service and project margins both lie |
| Special-order gear on the install Project | WIP / job cost can explain the deposit and the bill |
| No count discipline at all | Ordering by panic; cash surprises |
Inventory valuation, capitalization, and tax treatment stay with your CPA. Blackline keeps the operational coding clean so job cost, month-end close, and cash views are usable — we do not sell or certify inventory software.
Job costing still applies when the "job" is a two-hour service call — the grain changes.
| Small tickets (service) | Large projects (installs) | |
|---|---|---|
| Unit of costing | Call / ticket / work order | Project with estimate + cost codes |
| Detail level | Light codes (labor, materials, subcontract) often enough | Deeper codes that match the bid |
| Billing | Invoice on completion or net terms | Progress, milestone, or draw package |
| Review cadence | Weekly ticket margin samples + monthly service rollup | Job-by-job vs estimate; WIP when progress-billed |
| Failure mode | High volume, no tagging → "service" is a black box | Costs on job, COs not billed → underbilling and fade |
Do not force every service call into a 40-line cost-code tree. Techs will not use it. Do force some job identity so you can see average margin by call type, tech, or agreement — and so materials/labor do not vanish into overhead.
Do not treat a $80k install like a fat service ticket. Once duration, deposits, change orders, or retainage show up, use full job costing, link QBO Projects setup, and pull WIP when earned vs billed matters.
Labor is usually the largest controllable cost in a trade shop. If tech hours only show up in payroll totals, you cannot manage dispatch, overtime, or which work types pay.
Burden still matters. Straight wages alone understate job labor. Payroll taxes, workers' comp, benefits, and PTO loads belong in a consistent burden approach — same idea as on the job costing hub. Classification (employee vs sub) and certified-wage rules are for your payroll provider, counsel, and CPA; Blackline keeps the job-cost side consistent and coordinates when tax questions appear.
| Labor habit | Result |
|---|---|
| Time to ticket / Project daily | Service and install margins believable |
| Weekly "guess the job" coding | Trends useless; techs learn the books do not matter |
| All labor in one payroll expense | Busy ≠ profitable |
| Burden reinvented each month | Bidding and reviews cannot learn |
Dispatch software and payroll tools vary; the bookkeeping rule does not: time needs a job home before payroll is closed, not after the owner asks why June felt tight.
You do not need a 40-tab dashboard. You need a short stack you open on a calendar.
| Report | Why a trade owner opens it |
|---|---|
| Service vs project P&L (or class / department) | See which rhythm is carrying the company |
| Job / ticket margin sample | Spot call types or installs going sideways early (job costing) |
| AR aging + retainage | Service invoices and project holds are different cash stories (retainage) |
| WIP (when you progress-bill) | Earned vs billed on longer installs (WIP schedule) |
| Cash view (13-week) | Payroll, material buys, and slow GC pay on one timeline (13-week cash flow) |
| Month-end close checklist | Bank, AP/AR, job-cost completeness before you trust the pack (month-end close) |
Deeper owner packaging — bonding conversations, lender packs, forecast discipline — often sits in Blueprint / fractional CFO for construction after the books are trustworthy. The starting move is still a DIG Diagnostic, then Foundation / Frame on services.
East Valley / Phoenix note. Light local context only: trade shops across Mesa, Gilbert, Chandler, Scottsdale, and Phoenix hit the same service-vs-project pattern. Hire-intent city pages stay on /construction-bookkeeping-mesa-az, /construction-bookkeeping-gilbert-az, /construction-bookkeeping-chandler-az, /construction-bookkeeping-scottsdale-az, and /construction-bookkeeping-phoenix-az. This URL is the specialty-trade pattern page — one page for electricians, plumbers, and HVAC — not three fake storefronts.
Illustrative only — not a client story, not a promise of results.
A fictional HVAC shop books a strong service month and one large install. The company P&L looks healthy. On review:
After retagging tickets, coding truck parts to calls, putting install labor on the Project, and parking prepaid with the CPA's method, the owner could see: service still solid, install thin, agreement cash not the same as earned service. No new software heroics — clearer rules and a monthly review.
| Signal | Healthy specialty-trade books |
|---|---|
| Service vs projects | Separable on the P&L without a forensic rebuild |
| Tickets / Projects | Costs and invoices share an ID while the work is fresh |
| Truck materials | Path from purchase → stock or job → ticket |
| Tech labor | Hours on calls/projects before payroll locks |
| Monthly pack | Service/project split, job samples, AR/retainage, cash, close — on a calendar |
| Tax | Operational trail clean; elections and returns with your CPA |
Specialty trade bookkeeping is construction-aware bookkeeping set up for electricians, plumbers, HVAC contractors, and similar trades — especially the mix of service calls, maintenance agreements, and project installs, plus materials on trucks and technician labor by job.
Because they have different billing speed, cost patterns, and cash timing. One blended number can hide losing installs behind busy service weeks (or the reverse). Separate tags or departments let you manage both.
Purchases should land as job, truck stock, or shop — and parts used on a call should hit that ticket (or a clear allocation rule). This is operational hygiene; inventory valuation and tax treatment stay with your CPA. Blackline does not sell inventory software.
They need a ticket or job identity with labor and materials — not necessarily a deep cost-code tree. Large installs need fuller job costing, and progress-billed work needs WIP discipline.
At minimum: service vs project profitability, a sample of ticket/job margins, AR (and retainage if you hold or are held), cash outlook, and a completed month-end close. Add WIP when you progress-bill.
Yes — for construction and specialty trades in the roughly $1M–$30M range. Start with a DIG Diagnostic; ongoing books in Foundation / Frame; owner-level packaging in Blueprint. Custom-quoted on services / contact. We do not prepare tax returns; we coordinate with your CPA.
Tell us about your electrical, plumbing, or HVAC company and we will put together a custom quote — usually within one business day. DIG first; Foundation / Frame for the monthly seat; no invented rate card.
Book the DIG Diagnostic →Call (480) 617-2664
Blackline Financial · 4320 E Brown Rd Suite 103, Mesa, AZ 85205