All articlesSales

How Should a Contractor Respond When a Customer Asks for a Discount?

The Trusso TeamNovember 5, 20267 min read

When a customer asks for a discount, the right move is almost never to cut the number on the estimate. Instead, change what's being sold: trim the scope, swap materials, shift the schedule, or offer payment terms. That lets you say yes to something without eating the margin you built into the original price.

Why Saying No Flat-Out Backfires Too

A lot of contractors flinch when a customer asks for a break on price. The instinct is either to cave ("I guess I can do $200 less") or to get defensive ("My price is my price"). Both responses miss what's actually happening. A discount request is rarely about the number being wrong — it's a customer testing whether there's flexibility anywhere in the deal. If you cave on price with nothing in return, you've taught them your estimates have slack in them, and every future job with that customer starts with a negotiation. If you shut it down hard, you can lose a job you would have won by just restructuring it.

The fix is to never treat "can you do it for less" as a yes/no question about the price. Treat it as an open door to change the scope of what you're delivering for that price.

Four Ways to Say Yes Without Touching Your Rate

Each of these keeps your per-unit pricing — your hourly rate, your markup, your margin — exactly where you built it. What changes is the size or shape of the job, not what you charge for doing it.

1. Reduce the Scope

This is the cleanest option because it's the most obviously fair. You're not discounting the work — you're doing less work for less money.

Script: "I can't move on the price for the full job, but if we skip the shed and just do the house and detached garage, that brings it down to $X. Want me to send a revised estimate for that?"

This works especially well on jobs with optional add-ons baked in — an extra coat, a second structure, trim work that was nice-to-have rather than necessary. If you used a good, better, best estimate structure, this conversation is already half-done: you just point them at the middle or base tier.

2. Change the Materials

If the customer is price-anchored on a number, sometimes the fastest path is a cheaper material or product tier — not cheaper labor.

Script: "The labor's the same either way, so I can't discount that. But if we go with the standard-grade shingles instead of the architectural ones, that saves about $800 on materials. Here's what the difference looks like."

Be specific about what they're trading away (lifespan, warranty, appearance) so it doesn't read as a downgrade you're hiding. This also protects you from the accusation later that you talked them into something inferior — it was their call, documented.

3. Shift the Timing

Some customers aren't actually price-sensitive — they're cash-flow sensitive, or they're hoping you have slack in your schedule you'd trade for a lower rate. You can offer flexibility on when without touching what you charge per hour or per job.

Script: "If you can be flexible on the start date and let me slot you in between two other jobs instead of rushing a crew out this week, I can knock off the expedite fee — that's $150 back." Or, if you don't charge rush fees explicitly: "I usually book this kind of job during slower weeks at a discount for flexible scheduling — if you can wait until after the 15th, I can do $X instead."

This only works if the discount is tied to something real you're getting in return — an open slot you'd otherwise have idle, not a slot you're bumping a different paying customer out of.

4. Offer Payment Terms, Not a Lower Price

Sometimes "can you do a discount" really means "I don't have the cash up front." Payment terms solve that without touching your number.

Script: "I can't come down on the total, but I can split it differently — 30% to start, 40% at the halfway point, and the rest on completion instead of half up front. Does that help?" Or, for a customer asking for a cash discount: "I don't discount for cash, but I can waive the card processing fee if you pay by check or bank transfer — that's about the same savings for you."

This is also a useful moment to clarify your deposit and progress payment structure if you haven't already — see the deposits, progress payments, and final payments breakdown for how to structure those splits so they protect your cash flow too.

When You Should Just Hold Firm

Not every discount request needs a counteroffer. Hold the line, politely and without over-explaining, when:

  • The customer is comparing your price to a clearly lower bid from someone else with a different scope, license status, or material grade — restating the difference is more useful than discounting.
  • You're already pricing close to the bottom of your margin and any further cut means working at a loss.
  • This is a one-off customer with no repeat or referral upside, and the ask feels like reflexive haggling rather than a real budget constraint.
  • You've already reduced scope, materials, or terms once and they're coming back for a second cut on top of it.

In those cases, a short, calm answer works better than a long justification: "I priced this fairly for the work involved, and I don't have room to come down on it as scoped. If budget's tight, I'm happy to look at trimming the job instead." That sentence does two things — it holds the price and reopens the door to options 1 through 4 above.

This Isn't the Same as "Your Price Is Too High"

A discount request and a too-high objection sound similar but call for different responses. "Can you do a discount" usually means the customer accepts your price is fair but wants a better deal anyway — the tactics above apply. "That's way more than I expected" is a sign they don't believe the number reflects the job, which usually means you need to justify the price, not restructure it. If that's the conversation you're actually having, see what to say when a customer thinks your estimate is too high for how to handle it differently.

Keep the Revised Offer in Writing

Whichever option you use, don't let the new terms live in a text thread or a verbal agreement on the phone. Send a revised written estimate that spells out exactly what changed — the trimmed scope, the swapped material, the new payment split — so there's no confusion later about what was agreed. In Trusso, revising an estimate takes a few taps and keeps the original version on file, which matters if a customer later claims they were promised the fuller scope at the discounted price. It won't talk a customer out of asking for a deal, but it makes sure whatever you agree to actually sticks.

Should I ever just give a straight percentage discount?

Occasionally, for a loyal repeat customer or a referral source you want to keep happy — but treat it as a relationship investment, not a standard response. If you do it regularly without changing scope or terms, customers learn your prices are negotiable and will ask every time.

What if the customer says a competitor quoted less for the same job?

Ask what's actually included in that quote before reacting. Many lower bids come from a smaller scope, lower-grade materials, or an unlicensed operator. If the scope truly matches, you can decide whether to match it, hold your price on quality grounds, or offer one of the scope/material/timing trades instead of a flat match.

Is it okay to offer a discount for paying in cash?

It's common, but be careful — framing it as waiving a card processing fee rather than a blanket cash discount keeps your pricing consistent and avoids any appearance of trying to avoid reporting income.

How do I handle a discount request from a customer I've already given a 'good, better, best' estimate to?

Point them back to the lower tier instead of discounting the one they picked. That's the whole purpose of tiered pricing — it gives you a built-in answer to 'can you do less' without touching your numbers.

Does asking for a discount mean I should lower my prices going forward?

Not necessarily. One or two customers asking isn't a market signal. If it's happening on most jobs, that's worth checking against your close rate and local rates — but the fix there is usually repricing the job type, not discounting individual estimates on request.

Run your business the simple way

Try Trusso free for 14 days and send your first estimate in minutes.

Start 14-Day Free Trial