Practical trade business guide

5 Signs You’re Undercharging for HVAC Work

Five practical signs your HVAC pricing may be too low—and how to correct labor, overhead, diagnostic, material, and callback assumptions.

By Goopuh

How this guide was prepared

Goopuh uses research and AI-assisted tools to organize this guide around a specific reader task. AI assistance is not field experience. We label calculations as examples, link primary or authoritative sources where they are used, welcome corrections, and flag decisions that require a qualified professional or current local requirements.

HVAC technician checking an outdoor air-conditioning system with gauges

Quick answer

You may be undercharging when the schedule stays full but cash remains tight, owner pay depends on leftover money, unbillable travel and diagnosis are ignored, material increases erase expected profit, or callbacks turn completed jobs into losses. Confirm the problem with job-cost data rather than instinct alone.

Pricing & profit guideOpen the complete contractor pricing guide

1. The calendar is full but cash is always tight

High activity does not guarantee healthy pricing. If deposits are arriving but there is never enough for payroll, taxes, vehicles, tools, replacements, and predictable owner pay, the selling price may not be recovering the complete cost of service.

Review collected revenue—not only invoices sent—and compare it with direct costs, overhead, debt obligations, and required reserves.

2. Owner labor is treated as free

An owner working in the field has a labor cost even if money is taken as draws. Price the technician role and the ownership role separately. Otherwise the business may appear profitable only because the owner is providing unpaid estimating, dispatch, bookkeeping, callbacks, and field labor.

3. Diagnostic and travel time disappear

HVAC service capacity includes driving, parking, customer intake, setup, diagnosis, authorization, parts handling, documentation, cleanup, and payment—not only time with tools on the equipment. When pricing counts only repair minutes, much of the workday produces no recovery.

Map an average call from dispatch to completion and decide how diagnostic and travel capacity will be recovered.

4. Material changes erase the expected result

A parts markup must do more than reimburse the purchase price. Ordering, pickup, stocking, warranty handling, damaged parts, financing time, and inventory risk all create cost. Update price inputs regularly and distinguish special-order exposure from common truck stock.

5. Callbacks turn good weeks into bad weeks

Not every return visit is preventable, but every return visit consumes capacity. Track the original job, reason, labor, materials, travel, and whether the cause was workmanship, diagnosis, product failure, customer expectation, or a separate problem. Patterns show whether pricing, training, documentation, or quality control needs attention.

Run a simple job-cost test

Select a representative group of completed calls. For each one, compare collected revenue with loaded labor, material, equipment, permit, subcontractor, callback, and allocated overhead costs. Then calculate gross profit and gross margin consistently.

Review Question
Labor Did the estimate include dispatch-to-close time and labor burden?
Materials Were current cost, handling, and warranty exposure included?
Capacity Did travel, diagnosis, pickup, and documentation consume unrecovered time?
Quality Did a callback or unfinished recommendation change the result?
Collection Was the full invoiced amount actually collected?

Correct pricing without guessing

Update one layer at a time: labor cost, service-call structure, material pricing, overhead recovery, and target profit. Test the new method against actual jobs and explain prices through clear scope and professional service—not an apology.

Continue with the full HVAC service-call pricing guide.

Run a thirty-day underpricing audit

Select a representative group of completed diagnostic calls, repairs, maintenance visits, and replacements. For each job, compare approved revenue with actual technician hours, parts, equipment, permits, subcontractors, warranty or callback cost, discounts, and other direct costs. Then compare estimated and actual gross profit dollars and margin.

Finding Likely cause to test Possible correction
Labor overrun across one repair type Flat-rate task or production assumption is stale Rebuild the task from recent completed calls
Small calls produce little gross profit Dispatch and travel capacity is missing Recalculate the minimum service charge
Part cost repeatedly exceeds estimate Price book or purchasing data is stale Update landed cost and handling assumptions
Sold margin is acceptable but cash is weak Collections, deposits, inventory, or overhead Separate cash-flow and operating-profit diagnosis

Worked before-and-after service-call example

