A Webstarted Toolbox widget · macOS & Windows

A calculator you type into, not one you click.

Write 1200+21% and the answer is already there before you finish. Fix a digit in the middle, hit Enter to keep it, walk your last calculations with . Lives in your menu bar, works with the Wi-Fi off, and the % behaves like a pocket calculator — because that is what you meant.

Already have Toolbox? Open this widget

Free · No account · 100% offline · Installs from the Toolbox catalog
Live resultAs you type, no equals needed
Pocket-calculator %200+10% is 220
No evalIts own parser, nothing executed
Fully offlineNothing you type leaves the machine
How it works

Type the calculation. Read the answer. Move on.

Open the popover from your menu bar (macOS) or system tray (Windows) and start typing. The result updates on every keystroke, so there is no equals button in the way and no moment where you have lost track of what you entered. Press Enter and the calculation is saved to the history, with its value parked in ans so the next line can build on it.

The panel underneath is two tabs sharing one fixed-height slot — Keypad and History. Fixed height on purpose: stacked, every calculation you saved would push the keypad down and the widget would grow without a ceiling. The keypad types at the cursor, not at the end, so it is still useful for fixing something mid-expression. In the history, click a row to reuse it, or use the per-row buttons to copy just its formula, just its result, or both — and × to delete that one line without clearing everything.

  • Parentheses, ^ powers, /sqrt, ln, log, trig
  • Constants pi and e, plus ans for the last result
  • Implicit multiplication: 2(3+4) is 14
  • through history, Enter to copy
  • Its own window at 320×460 if you want it to stay open
The % key

Adding VAT is the most common sum there is. It should just work.

Type 200+10% into most programming languages and a strict reading gives you 200.1: 10% is 0.1, and 200 plus 0.1 is 200.1. Correct, and completely beside the point. Nobody has ever typed that hoping for 200.1. What they want is 220 — the price plus ten percent of the price — which is what a physical calculator has done since the 1970s.

So with + and the percentage is relative to the term in front of it. Everywhere else, % keeps its literal meaning: 50%*80 is 40, 0.5% is 0.005. This is half the reason the widget exists, so it is worth being blunt about: if you need the strict reading, write 200+0.1.

  • 1200+21%1452 — a price with VAT added
  • 1452-21%1147.08 — take a discount off
  • 50%*8040 — % as a plain fraction
  • To extract tax from a gross amount, use Rates & Tax
You typeHereStrict
200+10%220200.1
1200+21%14521200.21
1452-21%1147.081451.79
50%*804040
2(3+4)14error
1,5+12.5error
Decimal separator

Comma or dot — you pick, and it holds everywhere.

Half the world writes 1,5 and the other half writes 1.5, and a calculator that guesses wrong is worse than useless. There is a setting with three options — follow the app language, always dot, always comma — and it applies to all three places it matters: what you type, what you see, and what lands on your clipboard. Even the decimal key on the keypad relabels itself.

It only ever decides the genuinely ambiguous case: one separator with exactly three digits after it. 1,500 is one thousand five hundred if you prefer dots, and one and a half if you prefer commas. Everything unambiguous stays unambiguous — 1,5 and 1.5 are one and a half under either setting — so flipping the preference never silently reinterprets something you already typed.

Display and copy are deliberately different. The screen groups digits so a long number is readable; the copy buttons hand you a plain machine-readable number that pastes into a spreadsheet without being mangled. Fixed decimal places (automatic, or 0 to 8) apply to the copy as well: what you see is what you paste.

  • Applies to input, display and clipboard alike
  • 1.234,56 and 1,234.56 both parse
  • Screen shows 1.234,5 — copy gives 1234.5
  • Fixed decimals: automatic, or pin it from 0 to 8
Coming from Soulver or Numi?

The typing calculator, without the price tag — and without the scope.

Soulver and Numi popularised this idea and they are good apps. They are also paid, and they aim much higher: a multi-line document where lines reference each other, named variables, unit conversion, live currency rates, natural-language phrases like “20% off 40 dollars”. If that is your daily driver, they earn their price.

This is not trying to be that. It is one line, one answer, in your menu bar, free, and offline — the calculation you needed mid-sentence, without opening an app or a browser tab. It is honest about the gap: no units, no currency conversion, no multi-line document, no named variables beyond ans. What it does have is the part you use fifty times a day, one keystroke away, at no cost. For currency there is a separate widget that does it properly, with real parallel rates.

  • Free, no account, no trial — and no upgrade prompt
  • Lives in the menu bar next to your other widgets
  • Fully offline: your numbers never leave the machine
  • Where it stops: units, currencies, multi-line sheets, variables
CalculatorSoulver / Numi
PriceFreePaid
Type the expression
Live result
Relative %
In the menu barApp window
Units & currencies
Multi-line sheet
Named variablesOnly ans
Part of Webstarted Toolbox

Installed from the catalog, in one click.

Calculator isn’t bundled into the app — it’s a widget in the Webstarted Toolbox catalog. Download Toolbox, open the catalog tab (🧰), press the “+” next to Calculator, and it lands in your Math tab. No reinstall, no app update. Here are a few of its neighbors:

FAQ

Questions, answered.

What makes this different from the calculator my OS already has?

You type the whole calculation instead of pressing it button by button, and you see the result while you are still typing. That means you can read back what you wrote, fix a digit in the middle of it, and keep going — which is the part a button calculator cannot do, because the expression only ever exists as the sequence of keys you already pressed. Press Enter and the calculation joins a history you can scroll with the up and down arrows and reuse later.

