CatalogTools ›Calculators

Discount calculator — final price and savings

Full price and a discount percentage: below you get the final price and exactly how much you save, no mental math needed while standing in the aisle. Every calculation stays in the history, handy for comparing a few offers before deciding.

▶ Use this app

discountcalculatorpricesavingssale

What it records

  • What you're buying (optional)
  • Full price
  • Discount (%)

How it works

This is a Reactive app: a plain text document that your browser turns into a working app — forms, live data, tables, statistics and even charts, with nothing to install or configure.

  1. Use it right away. Hit “Use this app”: it opens right in your browser, ready to go, with data saved only on your device.
  2. Your data stays yours. Everything is stored locally on your device, kept separate for each app: no account, no server, nothing to set up.
  3. Make it your own. The text below is the entire app: copy it, tweak fields, views and words, and your changes become interactive instantly.
  4. Share it as a file. An app is a simple file: save it, export it or share it with a link; and with encrypted collaboration several people edit the same data in real time.
The app’s source
# 🏷️ Discount calculator

Full price and a discount percentage: below you get the final price and
exactly how much you save, no mental math needed while standing in the
aisle. Every calculation stays in the history, handy for comparing a few
offers before deciding.

::::form{path="discounts" id="fdis"}
::input{form="fdis" field="item" placeholder="What you're buying (optional)"}
::input{form="fdis" field="price" type="number" placeholder="Full price" required="true"}
::input{form="fdis" field="discount" type="number" placeholder="Discount (%)" required="true"}
::add-form{form="fdis" path="discounts" label="Calculate discount"}
::::

## Calculated discounts

:::table{path="discounts" headers="Item,Full price,Discount,Final price,Savings" deletable="true" editform="fdis"}
{item} | {price} | {discount}% | {price-price*discount/100} | {price*discount/100}
:::

**Total savings: :sum[tot]{path="discounts" field="price*discount/100"}**

Useful for a sale, comparing shops, or a big purchase: before you buy, you
know exactly what you'll pay and how much you're putting aside.