A repair sells for $425. Actual loaded technician cost is $126, parts and handling are $105, and direct truck or dispatch cost is $44. Direct cost is $275, leaving $150 gross profit and about 35.3 percent gross margin under this company’s classifications. If the call also consumed an unrecorded hour of travel and pickup costing $54, true direct cost becomes $329 and gross margin falls to about 22.6 percent.

The fix is not automatically a blanket price increase. The company might revise expected capacity, stock the common part, change the service-area rule, update the task price, or combine several changes. The completed-job record shows which response addresses the actual leak.

Correct prices in a controlled sequence

Update loaded labor and parts first, then overhead and capacity assumptions, then minimum charges and task prices. Test the revised model on recent jobs before publishing it. Train office and field staff on what each charge includes so explanations remain consistent.

  • Recalculate loaded technician cost
  • Update current landed parts cost
  • Measure dispatch, travel, and nonbillable capacity
  • Review callbacks and warranty labor by task
  • Reprice the highest-volume or largest-loss tasks first
  • Monitor booking, gross profit, and customer concerns after the change

Separate underpricing from the other profit problems

A low completed margin can come from a price that was too low, but it can also come from inaccurate scope, slow production, missing purchase returns, excessive travel, unapproved work, discounting, or a callback. Compare the original estimate with actual results before changing the price book. If estimated margin was healthy and actual margin was not, identify the variance first.

Evidence Primary question First response
Estimated and actual cost are close, but margin is weak Was the selling-price formula or target insufficient? Review price and margin approval
Actual labor repeatedly exceeds estimate Is the task assumption, crew plan, or workflow wrong? Rebuild production data and investigate execution
Revenue is missing approved work Were changes documented and invoiced? Repair authorization and billing flow
Margin is healthy but cash is tight Are deposits, receivables, inventory, or debt creating timing pressure? Build a separate cash-flow diagnosis

Model a controlled price correction

Suppose a common repair currently sells for $500 and verified cost is $390, producing $110 gross profit and a 22 percent margin. The company determines that comparable work needs to produce a 30 percent margin under its plan. At the same cost, the calculation is $390 ÷ 0.70, or about $557.14.

Before publishing $557, verify that $390 includes the expected capacity, parts, handling, warranty exposure, and cost classifications. Review recent booking and completion data, round or package the customer-facing price consistently, and define who can approve discounts. The mathematical output is an input to the business decision, not proof that every market or customer will accept it.

Roll out corrections without disrupting the team

Update the highest-volume weak task first. Give office and field staff the effective date, included scope, authorization language, and approved exceptions. Preserve old prices on already accepted work unless the agreement allows otherwise. Carefully review new estimates, booking results, actual margin, and customer questions weekly for the first month.

If customers object, listen for whether the concern is total price, unclear value, financing, scheduling, or trust. Do not immediately reverse accurate pricing based on one reaction. Use a reasonable sample of qualified opportunities and completed jobs.

Set a repeatable monthly pricing review

Review the ten largest or most frequent completed calls, task-level variances, callbacks, discounts, parts changes, and lost estimates. Assign each correction to a price input, scope template, route rule, or operating process. Date the change and compare the next group of completed calls with the old baseline.

Free editable tool

Put this guide into practice

Use a practical Goopuh template to capture the details while they are fresh. Email updates are optional.

Download the free Job Costing & Profit Tracker
Browse all free resources

From template to operating system

Run the workflow in Goopuh Trade Profit OS

Goopuh is building the connected system for estimates, job records, actual costs, customer follow-up, and clearer profit decisions.

Explore Goopuh Trade Profit OS

Continue building the system

Frequently asked questions

Does being busy mean HVAC prices are correct?

No. A company can stay busy with underpriced work. Use collected revenue and complete job costs to evaluate pricing.

Should HVAC companies charge a diagnostic fee?

A defined diagnostic or service-call charge is one common way to recover dispatch, travel, and diagnostic capacity. The structure should fit the company, market, and applicable rules.

How can HVAC callbacks be priced?

First track and reduce preventable callbacks. Expected warranty and service-recovery costs should be considered in the overall pricing model rather than surprising one customer after a workmanship issue.

Pricing note: Examples explain the method; they are not guaranteed market rates. Use your actual labor, overhead, taxes, insurance, licensing requirements, risk, and local conditions before quoting work.