Get the working resource ↓
SaaS Pricing Playbook 7 min read

Discount Approval Workflow

Build a discount matrix by deal size and term, route approvals without stalling deals, and report net price realization to the board every single quarter.

On this page 9 sections
  1. The discount matrix
  2. The trade table: what sales must get in return
  3. Building it in the CRM
  4. The four hour SLA
  5. The exception log
  6. The quarterly net price realization report
  7. Rolling out a tighter policy without breaking the quarter
  8. What this does not fix
  9. The first thirty days
  10. Frequently asked questions

The short answer

A discount approval workflow maps discount depth to an approval level by deal size and contract term, enforces it with CRM validation rules that block a quote above threshold, and guarantees a response within four business hours per level. It works only when each discount band requires something in return, such as annual prepayment or a multi-year term, and when an exception log is reviewed monthly and net price realization is reported to the board quarterly.

Key points before you start

Discount leakage is rarely a policy problem. Most companies have a policy. It’s in a Notion page somebody wrote in 2024, it says 15% needs manager approval, and the last four deals that closed at 28% did so because the approver was on a plane and the quarter was ending.

The fix is mechanical: thresholds enforced in the quote object, response times short enough that nobody wants to work around them, and a quarterly number that makes the whole thing visible to the board.

The discount matrix

Two axes, not one. Depth of discount and size of deal, because a 25% discount on a $12,000 deal and a 25% discount on a $400,000 deal are different decisions with different people qualified to make them.

Discount depthDeal under $25K ACV$25K to $100K ACVAbove $100K ACV
0 to 10%Account executiveAccount executiveSales manager
10 to 20%Sales managerSales managerVP Sales or deal desk
20 to 30%VP SalesVP Sales plus financeCRO plus finance
30 to 35%CRO plus financeCRO plus financeCRO plus CFO
Above 35%Not approvedNot approvedNot approved

Note what the table refuses to do. It does not give bigger deals deeper self-serve discount authority. That instinct feels commercially sensible and it is how enterprise pricing erodes, because the deals that most affect your average selling price get the least scrutiny.

The hard ceiling matters more than any individual threshold. Pick a number, 35 or 40%, publish it, and never approve above it. One exception and the ceiling becomes a suggestion within a quarter. If you find yourself needing 45% to win a category of deals repeatedly, the answer is a lower-priced packaging tier, not an exception, and that’s a pricing strategy conversation rather than a deal desk one.

Why three points of realization matters

At $20M ARR, moving net price realization from 76% to 79% is roughly $600K of additional annual revenue at close to 100% margin, with no additional deals won and no additional headcount. That is the entire argument for this workflow.

The trade table: what sales must get in return

A discount given for nothing is a message. It tells the buyer your list price was theoretical, and they will open the renewal by asking for more.

Attach a required concession to each band and put it in the approval form as a mandatory field.

Discount bandWhat sales must obtainWhy it worksCommon failure
0 to 10%Annual billing instead of monthlyImproves cash collection immediatelyGiven away as a closing courtesy with nothing attached
10 to 20%Annual prepayment, or a two year termLocks revenue and reduces churn exposureTerm extension agreed verbally and never written into the order form
20 to 30%Multi-year term with an uplift clause, plus a named reference commitmentProtects future pricing and generates marketing assetsUplift clause omitted, so year two renews at the discounted rate
30 to 35%Three year prepaid, plus case study and logo rightsOnly justified when total contract value is genuinely largeApproved at quarter end without any of the above
Above 35%Nothing. Not approvedThe ceiling is the ceilingAn exception granted once, which ends the ceiling
Every band requires a mandatory field in the approval request naming what was obtained.

The uplift clause is the one teams forget and it costs the most. A three-year deal at 30% off with no annual uplift is not a discount, it’s a permanent price reduction with a longer commitment attached. Write the uplift in, usually 3 to 7% annually, and make it a required field at the 20% band and above.

Editable working copy

Download this template

Save an editable working copy of the framework on this page. Add your own owners, evidence and decisions.

We never sell your data. Your resource opens here after submission.

Building it in the CRM

A policy document changes nothing. The enforcement point has to be the object the rep touches, which is the quote.