Why is 200+10% equal to 220 and not 200.1?

Because that is what people mean when they type it, and it is what every pocket calculator does. With + and − the percentage is read as relative to what came before it: 200+10% is 200 plus ten percent of 200. Written strictly, 10% is 0.1, so 200+0.1 = 200.1 — technically defensible and useless in practice, since adding VAT or a markup is the single most common thing anyone does with a percent sign. Everywhere else % keeps its plain meaning, so 50% * 80 is 40.

Does it use eval() on what I type?

No. It has its own parser, which is both a safety and a correctness decision: eval would run arbitrary JavaScript, and it would also get the maths wrong in the ways that matter here — no relative percent, no implicit multiplication, and comma decimals silently reinterpreted as argument separators. The parser handles parentheses, powers with ^, square roots, ln, log and trig functions with or without parentheses, the constants pi and e, ans for the previous result, and implicit multiplication like 2(3+4).

Can I use a comma as the decimal separator?

Yes, and you can pin it. There is a setting with three options — follow the app language, always dot, always comma — and it applies to all three places it matters: what you type, what you see, and what gets copied. The keypad decimal key relabels itself to match. It only breaks the genuinely ambiguous case, which is a single separator with exactly three digits after it: 1,500 is one thousand five hundred with a dot preference and one and a half with a comma preference. 1,5 and 1.5 are one and a half under either setting, so changing the preference never reinterprets a normal thing you typed.

Why does the copied number look different from the one on screen?

On purpose. The display groups digits so a long number is readable — 1.234,5 — while the copy buttons give you 1234.5, which is what actually pastes into a spreadsheet or a code editor without being mangled. You get three copy buttons: the formula alone, the result alone, or formula = result, which is the one you want when pasting into a message or a ticket. Fixed decimal places (auto, or 0 to 8) apply to the copy too, so what you see is what you paste.

How is this different from the Math widget?

Math is a spreadsheet: a grid of cells with formulas like =A1+B1, for when the numbers relate to each other. This is the other half — one line, one answer, the thing you reach for mid-sentence. Toolbox also has Rates & Tax if what you are doing is specifically an hourly-to-yearly conversion or pulling tax out of a gross amount.

Is it free?

Yes. Webstarted Toolbox is free and needs no account, and Calculator is a free widget in its catalog — one click from inside the app installs it. It works fully offline: nothing you type leaves the machine.

Get Webstarted Toolbox

Free to use. Download the app, then add Calculator from the catalog in one click. macOS 12+ and Windows 10+.

Free beta · macOS · Windows (x64) · Signed & notarized · No account required
Keep exploring

One icon, many small tools

This is just one of the widgets in Webstarted Toolbox. Here are the rest:

Keep Awake Stop your Mac from sleeping, on your terms. 📊 LLM Quota Pace your Claude / AI usage against the clock. 🍅 Pomodoro 25/5 focus cycles in your menu bar. Countdown Live countdowns to anything that matters. Clipboard history Your recent copies, one keystroke away. {} Dev tools JSON, Base64, JWT, regex, epoch — offline. Quick Note A scratchpad that autosaves as you type. 🌐 My IP Your public IPv4 and IPv6, copyable, with ISP and location. 📈 System Info CPU, memory and GPU in your menu bar. 🐹 Topos A 30-second reflex game in your menu bar. 💣 Minesweeper Classic minesweeper in your menu bar. 🪙 Crypto Prices Live crypto prices with 24h change, in your menu bar. 💱 Currency Converter Convert currencies with real parallel rates (blue, MEP, CCL). 🌍 World Clocks Several cities' time at once — daylight saving handled automatically. 🔳 QR Generator QR codes for text, URLs, WiFi or contacts — offline. 🔑 Password Generator Strong passwords & passphrases, fully offline. 🌤️ Weather Any city, now + the days ahead — no API key. 🔥 Habit Tracker Daily streaks — don't break the chain. 100% local. 🔤 Text Tools Change case, slugify, count, dedupe — offline. 🎲 Random Picker Pick from a list at random, or roll dice. 🎨 Color Picker Pick a color, copy hex / rgb / hsl / hsv — offline. 🌐 Translator 18 languages from the menu bar — no API key needed. 🔀 Text Diff Compare two texts line by line — 100% local. Cron Wizard Cron expressions in plain English, with the next runs. 🗃️ Dummy Data Lorem ipsum and fake rows in JSON, CSV or SQL. 🔊 Focus Sounds White, pink or brown noise — synthesized, no files. 🔁 Subscriptions What your recurring services cost per month and year. 🧾 Rates & Tax Hourly ↔ yearly, and add or extract tax. Network Fees Ethereum gas and Bitcoin fees, right now. 📣 UTM Builder Trackable campaign links, normalized so GA behaves. 🌿 Git Status Which of your repos are dirty, unpushed or behind. 🎬 Teleprompter Your script scrolls at the speed you read — in wpm. 📊 Stocks Stocks and ETFs with the day’s change — no API key. 🔥 Fireplace A fireplace generated on the fly — no files, no network. 💼 Job Tracker Your applications, with an OS alarm before each interview. Converter 57 units in 8 categories, converted with zero network. Alarms Clock-time alarms that ring with everything closed. 🗂️ Project Boards Kanban boards with your columns, and a due date that notifies you. 📡 Website Monitor Are your sites up? The code and the latency, from your machine. 📤 Send to another computer Text and images to another computer on your network. 📅 Calendar A month view in your menu bar.