Skip to main content

Free Sales Tax / VAT / GST Calculator

Add tax to a pre-tax amount, or extract the tax from a tax-inclusive total. Presets for US, UK, EU, Canada, Australia, and more.

Works offline once loaded

Common tax rates

Pre-tax

$100.00

Tax (8.875%)

$8.88

Total

$108.88

💡 Rates shown are typical standard rates. Many regions have reduced rates for groceries, books, etc. Verify your local rate with official sources — this tool does the math, not the lookup.

Common uses

  • Calculate Tax for Business InvoicesAdd the correct sales tax / VAT / GST to invoices going out to customers.
  • Calculate Real Cost When ShoppingIn jurisdictions with sales tax added at checkout, calculate the real cost of items.
  • Expense Report Tax BreakdownWhen submitting expenses, sometimes you need to break out the tax portion. Use the extract mode.
  • Compare Tax Burdens Across RegionsSee how the same purchase would cost in different countries by switching tax rate presets.
  • Set Tax-Inclusive Retail PricesFor markets where shelf prices include tax (UK, EU, Australia), figure out the pre-tax cost that produces a clean retail price.

How It Works

This calculator runs three distinct arithmetic modes entirely in the browser — no server, no third-party library. For the "target price" mode it goes beyond simple multiplication: it runs a penny-search algorithm to find the exact pre-tax cent value that, after tax, reproduces the shelf price you entered.

  1. 1
    Pick a mode and rate
    Choose one of three modes — add tax to a pre-tax amount, extract tax from a tax-inclusive total, or work back from a target shelf price. Ten regional presets (US, UK, EU VAT, Canadian GST/HST, Australia, India, Japan, Singapore, New Zealand) fill the rate field instantly, or type any custom rate.
  2. 2
    Formula branches by mode
    Add mode multiplies the amount by rate/100. Extract mode divides the inclusive total by (1 + rate/100) to recover the pre-tax base. Target mode tries three candidate cent values (round, floor, ceil of the raw division) and checks which one, when taxed, rounds back to the exact target — flagging the result as inexact if none of the three candidates match.
  3. 3
    Intl formats the result
    Output is formatted using the browser's built-in Intl / toLocaleString API with style: 'currency', which automatically applies the correct number of decimal places per currency (for example, zero decimals for JPY) and uses the page locale for digit grouping.
  4. 4
    Settings persist and share
    Your chosen mode, rate, and currency are saved to localStorage so they survive a page refresh. The URL is also updated live via history.replaceState, so you can copy it to share an exact pre-configured calculation.

Related Tools

Frequently Asked Questions