· 8 min read

Negotiation

The 3-Line Reply Script for Every Type of Price Pushback

Six common types of price pushback, with the exact 3-line reply script for each one. Memorize these and you'll never freeze on a sales call again.

The 3-Line Reply Script for Every Type of Price Pushback

Most freelancers know what to say when a client says yes. Almost nobody has scripts ready for when a client pushes back on price.

So they freeze. They stammer. They offer a 15 percent discount because it’s the first thing that comes to mind. The deal might close, but it closes badly, at a lower rate, with a client who now knows pricing is negotiable, and with a sales pattern that repeats on every future deal.

The fix isn’t selling harder. It’s having the right reply queued up for each type of pushback. There are six common types. Here’s the script for each.

The structure (memorize this, not the exact words)

Every reply has three lines:

  1. Acknowledge. Show you heard what they said. Do not argue.
  2. Reframe. Move the conversation off raw price and onto scope, value, or terms.
  3. Offer. Give them a specific trade or a specific next step.

Three lines. No paragraphs. No long justifications. The brevity is the point.

Type 1: “Can you do it for less?”

The most generic pushback. Usually a reflex, not a real objection. The client doesn’t know what they actually want, they just feel like they should ask.

The script:

Totally hear you on the budget. The number reflects the scope as written, if we want to bring the total down, the cleanest way is to trim one of the deliverables rather than discount the rate. Want me to walk through which pieces are flexible?

What this does:

  • Acknowledges without saying “you’re right, it’s expensive”
  • Reframes from rate to scope
  • Offers a concrete next step (review what’s flexible)

The client either says “yes show me what we can cut” (good, you’ve moved into scope conversation) or “no, the scope is what we need, let’s see if we can find budget” (also good, they’ve conceded the price is fair for the scope).

Type 2: “That’s outside our budget”

This one is usually true. The client has a number in mind and yours is bigger. It’s not a reflex, it’s a real constraint.

The script:

Got it. Tell me the budget you’re working with and I’ll let you know honestly whether I can deliver what you need at that number, or whether we should look at a smaller version.

What this does:

  • Doesn’t argue with the budget
  • Doesn’t immediately discount
  • Puts the burden on the client to name a real number
  • Reserves your right to say no

Often the client says a number that’s surprisingly close (within 10 to 15 percent) and you can negotiate scope to bridge the gap. Sometimes they say a number that’s wildly off and the conversation ends, which is also valuable, you didn’t waste another call trying to close the wrong client.

The move: if they don’t name a budget, don’t proceed. “Tell me the budget you’re working with” is not optional. Without that number you’re negotiating against a phantom.

Type 3: “Your competitor quoted less”

This one stings, but it’s almost always a negotiating move. The “competitor” may or may not exist, and if they do, the scope is almost never identical.

The script:

That’s possible, pricing across freelancers can vary a lot depending on what’s included. I’m not going to match a number without knowing what’s in the comparison. Want to walk through their scope versus mine so we can compare apples to apples?

What this does:

  • Acknowledges without conceding you’re overpriced
  • Reframes from raw price to scope comparison
  • Offers a specific exercise that the client usually won’t actually do

Eight times out of ten, the client backs off the competitor comparison because they don’t want to do the side-by-side. The other two times, you actually do the comparison and either find that the competitor is offering less (your price was fair) or you find that you’re competing for a client who’s optimizing on price (probably not a good fit anyway).

What you don’t do: drop your price to match. You don’t know what the competitor is delivering. You’re not running their business.

Type 4: “Can we start small and see how it goes?”

This is a subtle one because it sounds reasonable. The client is asking for a pilot. The risk is that “small” means “free or discounted” and “see how it goes” means “I’m going to expand the scope without a price increase.”

The script:

Happy to start with a smaller scope to make sure we’re a fit. Let me put together a Phase 1 at [proportionally smaller price] that covers [specific deliverable], with a clear scope and timeline. If it goes well, Phase 2 picks up where Phase 1 left off at the original rate. Sound right?

