All articles
Operations6 min readOctober 5, 2026

How to Handle an Angry Customer on the Phone at a Contracting Business

A six-step script for the angry call every contractor eventually gets, plus the arithmetic for deciding on the spot how much a fix is worth offering.

Short answer: let them finish, say back what went wrong in their words, own the part that's yours, tell them the one thing you'll do next and when, do it, then call back to confirm it's done. Don't argue the facts in the first two minutes. The caller isn't ready to hear them yet, and anything you say before they've been heard sounds like an excuse even when it's true.

Below is the script, then the arithmetic for deciding how much a fix is worth before you say a number out loud.

Step 1: Let them empty the tank

Say your name and "tell me what happened," then stop talking. Don't interrupt to correct a detail. If they pause, say "go on" or "what else." Take notes so you can repeat it back accurately. Most of the heat in an angry call comes out in the first minute if nobody fights it.

Step 2: Say it back in their words

"So the tech was due between 8 and 10, nobody showed, nobody called, and you took the morning off work for it. Did I get that right?" Use their words, not yours. "You experienced a scheduling delay" is company language and it makes people angrier. "Nobody showed and nobody called" is what happened.

Step 3: Own your part, exactly

Apologize for the specific thing that was yours. "We should have called you by 9 when the first job ran long. That's on us." Don't apologize for things that weren't yours, and don't over-apologize. One clean, specific apology does more than five vague ones. If the facts are genuinely in dispute, say "let me pull up the job and call you back in 15 minutes," then do that. A promised callback at a stated time is itself a fix.

Step 4: One next action, with a time on it

Give them one concrete thing and a deadline you control: "I'm moving you to the first stop tomorrow, 7:30, and I'll text you the tech's name tonight." Not "we'll do our best to get someone out." Vague promises restart the argument. If you can't commit to a time yet, commit to when you'll know: "I'll have a slot for you by 4 today."

Step 5: Decide what the fix is worth, with numbers

This is where most owners either give away too much in the heat of the call or dig in over $50 and lose a customer. Work it out once, before the next angry call, and give whoever answers the phone a ceiling they can offer without asking you.

Every figure below is an example assumption, labeled as one. Swap in your own.

  • Average ticket (assumption): $350.
  • Gross margin on a ticket (assumption): 45%. So one ticket is worth $350 × 0.45 = $157.50 in gross profit.
  • Repeat visits you'd expect from a kept customer over three years (assumption): 3. That's 3 × $157.50 = $472.50 of gross profit at stake, not counting referrals.
  • Cost to win a new customer to replace them (assumption): $120 in ads and time per booked job.

So losing this customer costs roughly $472.50 in future profit plus $120 to replace them: $592.50. Against that, the common fixes cost:

  • Waive the trip fee ($89): real cost is your margin on it, call it $89 if it's pure fee. Cheap relative to $590.
  • Take 20% off the ticket: $350 × 0.20 = $70.
  • Send a tech back out at no charge for a one-hour re-check: tech pay $35 × 1.3 burden = $45.50, plus truck $21 = $66.50.
  • Refund the whole job: $350, which is still less than the $592.50 you lose if they walk and tell three neighbors.

Read that list the other way too. If the customer is wrong on the facts, a $66.50 re-check that proves the work was right costs less than ten minutes of arguing and settles it. The number tells you to stop defending and start fixing. A fix under $100 is almost always worth offering on the spot; above that, say "let me confirm that and call you back in 15," and use the 15 minutes to check the job.

Step 6: Close the loop

Do the thing, then call or text to say it's done. "Tech was out at 7:30, replaced the cartridge, no charge, you're set." The callback is the part that turns a complaint into a referral. Skip it and the fix doesn't count, because they don't know it happened.

What not to say

  • "Calm down." It has never once worked.
  • "That's our policy." Policy is your problem, not theirs.
  • "I understand how you feel." You don't, and they know it. Say what happened instead.
  • "Nobody else has complained." You just told them they don't matter.
  • Anything that starts with "but" right after an apology. The "but" deletes the apology.

When to end the call

Abuse is different from anger. If a caller swears at the person answering, say once, calmly: "I want to fix this, and I can't do it while you're shouting at me. I'll call you back in 30 minutes." Then hang up and call back in 30 minutes. Most of the time the second call is a different conversation. Put that line in writing for whoever answers your phone so they know they're allowed to use it.

Give the front desk the script and the ceiling

The owner usually handles angry calls well because the owner can make a decision. The call goes badly when it lands on someone who can only say "I'll have him call you." Write down the six steps, write down the concession ceiling from Step 5, and tape both next to the phone. If Bob answers for you, give it the same ceiling and it'll say the same thing at 9pm that you'd say at 9am.

Ready to stop missing calls?

Bob answers every call, books every job, and handles your email — 24/7.

See Bob AI