Skip to main content

Free Discount & Sale Price Calculator

Calculate final sale price, percent off, or savings amount. Useful for shoppers and retailers planning promotions.

Works offline once loaded

You pay

$75.00

You save

$25.00

Discount

25.0%

Common uses

  • Calculate Sale Prices While ShoppingSee exactly what a "30% off" sale will cost you, plus how much you're saving.
  • Plan Retail PromotionsRetailers planning a markdown can preview the final price and margin impact.
  • Is This Sale Actually a Good Deal?Use "Calculate % off" mode to verify if a "sale" is genuinely discounted.
  • Bulk Purchase Discount MathFor bulk discount tiers (e.g., 10% off 5+, 15% off 10+), calculate the savings at each tier.
  • Verify Coupon CodesWhen you apply a coupon at checkout, calculate the expected discount to verify the code worked correctly.

How It Works

All calculation happens directly in the browser using plain JavaScript arithmetic β€” no library, no server request. Locale-aware currency formatting is handled by the browser's built-in Intl.NumberFormat API, which correctly places symbols, separators, and decimal places for any locale and currency you select.

  1. 1
    Choose a calculation mode
    Three modes cover the common retail scenarios: apply a known percentage off to a price, work backwards from original and sale price to find the discount percentage, or find how much you saved. Switching modes changes which inputs are shown.
  2. 2
    Arithmetic runs on every keystroke
    For 'apply discount' and 'savings' modes, the final price is computed as original Γ— (1 βˆ’ d₁/100) Γ— (1 βˆ’ dβ‚‚/100), which correctly models two stacked discounts as multiplicative β€” not additive. For 'calculate' mode, the percentage is (original βˆ’ final) / original Γ— 100. An optional sales-tax field multiplies the post-discount price by (1 + tax/100).
  3. 3
    Intl.NumberFormat formats the result
    The browser's built-in Intl.NumberFormat API renders every currency amount β€” placing the symbol correctly for USD, EUR, JPY, INR, and the other supported currencies, and applying zero decimal places for JPY automatically based on locale data the browser already has.
  4. 4
    Deal comparison finds the better unit price
    The optional deal-comparison panel computes a per-unit cost for each deal as (price Γ— (1 βˆ’ discount/100)) / quantity, then highlights whichever is lower and shows the per-unit difference.

Related Tools

Frequently Asked Questions