What this does:

  • Agrees to start small
  • Names a specific smaller scope and price (so “small” doesn’t get redefined later)
  • Locks in the rate for Phase 2 explicitly
  • Frames it as a fit test, not a discount

This works because most pilot requests are genuinely about risk reduction, not price reduction. The client wants to see your work before committing to the full engagement. A real Phase 1 with a real price gives them that.

The version that does not work: “Sure, let’s do a discounted trial.” Trials at discounts almost always lead to the discount sticking forever.

Type 5: “We just need a quick estimate first”

This is the “can you do it for free” version dressed up professionally. The client wants you to do scoping work, share your approach, and give them a number, all without committing to anything.

The script:

Happy to share a ballpark range based on what you’ve described. For a real proposal with a fixed price, I’d need a 30-minute scoping call to understand the specifics. Want to grab that on my calendar, or should I send the ballpark range first?

What this does:

  • Offers a low-cost concession (ballpark range)
  • Reframes to a real scoping process
  • Offers two specific next steps

The ballpark range is usually a wide window, “projects like this typically run $8k to $18k depending on scope”, that’s wide enough to be honest and narrow enough to filter. If the client’s budget is below the low end, the conversation ends now (good). If it’s in the range, they book the call (also good). You don’t do scoping work for free.

Type 6: Silence after you state the price

Not technically pushback, but it functions the same way. The client says “okay let me think about it” and disappears. Or they go quiet on the call after you say the number.

The script:

No rush at all. Before you go, can I ask, is the question on your end about budget, scope, timing, or fit? Helps me know whether there’s something we can address together or whether it’s just a thinking-time thing.

What this does:

  • Removes pressure (the “no rush” line is important)
  • Names the four real possible objections
  • Invites them to surface the actual concern

Most clients, when handed those four buckets, will pick one and tell you. Then you have a real conversation. The pattern that fails is letting them disappear into “I’ll think about it” silence, which usually means no.

What ties all six together

The scripts share three properties:

  • They never argue with the client
  • They never immediately discount
  • They always end with a question or specific offer

The first two protect your price. The third keeps the conversation going. Most freelance deals get lost not at the price objection but in the awkward pause after the price objection, where the client doesn’t know what to say and the freelancer doesn’t know what to ask.

If you take one habit from this whole post, take this: after price pushback, always end your reply with a question. Doesn’t matter which question. Just don’t let the conversation hang on a defensive statement.

How to practice

The reason these scripts feel hard in real conversations isn’t that they’re complex. It’s that you’re under pressure and reaching for them for the first time.

Two practice methods:

Read them out loud. Each script. Once or twice. Get used to the rhythm in your own voice. The first time you say “I’m not going to match a number without knowing what’s in the comparison” in a real call shouldn’t be the first time those words leave your mouth.

Role-play with a friend. Have someone throw pushback at you in random order. Six categories, no warning. Practice picking the right script in under 5 seconds. Within an hour you’ll have most of them automatic.

The freelancers who close at full price aren’t smarter or more confident. They’ve just rehearsed the moments their competitors haven’t.

What never to say

A quick list of common replies that hurt you:

  • “Let me see what I can do” (signals discount is coming)
  • “What’s your budget?” (without first offering a ballpark)
  • “I have to charge this because [reasons]” (no, you don’t have to explain your costs)
  • “I’m one of the cheaper options actually” (defensive)
  • “Other clients pay more than this” (irrelevant to this client)
  • “I can throw in [extra freebie]” (devalues the freebie and your time)
  • Any sentence longer than two lines

If you find one of these in your usual replies, swap it for a 3-line script.

The compounding effect

Get a quarter of your future deals to close at full price instead of discounted, and the math changes your whole business. At a $6,000 average project with a 15 percent average discount, a freelancer doing 60 projects a year leaves $54,000 on the table annually. The 3-line scripts are designed to recapture most of that.

It’s not magic. It’s just having the words ready before the call instead of finding them under pressure during it.

Save this post. Pull it up before your next discovery call. Rehearse the six scripts once. Then go close the deal at your real price.

Ready to send stronger proposals?

Build, send, and track proposals in one place so follow-up is easier.

Start your free trial →