Discount margin calculator
A 10% discount does not cost 10% of your margin. Enter your price, your cost and the discount: the margin you give up, the extra volume you need to make up for it, and what a price increase would do instead.
Free, no sign-up, nothing leaves your browser
Your numbers
An editable example, results follow as you type.
Price and margin
Per unit sold, before tax.
Your usual price, before the discount you are weighing.
What one unit sold costs you: purchase, production, delivery, licences…
Gross margin 40% · markup 66.7% · cost $60
The discount
As a share of the price or as an amount.
Shortcuts
Your sales
To size the loss and the volume to find.
Units, seats or contracts sold today in a month.
To find the largest discount that this extra volume pays for.
All amounts exclude sales tax and VAT.
Results updated: 33.3% more sales needed.
To keep the same margin
Extra sales needed
+33.3%
134 sales a month instead of 100, 34 more.
Margin lost at equal volume
−$1,000
Monthly gross margin: $4,000 before, $3,000 after.
What your numbers say
- A 10% discount on the price costs you 25% of your unit margin: it drops from $40 to $30.
- To end the month with the same gross margin, you need 34 more sales (33.3%), 134 in total.
- At break-even volume, monthly revenue would be $12,000 against $10,000 today: the discount grows revenue without earning a penny more.
- If the discount brings you 15% more sales, the largest discount that still pays is 5.2%.
- Your discount (10%) is above that 5.2% threshold: with the extra sales you expect, you lose margin.
Before and after
| Before and after | Before | With the discount |
|---|---|---|
| Selling price | $100 | $90 |
| Unit margin | $40 | $30 |
| Gross margin | 40% | 33.3% |
| Markup | 66.7% | 50% |
| Revenue / month | $10,000 | $9,000 |
| Gross profit / month | $4,000 | $3,000 |
At equal volume. Gross margin = margin ÷ price; markup = margin ÷ cost. All amounts exclude sales tax and VAT.
The math, step by step
Extra volume needed = discount ÷ (gross margin − discount).
On each sale, margin goes from m to m − d (as a share of the original price). To keep the same total margin, volume must be multiplied by m ÷ (m − d).
- Gross margin m
- $40 ÷ $100 = 40%
- Discount d
- 10%
- Extra sales
- 10% ÷ (40% − 10%) = 33.3%
- Break-even volume
- 100 × 40 ÷ 30 = 133.3
Extra sales needed, by discount and margin
Each cell: the volume increase that keeps total gross profit flat. Your case is outlined.
| Gross margin ↓ Discount → | 5% | 10% | 15% | 20% | 25% | 30% |
|---|---|---|---|---|---|---|
| 10% | +100% | impossible | impossible | impossible | impossible | impossible |
| 20% | +33% | +100% | +300% | impossible | impossible | impossible |
| 30% | +20% | +50% | +100% | +200% | +500% | impossible |
| 40% | +14% | +33% (you) | +60% | +100% | +167% | +300% |
| 50% | +11% | +25% | +43% | +67% | +100% | +150% |
| 60% | +9.1% | +20% | +33% | +50% | +71% | +100% |
| 70% | +7.7% | +17% | +27% | +40% | +56% | +75% |
| 80% | +6.7% | +14% | +23% | +33% | +45% | +60% |
up to 25%25 to 100%over 100%impossible
Share this calculation
The link is only built when you click and holds your inputs, nothing else: the page address stays clean while you type. The summary is ready for an email or a message to your team.
Summary preview
10% discount (price $100 → $90, gross margin 40%) • Margin lost at equal volume: $1,000 a month • To keep the same margin: 134 sales a month instead of 100 (33.3%) Details and inputs: …
34 more sales a month means more conversations. Skipcall dials up to four numbers in parallel and chains calls with no dead time: more prospects reached, without touching your price.
Create an accountYour prices and margins never leave your browser. The tool sends nothing and stores nothing. How to check
Why a small discount is expensive in margin
A discount is quoted on the price, but it is paid out of the margin. Take a product sold at $100 that costs $60: unit margin is $40, a 40% gross margin. A 10% discount brings the price to $90 and the margin to $30. The customer sees 10%; your margin has lost 25%, because the whole $10 comes out of the $40.
To get back to the same total gross profit, you have to sell more. Before the discount, 100 sales earned $4,000; at $30 a sale, you need 134 (133.3 exactly) to earn that $4,000 again. The general formula: extra volume needed = d ÷ (m − d), where d is the discount and m the gross margin, both as a share of the price. Here, 10% ÷ (40% − 10%) = 33.3%.
The result often surprises, which is what the tool’s table is for: the thinner the margin, the more expensive the same discount. At a 20% margin, a 10% discount means doubling sales; at 70%, 17% more sales are enough. And once the discount reaches the gross margin, no volume makes up for it: each sale earns nothing, or loses money.
Margin vs markup: the mix-up that skews the math
Both rates start from the same dollar margin, but divide it by different things. Gross margin divides it by the selling price: $40 ÷ $100 = 40%. Markup divides it by the cost: $40 ÷ $60 = 66.7%. Gross margin is the sales and finance view, and the one a discount works against, since a discount is a share of the price; markup is the buyer’s and the pricing-from-cost view.
To convert: gross margin = markup ÷ (1 + markup), and markup = gross margin ÷ (1 − gross margin). A 100% markup is a 50% gross margin, not 100%. Plugging markup into the discount formula gives a wrong and comforting answer: with 66.7% instead of 40%, you would find 17.6% more sales instead of 33.3%.
That is why the tool accepts all three inputs (cost, gross margin, markup) and always shows both rates side by side, with the cost they imply. If you are not sure which one you have, start from the cost: it is the only input that cannot be misread.
The reverse case: how much volume a price increase lets you lose
The same logic runs the other way, and it gets less attention. A price increase of i lifts unit margin by i (as a share of the original price), so you can lose part of your sales without losing gross profit. The share you can lose is i ÷ (m + i). At a 40% gross margin, a 5% increase still pays as long as you lose less than 11.1% of sales.
The asymmetry is striking: at 40% margin, a 10% discount needs 33.3% more sales, while a 10% increase can absorb 20% fewer. Before discounting to win volume, it is often worth asking what an increase would cost you, and with whom. The tool’s “A price increase” switch runs that math on your numbers.
Discounts on subscriptions: first month, three months, annual billing
For software or any subscription, discounts are usually limited in time: first month free, 50% off for three months, two months free on annual billing. They only weigh on part of the customer’s life. Over a lifetime of L months, a discount d for n months equals a permanent discount of d × n ÷ L: 50% for 3 months over a 24-month lifetime is 6.25%.
Two months free on an annual plan is 2 ÷ 12 = 16.7% off the year. Upfront annual payment brings cash and a longer commitment in return, which this calculator does not value: it compares margins, not cash flow or retention. Tick the subscription option to see the equivalent discount and the margin lost per customer.
One caution: if the discount takes the price below your cost during the discounted months, each new customer is served at a loss at first, and the discount only pays back if they stay. The less certain the lifetime, the riskier a short, deep discount.
Before you discount: what to ask for in return
A discount is not always a mistake; a discount with nothing in return often is. Here is what to ask for in exchange, or offer instead.
-
A longer commitment
A discount for a 12 or 24-month contract instead of month to month: the margin lost each month is offset by the length.
-
Upfront payment
Two months free for annual billing paid upfront: you collect the cash now, and the customer commits for the year.
-
A firm volume
Tiered pricing on quantities actually ordered, rather than a discount on a promise of volume.
-
A smaller scope
Lower the price by removing an option, a service or a support tier: the margin stays intact on what is sold.
-
Something that is not money
A testimonial, a case study, a referral, a signature before a date: things of value to you that cost no margin.
-
A low-cost extra
Onboarding help, training, payment terms: the perceived value is often higher than what they cost you.
Classic discounting mistakes
-
Looking at revenue
A discount that lifts sales lifts revenue, and can still lower gross profit. The right yardstick is total gross profit, not revenue.
-
Mixing up margin and markup
Markup is always higher than gross margin. Using it in the formula makes the discount look about half as expensive as it is.
-
Adding discounts up
Two successive 10% discounts are not 20% but 19% (0.9 × 0.9 = 0.81). The reverse trap too: 10% off then 10% up does not bring you back to the original price (99%).
-
A discount with no end date
A “one-off” discount that gets renewed becomes the new price. Set a length, and write it into the proposal.
-
Giving in before the objection
Offering a discount before the prospect mentions price means paying for an objection that may never have come. Qualify first, put a number on the value next.
Keep going
Tools and articles that take this calculation further.
- Cost per Meeting Calculator What a held meeting costs in salaries, tools and data: what each discounted sale has to pay back.
- LTV/CAC Calculator A discount lowers what a customer is worth: check what is left of the ratio between their value and what they cost to acquire.
- How many calls does your target take? You know how many more sales you need: turn them into calls and hours, dial mode by dial mode.
- The Challenger Sale Handling price as a value conversation, without folding to the first discount request.
- Cold call objections in B2B SaaS Twelve objections, price and budget included, and how to answer without cutting the price.
- All free tools Calculators, phone number validator, VoIP test and more.
How to check that your prices never leave your browser
The math runs in code inside your browser: your prices, costs and volumes are sent neither to Skipcall nor to anyone. The tool stores nothing, not even in the browser’s local storage. The page address stays clean while you type: the share link, which holds your inputs, is only built when you click “copy”.
The simplest test: once the page has loaded, switch off your connection and change a value. Results keep updating, since they need no server.
In your browser’s Network tab, you will see the site’s analytics tools, as on all our pages. None of them receives what you type: the tool area is excluded from session recording, and only clicks on “copy” and the switch between discount and increase are counted, without their content.
A calendar full of meetings starts with a call.
No commitment · Number live in 2 minutes