Implementation sequence

  1. Add the fields

    On the quote or opportunity: list price total, discount percentage calculated rather than typed, discount reason picklist, concession obtained, approval level required, approval status, approver name and timestamp.

  2. Make discount percentage a formula

    Never a free text field. Calculate it from list total and quoted total so a rep cannot type 12 when the quote is at 24.

  3. Write the validation rule

    Block the quote from moving to sent status when discount percentage exceeds the owner's threshold without an approved record. In Salesforce this is a validation rule plus an approval process. In HubSpot it is quote approvals with required properties.

  4. Configure routing with escalation

    Route to the named approver for the level, with automatic escalation to their manager after four business hours. Notify in Slack, not only in email, because email approval requests die.

  5. Add the audit trail

    Every approval writes who approved, when, at what depth, and what concession was recorded. This is the raw material for the quarterly report and it is impossible to reconstruct later.

  6. Test with ten real historical deals

    Run last quarter's ten deepest discounts through the new workflow on paper. If any of them would have sailed through, your thresholds are wrong.

  7. Publish the matrix where reps work

    Pinned in the sales Slack channel and linked from the quote screen. A policy nobody can find at 6pm on the last day of the quarter is not a policy.

Tooling depends on complexity. Salesforce approval processes plus validation rules handle most companies under $50M ARR without CPQ. HubSpot quote approvals work well for simpler catalogues. Once you have usage-based pricing, multi-product bundles or complex ramp schedules, DealHub, Subskribe or Salesforce CPQ start to earn their cost, which typically runs $20K to $80K a year plus implementation.

Do not buy CPQ to fix a discipline problem. It will encode your current mess faster.

The four hour SLA

This is the part that determines whether any of the above works.

Reps are not trying to break your process. They’re trying to close a deal in front of a buyer who asked a question. If the answer takes two days, the rep learns to structure the quote to stay under the threshold, which produces exactly the erosion you built the system to stop, plus a quote structure nobody can analyse later.

Four business hours per level. Automatic escalation past a non-responsive approver. A weekly report showing median approval time by approver, published to the sales leadership team, because nothing improves an approver’s response time like their peers seeing it.

Quarter end needs a different rule

In the last five business days of a quarter, cut the SLA to one hour and put a named approver on rotation with a backup. That’s when the most requests and the deepest discounts arrive. A process that degrades exactly when it is most needed is worse than no process.

The deal desk function exists largely to guarantee this response time. Below roughly $30M ARR you can run it as a named half-time responsibility inside revenue operations rather than a dedicated team.

The exception log

Every approval above the standard matrix gets a log entry: deal, rep, depth, reason, approver, and what was obtained in return. Review it monthly for thirty minutes with sales leadership and finance.

What you’re looking for are patterns rather than individual deals.

  • One rep appearing repeatedly is a coaching problem, usually weak discovery or late-stage negotiation without a champion.
  • One competitor named repeatedly in the reason field is a positioning problem, and the answer is a battlecard and a comparison page, not deeper discounts.
  • One segment appearing repeatedly is a packaging problem. If mid-market consistently needs 28% off, your mid-market price is wrong and should be restructured rather than negotiated every time.
  • Discounts clustering in the final week of the quarter is a forecasting problem masquerading as a pricing problem.

That last pattern is nearly universal and worth quantifying. Plot discount depth by day of quarter. If the last week’s average is eight or more points deeper than the rest, your reps are trading margin for timing, and the fix sits in pipeline coverage rather than in the approval matrix.

Consultation request

Talk to a SaaS marketing strategist

Tell us about your marketing bottleneck and request a working session. We will confirm availability before scheduling.

We never sell your data. Your request is saved for review.

The quarterly net price realization report

One page to the board, four cuts of the same number.

Net price realization is closed revenue per unit divided by list price per unit. Report it four ways:

CutWhat it revealsAction if it looks wrong
By segmentWhich part of the market your list price does not fitRepackage or reprice that segment
By repWho negotiates and who capitulatesCoaching, or a lower threshold for that rep
By deal stage at which discount was introducedWhether discounts are opening moves or closing toolsDiscovery training if discounts appear before stage three
By quarter over eight quartersWhether the policy is holding or driftingRe-enforce thresholds and check the exception log

Show the distribution, not just the average. A 78% average realization can mean every deal closed at 78%, which is a pricing problem, or that most deals closed at 92% and six closed at 45%, which is an approval problem. Those need opposite responses and the average cannot distinguish them.

Put the hard ceiling breaches on the slide too, even when the count is zero. Especially when it is zero, because that is the evidence the system works.

$600K

Annual revenue from three points of realization gain at $20M ARR

saas-marketing.net model, method shown on the page

Rolling out a tighter policy without breaking the quarter

Tightening discount policy mid-quarter on live deals is how you lose deals and rep trust simultaneously.

