Water heater replacement pricing calculator
Book rate, hours, what the unit costs you, markup, permit, haul-away and trip fee in. Cost floor, your price with your unit, and your price when the customer bought the heater at the big-box store out, checked against the 2026 band for the unit type. The water heater is the most-asked-about flat price in residential plumbing, and the one most often quoted from memory.
Your numbers
The math
Labor = hours on site × book rate
Materials = (unit cost + parts) × (1 + markup)
Cost floor = labor + unit cost + parts + permit + haul-away + trip fee
You-supply price = labor + materials at markup + permit + haul-away + trip fee, rounded up to $25
Customer-supplied price = labor + parts at markup + permit + haul-away + trip fee, rounded up to $25
Example at the defaults: three hours at $90 is $270. The $850 unit plus $120 of parts is $970 at cost, $1,310 at 35 percent markup. Permit $100, haul-away $60, trip fee $75. Floor $1,475, price $1,825, which is the number the 2022 contractor price book printed for exactly this job, and inside the 2026 band of $1,500 to $2,400. The customer-supplied version is $270 plus $162 of parts plus $235 of fees, $675. The $340 gap is what the markup on the unit was worth, and it is the reason "I already bought the heater" is a different job with a different price, not the same job minus the tank.
What moves the number
Hours is the one to be honest about. A like-for-like swap in an open garage with good shutoffs is two and a half hours. The same swap in a closet with a corroded union, a gas line that needs a new sediment trap and an attic that needs a second person to get the tank down is five, and the price should say so before you start, not on the invoice. Code items the inspector will want (expansion tank, pan with a drain to daylight, seismic straps, a proper vent connector) each add an hour or so and $70 to $150 of parts, and they belong on the quote as separate lines so the customer sees why the neighbour paid less. Power-vent and tankless are their own bands because the unit alone is $1,400 to $2,300 and the venting, condensate and gas sizing make it a day, not a morning. Price them from the same inputs with the hours and unit cost changed, and the calculator will check them against their own band.
How to say it
Give one number for the standard swap and name the two things that change it. "A 50-gallon replacement with your new heater, permit and haul-away is $1,825. If the inspector wants an expansion tank or a pan drain those are $250 and $200, and I will tell you on site before I do them." If they bought the unit already, quote the customer-supplied price and say plainly that the warranty and any return trips for a bad unit are theirs. Both prices come out of the same price book, in the you-supply and customer-supplied columns. The Plumber Pricing Kit ($49) has both columns for 37 jobs, with the hours and material costs editable, a quote tab and the "I bought the heater at the big-box store" script.
Three mistakes that turn a water heater into a loss
- Marking up the unit at retail, not at your cost. If the customer can see the same tank for $700 at the big-box store and your invoice says $1,300 for it, you will lose the argument. Mark up your supply-house price and let the total carry the margin.
- Leaving the permit off the quote. It shows up later as a surprise, or you skip it and carry the liability. Put it on the quote as its own line at what the city charges.
- Pricing the customer-supplied job as the full job minus the tank. That prices it at $1,000 and the customer thinks the unit was $825 of your $1,825. Price it from your hours and parts. It is usually $600 to $1,000, and you say what is and is not covered.