How We Work

Our Methodology

How we make sure every number on this site is right.

Why methodology matters

A calculator is only as good as its formula and its implementation. This page documents exactly how Calculate All calculators are designed, built, and tested — so you don't have to take our accuracy on faith.

1. Spec-driven design

Every calculator begins as a written specification, not code. The spec defines:

  • The formula with its authoritative source (textbook, standard, or official documentation).
  • Every input: label, unit, type, valid range, and default.
  • Every output: label and display format (currency, percentage, integer).
  • Worked examples with hand-computed expected answers, including edge cases: zeros, negative values, very large and very small numbers.
  • FAQs addressing the most common misunderstandings of the topic.

2. Formula verification

Before implementation, each formula is cross-checked against at least one independent authoritative reference. Where competing conventions exist (for example, flat-rate vs. reducing-balance interest), the page states which convention it uses and why. The formula itself is displayed on every calculator page under "How it's calculated" — if we can't show the math, we don't ship the tool.

3. The 242-assertion automated test suite

All calculator logic lives in versioned formula modules (data/formulas-*.js) that are exercised by an automated test suite — tools/test.js — which currently runs 242 assertions across every tool on the site. The suite checks:

  • Known-answer tests: each formula is evaluated against hand-verified expected values.
  • Edge cases: zero, negative, and extreme inputs behave sanely instead of producing NaN or Infinity.
  • Round-trip consistency: inverse conversions (e.g., kg → lb → kg) return to the starting value within rounding tolerance.
  • Spec integrity: every calculator has a valid formula mapping, sane SEO metadata lengths, and complete FAQ entries.

A calculator page is only generated when the full suite passes — the build fails otherwise, so a broken formula can never reach the site silently.

4. Precision and rounding

Calculations use JavaScript double-precision arithmetic. Display rounding is deliberate and documented per output: currency to two decimals, percentages to two decimals, counts to integers. Intermediate values are never rounded before the final display, so chained math stays accurate. Where floating-point representation could confuse (e.g., 0.1 + 0.2), outputs are formatted to hide representation artifacts.

5. Human review and dating

Automated tests catch implementation errors; humans catch conceptual ones. Every page is reviewed by a person for formula choice, unit correctness, example clarity, and FAQ accuracy before publication. Each page shows a published date and an updated date, plus a byline naming the author and the editorial reviewer.

6. Ongoing verification

  • The test suite runs on every build — any spec or formula change is re-verified automatically.
  • Calculators are re-reviewed at least annually (quarterly for money and health tools).
  • Reader-reported errors are investigated and, when confirmed, fixed with a public updated date.

Limitations

No methodology is perfect. Tests verify implementation against specs, not the spec against reality — a wrong formula choice would pass every test, which is why human sourcing and review come first. And calculators are simplifications: real-world outcomes include factors no formula captures. See our Disclaimer.