The ramp that works: announce the new matrix a month before it takes effect, with a side-by-side comparison of old and new thresholds. Apply it only to opportunities created on or after the start date. Grandfather everything already in pipeline for one full quarter at the old thresholds.

Then track compliance separately for the two populations for one quarter so you can see whether the new matrix is actually changing outcomes or whether reps are simply pushing deals into the old cohort. The enterprise SaaS deal teardown walks through what this looks like on a single large contract, including where the concessions that were never written down came back at renewal.

One more thing to prepare for: compensation. If your comp plan pays on bookings with no margin component, reps are rationally indifferent to discount depth. Adding a realization component, even a small accelerator for deals closed above 90% of list, aligns the incentive with the policy. Without it you are asking people to work against their own pay.

What this does not fix

Be clear about the limits.

A discount approval workflow does not fix a price that is genuinely wrong for the market. If every deal in a segment needs 30% off to close, the list price is fiction and the matrix is just making people fill in forms about it. That is a repricing project, covered in SaaS discounting strategy and, for larger contracts, in enterprise SaaS pricing.

It does not fix weak sales execution either. Discounts are usually requested because value was not established, and no approval routing repairs a discovery call that did not find the buyer’s real cost of doing nothing. That is a sales problem and it needs coaching rather than governance.

And it adds friction. Real friction, felt by reps, on the last day of the quarter. The trade is worth making only if you actually hold the response times, because a slow process with a hard ceiling produces the worst outcome available: deals delayed and discounts granted anyway.

The first thirty days

Pull your last two quarters of closed-won deals and calculate net price realization by segment and by rep. Most teams have never seen this number and it usually lands worse than expected.

Then set thresholds against what that data shows rather than against a template, build the validation rule before you publish the policy, and commit the approver group to four hours in writing. If you want the sales side of the handoff documented alongside it, the sales and marketing SLA template covers the same pattern of named owners and response windows.

Review in ninety days. If median approval time is above eight hours, fix that before touching anything else in the matrix.

Editable CSV worksheet

SaaS Pricing planning worksheet

A practical pricing planning worksheet: decisions, owners, evidence and next actions.

We never sell your data. Your resource opens here after submission.

Frequently asked questions

What should a SaaS discount approval matrix look like?

Two axes: discount depth and deal size. Up to 10% sits with the account executive, 10 to 20% with the sales manager, 20 to 30% with the VP of Sales or deal desk, and above 30% with the CRO and finance together. Add a hard ceiling nobody can approve. Larger deals should not automatically unlock deeper discounts, since that is how enterprise pricing erodes.

How fast should discount approvals be?

Four business hours per level, with automatic escalation if the approver does not respond. A request crossing three levels should resolve within one business day. Slower than that and reps route around the system by structuring deals to stay under thresholds, which is worse than the discount you were trying to prevent.

What is net price realization?

The actual revenue per unit divided by list price per unit across closed deals in a period. If list is $100 per seat per month and your closed deals average $76, realization is 76%. Track it by segment, rep and deal size rather than as a single average, because the average hides a small number of very deep discounts that do most of the damage.

Who should own the discount approval process?

Revenue operations or a deal desk builds and enforces it, finance sets the thresholds and the floor, and sales leadership owns the exceptions. If sales owns the whole thing, thresholds drift every quarter end. If finance owns the whole thing, deals stall and reps stop using the system.

What should sales get in return for a discount?

Something that improves the contract's economics or your position. Annual or multi-year prepayment, a longer term, a reduced set of contractual concessions, a named reference commitment, or a case study. A discount given for nothing teaches the buyer that your price is soft, and they will test it again at renewal.

How do you enforce a discount policy in Salesforce or HubSpot?

Use native approval processes in Salesforce or quote approvals in HubSpot with validation rules that prevent a quote being sent above the rep's threshold. CPQ tools such as DealHub, Subskribe or Salesforce CPQ add approval routing and audit trails. The enforcement point must be the quote object, not a policy document, or it will be ignored.

How do you roll out a stricter discount policy without losing deals?

Grandfather everything already in pipeline for one full quarter, apply the new matrix to opportunities created after the start date, and publish a comparison of old and new thresholds a month before it starts. Announcing a tightening mid-quarter on live deals is how you lose both the deals and the reps' cooperation.

The saas-marketing.net editorial team Research and editorial

We research, write and maintain every page on this site. The library explains marketing decisions through practical frameworks, explicit assumptions and references. Corrections can be requested through the contact page.

Published September 11, 2026. Last updated .