How We Calculate

Every calculator on AbacusKit follows the same steps. The aim is simple: a wrong calculator is worse than no calculator.

1. Official sources first

We start from the law, the tax authority, the central bank or the statistics office that publishes the rule. Each calculator page lists its sources with the date we read them. If only a secondary source exists, we say so.

2. Rules are data, not code

Rates, thresholds and holiday dates live in data files with a year and a source. The calculation code never contains a hard-coded rate. When a rule changes, we add a new year and keep the old ones.

3. Tests that must pass

Each calculator has at least ten golden test cases. An expected value comes from an official calculator or worked example where one exists. Where none exists, we derive it by hand from the official formula and mark it as derived. A failing case blocks publication.

4. A second, independent calculation

Where it is feasible, a second implementation that works differently (for example exact integer arithmetic against floating point) is compared with the first on thousands of random inputs. Any disagreement is fixed before release.

5. A verification report

Each calculator has a report listing its sources, scope, test cases, the cross-check and its confidence:

  • High: official rules, official or independently derived test values, nothing uncertain.
  • Medium: the arithmetic is verified, but part of the input data could only be checked against one source or has a known limit. The calculator page and the report say which part.
  • Low: we do not publish these without saying so prominently.

What the calculators do not do

  • They give estimates for information. They are not financial, tax or legal advice.
  • They run as plain code in your browser. No artificial intelligence is used to calculate results.
  • Your inputs stay in your browser. A share link contains them in the address, and saved calculations stay in your browser’s storage.

Found a mistake?

Tell us which calculator, the numbers you entered and the result you expected. We reproduce the problem, fix it with a new test, and note the change.

Last updated 2026-10-20.