On this page7 sections
The customer on the phone has already seen a number. A cost guide told them what a water heater replacement costs, and now they want to know why yours is different. Your number can't come from that page. It has to come from your rate, your supplier's invoice, your permit office and the scope at this address.
This guide builds one replacement price with the site's example shop, then checks what that price earns. The heater cost, parts, hours and markups are examples. The permit fee comes from one county's published schedule, shown next to schedules from two cities in other states.
Why average cost pages can't price your job
Angi explains that its cost figures come from surveying more than 30,000 of its customers about their project costs, combined with other research. That is a picture of what customers reported paying, across many shops, regions and job scopes. Angi itself tells readers to get a price estimate from a local plumber for their project.
ShiftFlow, a software vendor, makes the same point from the shop side: there is no reliable national hourly rate for every plumbing business, and a flat-rate quote can't be compared cleanly with an hourly figure. It suggests checking local prices only as a gut check once you have your own number, and never cutting below your own cost to match another shop.
An average doesn't know any of the things that set your price:
- your billable rate, which carries your wages, burden, overhead, trucks and profit
- your supplier's price for the heater and the install parts
- the permit fee where the job is
- the scope at this address: venting, gas or electrical changes, access, and whatever the adopted code and the manufacturer's instructions require there
- how often this job comes back on you
Break the swap into tasks and a written scope
Simpro, a software vendor, suggests treating a replacement as three tasks: remove and haul the old unit, install the new one, and test and inspect. Each task gets its own hours and parts, and the entries combine on the quote. That makes it easy to price a job where one part changes, such as a different disposal arrangement.
Check the size before you price a like-for-like swap. A same-size replacement is only right if the old heater was right. For tank-type heaters (the rule says non-flow-activated), the federal test procedure defines first-hour rating as an estimate of the most hot water the heater can supply in an hour that starts with it fully heated (10 CFR 430, Appendix E). The water heater sizing guide compares it with the household's peak-hour demand.
Then write the scope: what the price includes, and what it leaves out. This guide doesn't say what the code requires on a given job. That is for the local building department or other authority having jurisdiction, and for the manufacturer's instructions.
Work outside the standard scope gets its own entry or its own quote: changes to the gas line, venting or electrical circuit, a new location, or a switch to tankless.
Simpro's example of good, better and best options is a standard tank, a high-efficiency tank and a tankless unit. Build each option from its own heater cost, parts and hours.
The worked example
The inputs, all examples except the permit fee:
- Standard hours: 3.0, the average from your own tickets for this job.
- Billable rate: $125.20, the example shop from the labor rate guide. It assumes 65% of worked hours are billable, a figure from a sample of 300 HVAC companies by Field Promax, a software vendor, reported by ACHR News, not a measured figure for your shop. The sample measured 65% of paid time; applying it to worked hours gives fewer billable hours and a higher rate.
- Heater: $950 on the supplier invoice. Install parts: $135.
- Markup: 30% on the heater and 50% on install parts. A lower markup on the expensive item is one approach; the right figures are yours to set.
- Callback allowance: 2%.
- Permit: $120, from DeKalb County, Georgia (the first row of the table below and the middle of its three fees; yours will differ).
- Disposal: $25, what you pay to get rid of the old unit.
About the permit: each jurisdiction sets its own fee, and the schedules are built differently. Three published schedules, read October 4, 2026:
| Jurisdiction and schedule | What it lists for a residential water heater | One heater swap, as listed |
|---|---|---|
| DeKalb County, Georgia (fee schedule, last updated June 8, 2026) | $10 per water heater, a $100 minimum plumbing permit fee and a $20 technology fee on each permit | $120.00 |
| San Diego, California (Information Bulletin 103, May 2026) | $122.97 per water heater; in a single-family home, duplex or townhouse it qualifies for a no-plan Simple Permit | $122.97 |
| Phoenix, Arizona (development fee schedule, effective January 20, 2026) | Valuation-based (materials, labor, overhead and profit); the $1 to $1,000 band lists a $98 minimum for residential water heaters | $98 minimum; ask the city how it values the job |
Read together, DeKalb's lines put a plumbing permit for one heater at the $100 minimum plus the $20 technology fee, or $120, and the worked example uses that figure. The same schedule lists plumbing re-inspection fees of $25 for the first, $50 for the second, and $100 for the third and after. Treat each of these as one jurisdiction's number, not a benchmark. Confirm with the office that issues permits for the job's address, including whether a gas or electrical permit is also needed, before you put any fee in a price.
| Line | How it's figured | Amount |
|---|---|---|
| Labor | 3.0 h × $125.20 | $375.60 |
| Heater | $950 × 1.30 | $1,235.00 |
| Install parts | $135 × 1.50 | $202.50 |
| Subtotal | $1,813.10 | |
| Callback allowance | 2% × $1,813.10 | $36.26 |
| Permit, at cost | DeKalb County example | $120.00 |
| Disposal, at cost | example | $25.00 |
| Total | $1,994.36 | |
| Price | rounded up to the next $5 | $1,995 |
The labor line already carries overhead, the truck and profit, so there is no separate overhead line. The permit and disposal pass through at cost, outside the allowance. That is this example's choice. If you charge for the office time it takes to pull permits, show it as its own line or build it into the standard hours.
Check the margin before the quote goes out
Now look at the same job the way the job cost calculator does: labor at loaded cost, plus overhead and the truck per labor hour.
| Cost line | Amount |
|---|---|
| Heater and parts at cost | $1,085.00 |
| Labor at loaded cost, 3.0 × $66.07 | $198.21 |
| Permit and disposal | $145.00 |
| Direct cost | $1,428.21 |
| Overhead and truck, 3.0 × $46.61 | $139.83 |
| Total job cost, the break-even price | $1,568.04 |
| Net profit at $1,995 | $426.96 |
| Net margin | 21.40% |
After setting the $36.26 allowance aside for callbacks, $390.70 is left, a 19.58% net margin.
The profit comes from five places: $285.00 of heater markup, $67.50 of parts markup, $37.56 of profit built into the rate (3.0 hours × the $12.52 gap between $125.20 and the $112.68 break-even rate), the $36.26 allowance and $0.64 of rounding. Most of it rides on the heater markup, so that choice moves the price most. At a 15% heater markup, also an example, the same build comes to $1,850, with a 15.24% net margin.
Two things eat into it:
- The job runs long. At 4.5 hours instead of 3.0, the extra 1.5 hours cost $169.02 at full cost, and net profit falls to $257.94, or 12.93%. Thanks to the heater markup, this job can run about 3.8 hours past standard before profit hits zero.
- The inspection fails. In the example county, the first re-inspection fee is $25. Add one hour back at the house at the $112.68 full cost, and the return costs $137.68, leaving $289.28, or 14.50%.
A cross-check: pricing the same total job cost for a 10% net margin gives $1,742.27. That method puts one target margin on everything, while the rate method earns a markup on materials. Neither is wrong, but your price book should use one method on purpose.
Sales tax depends on the state
What follows is general information, not tax advice; ask your state revenue department or your accountant how it applies to your contracts.
In Georgia, contractors are deemed the consumers of the materials they use in construction and pay tax when they buy them (Georgia DOR), so the tax you paid on the heater is part of its cost. In Texas, residential repair labor isn't taxable; under a lump-sum contract you pay tax on the heater when you buy it, and under a separated contract you buy it with a resale certificate and collect tax on it from the customer (Texas Comptroller Pub. 94-116).
California's CDTFA takes a different line in Publication 9: contractors are generally consumers of materials but retailers of the fixtures they furnish and install, and a contractor replacing a fixture is treated as a retailer. The publication names water heaters built into water systems in its list of fixtures for food-service contracts; ask the CDTFA how it classifies a residential swap.
Where you do collect tax from the customer, the site's tools keep it out of the job's revenue and margin; ask your accountant how it's treated for income tax. The sales tax guide covers more states.
Next step
Run your own numbers in the flat-rate price calculator: your standard hours, your rate, the heater and parts cost, your markup and your allowance. The calculator takes one markup, so for two rates enter the blended figure; in the example, $1,437.50 ÷ $1,085 − 1 = 32.49%. Add the permit and disposal at cost, then enter the final price in the job cost calculator to see the net margin before the quote goes out.
Sources
- DeKalb Development Services Fee Schedule
- Fee Schedule for Mechanical, Electrical, Plumbing/Gas Permits (Information Bulletin 103, May 2026)
- Planning and Development Department Fee Schedule (Phoenix City Code, Chapter 9, Appendix A.2), effective January 20, 2026
- Appendix E to Subpart B of Part 430, Uniform Test Method for Measuring the Energy Consumption of Water Heaters
- Publication 9, Construction and Building Contractors (February 2025)
- Report: Only 65% of HVAC Technician Time is Billable Hours
- Plumbing Price Book: What It Is & How to Build One
- How Much Does Plumbing Repair Cost? [2026 Data]
Tools for the job
Tool listPlumbing + HVAC2 itemsSpecs read
As an Amazon Associate, Trade Price Book earns from qualifying purchases. Amazon links are marked “(paid link)”; prices aren’t shown here.
Testing and water heater serviceMilwaukee 2771-20
M18 Transfer Pump
- Self-priming pump that moves up to 480 gallons per hour, with up to 18 ft of lift and 75 ft of head height.
Specs: Milwaukee product page, read
View on Amazon for Milwaukee 2771-20(paid link)
Combustion and electrical testingtesto 0564 3002 82
Next-Gen testo 300 Smoke Edition Combustion Analyzer Kit
- Kit: testo 300 with O2 sensor and CO sensor (0 to 4,000 ppm), mains unit, basic flue-gas probe, spare filters, EasyHeat software, case and Bluetooth connector.
Specs: testo product page, read
View on Amazon for testo 0564 3002 82(paid link)
Newsletter
At most one e-mail a day, only about new guides and tools. No tracking pixels. How we handle your address
