The economics of after-hours plumbing coverage: what on-call really costs vs what it earns

May 6, 2026 · 9 min read

After hours plumbing coverage is one of those operational lines that almost every shop runs and almost no shop has accurate cost numbers for. The fully-loaded cost of a single on-call rotation runs $2,200-$5,800 per month depending on market and tech wages. Whether your after-hours program is profitable, break-even, or a quiet drain on margin depends on a math problem most owners haven't actually done.

What after-hours coverage actually costs

The visible cost is the hourly premium you pay techs for emergency calls. The full cost has six components.

On-call premium pay (whether or not calls happen)

Most union and competitive non-union markets pay an on-call standby fee just for being on the rotation: $80-$200 per night, $200-$400 per weekend day. For a tech on call 8 weekday nights per month plus alternating weekends, the standby alone runs $1,200-$2,400/month before any calls happen.

Overtime/emergency rate when calls do happen

Active emergency calls pay 1.5x to 2x base rate. A tech making $36/hr base on a 90-minute emergency call costs $81-$108 in wages alone, before burden.

Burden on premium hours

Workers comp and unemployment rates apply to overtime hours. In plumbing your workers comp rate is 6-12% in most states. Burden on emergency overtime adds 22-30% to the wage cost.

Truck and fuel cost

Per-emergency-call truck cost runs $35-$85 depending on distance and parts consumed. The truck is going somewhere it wouldn't have gone otherwise.

Office and dispatch overhead

Someone has to take the call. If you have an answering service: $1.10-$1.85/minute or $2.50-$4.00/call. If you have an in-house CSR on call rotation: another standby premium. If you use AI overflow: monthly subscription. Allocate $4-$15 per emergency call for dispatch overhead.

Tech burnout / turnover cost

The hidden cost. Heavy on-call rotations correlate with 30-50% higher tech turnover. Replacing a journeyman plumber costs $18,000-$32,000 in recruiting, training, and ramp time. If your on-call rotation is contributing to losing one tech a year, that's $1,500-$2,700/month in pure turnover cost amortized.

Total fully-loaded cost

For a single tech rotation with moderate call volume: $2,200-$5,800/month. Two-tech rotation: $4,400-$11,600/month. The wide range is because markets, wages, and call volume vary substantially.

What after-hours coverage actually earns

Three revenue streams. The first one is the only one most owners count.

Direct emergency call revenue

The work the tech actually performed at 11pm on Tuesday. Average emergency ticket runs $400-$1,100 depending on scope. A typical residential plumbing on-call rotation captures 8-25 emergency calls per month. Direct revenue: $3,200-$27,500/month. Wide range is normal.

Same-customer follow-on work

The next-day call where the homeowner schedules the proper repair after the emergency band-aid. Roughly 40-65% of emergency tickets convert into follow-on work within 30 days. Average follow-on ticket: $1,200-$2,800.

Customer lifetime value of new acquisitions

Customers acquired through emergency calls have 30-50% higher lifetime value than customers acquired through standard inbound, because the trust formed during a crisis tends to be sticky. Most shops never quantify this number, but it's real and it's a significant chunk of why the math works for many shops even when the direct emergency revenue is thin.

The math that tells you whether to keep, change, or kill the program

Run this calculation on your last 12 months of data.

Step 1: Total emergency call revenue last 12 months. (Direct ticket value of every after-hours call.)

Step 2: Total fully-loaded after-hours cost last 12 months. (All six cost components above.)

Step 3: Same-customer 30-day follow-on revenue. (Pull every emergency call ticket; trace which customers had additional invoices in the 30 days after.)

Step 4: Direct margin on after-hours work. (Step 1 minus step 2.)

Step 5: Total margin including follow-on. (Step 1 + step 3 minus step 2 minus the cost of the follow-on work itself.)

Three possible outcomes:

Step 4 is positive and substantial (>20% margin). Program is healthy. Optimize but don't break it. This is unusual.

Step 4 is near zero or slightly negative, but step 5 is positive. Program is break-even on direct work and profitable through follow-on. This is the most common outcome. Acceptable but worth optimizing.

Step 5 is negative. Program is bleeding margin. Either reduce coverage scope (fewer hours, fewer techs on call) or restructure the cost side (AI overflow instead of dedicated tech standby for routing) or kill the program entirely and route after-hours calls to a partner shop in your area.

Three ways to fix an underwater after-hours program

Fix 1: Tighten what counts as emergency

Many shops accept everything as an emergency at 1.5x rate, including jobs that could wait until morning at standard rate. Train CSR or AI to triage: actual emergencies (active flooding, no water entirely, sewage backup, gas concerns) get same-night dispatch. Inconveniences (slow drains, dripping faucets, single-fixture issues) get scheduled for the next-day morning slot. This single change can swing 15-30% of after-hours calls into normal-rate next-day work, dropping cost without dropping revenue.

Fix 2: Consolidate to one tech rotation with stronger triage

Two-tech rotations exist because shops were afraid of dropping calls during overlap windows. With AI triage on the front end, one rotation can handle most demand and the standby cost halves.

Fix 3: AI call handling for the routing layer

Replace the human dispatcher who's on call all night with AI that handles intake and only escalates to the tech for actual dispatch decisions. Cuts dispatch overhead by 60-80% and the AI doesn't burn out.

Common questions about after-hours plumbing economics

What's the right emergency rate to charge?

For residential markets in 2026: $135-$185 dispatch fee plus 1.5x-1.8x standard hourly rate. Going higher than 2x base risks the customer hanging up and finding someone cheaper. Going lower than 1.5x doesn't cover your real costs.

Should we charge a separate emergency dispatch fee?

Yes. The dispatch fee captures the standby and routing costs that exist whether or not the tech actually fixes anything onsite. Separates the cost-of-showing-up from the cost-of-the-work. Most homeowners accept this once it's explained: "There's a $165 emergency dispatch fee that covers our tech being available right now. The repair cost is separate and depends on what we find."

What about a partner shop coverage arrangement?

You and a non-competing plumbing shop in your market split after-hours coverage on alternating weeks or alternating months. Reduces cost roughly in half but creates customer-experience risk if your partner shop's quality differs from yours. Workable for some shops, not all. Requires solid trust and aligned pricing.

How does this change for commercial after-hours work?

Commercial emergency rates are 2x-3x residential because the customer (property manager, restaurant, hotel) needs uptime. Margins are usually better. Volume is usually lower. Many shops separate residential and commercial after-hours dispatch entirely so the commercial accounts get faster response without competing against residential overflow.

When does it make sense to kill the program entirely?

If step 5 (total margin including follow-on) is negative for three consecutive quarters, and your team is burning out, and your follow-on conversion rate from emergencies to next-day work is below 35%. At that point you're paying real money to acquire customers who don't even stay. Kill it, route after-hours calls to a partner, and reinvest the saved cost into better daytime marketing.

What to do this week

Pull your last 12 months of after-hours job tickets. Calculate steps 1-5 above. The number will tell you whether your after-hours program is working or quietly draining the shop.

If you don't have clean data because your CRM doesn't separate after-hours tickets from standard tickets, fix that this week. Tag every job ticket with timestamp and after-hours flag going forward. Within 90 days you'll have the data to make this decision properly.

If your CSR or dispatcher is burning out being on call themselves, our AI call intake handles after-hours intake and triage, escalating only the genuine emergencies to your on-call tech. Cuts your dispatch standby cost dramatically while keeping every emergency captured.