
Discounts are easy. Profitable discounts are not.
Most teams treat discounting as a single lever (“reduce price”). That's the fastest way to train buyers to ask for more, while quietly destroying margin and delivery confidence.
This guide gives you a repeatable discounting playbook built around one idea:
Never concede price without getting something back.
The two rules that change everything
Rule 1: discounting is a trade, not a gift
If the buyer wants a lower number, you trade for:
- reduced scope (or lower priority scope)
- more time (less urgency, fewer rush costs)
- better terms (faster payment, upfront portion, longer commitment)
- lower risk exposure (clearer dependencies, access to stakeholders, data readiness)
Rule 2: protect margin with visible guardrails
If you can't see margin while negotiating, you'll “win the deal” and lose money in delivery.
Set a minimum margin policy (per role and per deal) and treat it like a safety rail, not a suggestion.

Related docs:
Step 1: classify the discount request
When a buyer asks for a discount, figure out what kind of ask it is:
- Procurement discount: “we always get 10%”
- Budget constraint: “we have $X”
- Comparative pressure: “competitor is cheaper”
- Perceived risk: “we're not confident this will work”
- Timeline pressure: “we need it faster” (often the hidden cause)
Different causes require different concessions. Treating them all as “price down” is lazy and expensive.
Step 2: pick the right concession type
Here's a practical concession menu you can use in negotiations.
A) Scope concessions (preferred)
Best when buyers are budget-constrained or price-sensitive.
What to trade:
- remove low-priority features
- move items to a later phase
- reduce non-essential deliverables (documentation depth, reporting frequency)
- narrow support scope (hours, channels)
Why it works:
- buyer gets a lower price
- you reduce real delivery work (so margin is protected)
Related doc:

B) Timeline concessions (high leverage)
Best when the deal includes urgency.
What to trade:
- longer delivery window
- flexibility on start date
- reduced meeting cadence / stakeholder time-boxing
Why it works:
- rushed schedules create hidden costs (onboarding, context switching, overtime, risk)
- a more realistic schedule usually improves delivery quality and reduces change noise
Related doc:

C) Terms concessions (underused)
Best when the buyer needs a lower total number, but you need to protect cash flow and risk.
What to trade:
- upfront milestone payment
- shorter payment terms
- longer commitment (for recurring services)
- clearer acceptance criteria
Related doc:
D) Price concessions (last resort)
If you must reduce price, do it deliberately:
- apply the discount to a specific phase
- restrict it to certain roles (or exclude high-cost specialists)
- tie it to a condition (signature by date, fixed scope, accelerated payments)
The goal is not “lower price.” The goal is “lower price without destroying the economics.”
Step 3: package choices, don't argue
One of the most effective tactics is a simple 3-option structure:
- Fast: higher price, shorter timeline, broader scope
- Balanced: best value, realistic schedule, clear scope
- Lean: lower price, reduced scope, or longer timeline
Buyers hate feeling like they're losing. Options make the tradeoffs visible and give them agency.
In a proposal, this can be as simple as:
- a phase breakdown that shows what's included in each option
- a schedule summary per option
- milestone/payment terms per option
Related docs:

Step 4: avoid the classic discount traps
Trap 1: discounting without descoping
If scope stays the same and price drops, margin drops. Then delivery pressure rises, and quality suffers.
Trap 2: “free extras”
“Can you include training?” “Can you include a rollout plan?” “Can you do documentation?”
These aren't free. They're scope. Price them or trade them.
Trap 3: compressed timeline + discounted price
This is the worst combo. It increases cost and risk while reducing revenue.
Trap 4: unclear acceptance criteria
If you can't define what “done” means, you can't protect fixed price, and you can't contain change.
How to run discounting in Estii (so it stays consistent)
Keep margin visible via rate cards and role pricing
- Set margin ranges on rate cards so outliers are obvious.
- Use rounding to keep rates looking deliberate in buyer-facing outputs.
Related docs:
Use scope as the primary concession tool
Scope breakdowns let you reduce price by removing work, not by pretending work got cheaper.
Related docs:
Use milestones to trade terms instead of discounting
If the buyer wants a lower number, often they really want lower risk. Payment structure can do that without destroying margin.
Related docs:
Snapshot negotiation moments with versions
Before applying meaningful concessions, save a version. This makes “what changed and why” easy to explain internally (and to the buyer, if needed).
Related docs:
A simple internal policy you can adopt today
If you want something lightweight that still works:
- Any discount requires one of: scope reduction, timeline extension, or terms improvement
- Any deal below the minimum margin requires explicit approval
- Any “free extra” must be written as scope (and either priced or traded)
Closing thought
Discounts aren't evil. Undisciplined discounts are.
If you treat discounting as a structured trade across scope, schedule, and terms, you'll close deals faster—and deliver them without margin regret.