Free Calculator API
v1 — free, no API key, CORS enabled
Every Tallytopia calculator — all 73 of them — is available as a JSON API. Results come from the same deterministic engine as the website (see methodology), and every response includes the full step-by-step working, not just the answer.
Endpoints
GET /api/v1/calculators— list every calculator with its linksGET /api/v1/calculators/{slug}— a calculator's inputs (keys, defaults, ranges, options) and stepsGET /api/v1/calculate/{slug}— run it; pass inputs as query parameters, omit any to use its default
Example
curl "https://tallytopia.com/api/v1/calculate/mortgage-payment?principal=300000&annualRate=7&years=30"
{
"calculator": "mortgage-payment",
"title": "Mortgage Payment Calculator",
"inputs": { "principal": 300000, "annualRate": 7, "years": 30 },
"steps": [
{ "key": "monthlyRate", "label": "Monthly interest rate",
"value": 0.00583, "formatted": "0.58%" },
{ "key": "numPayments", "label": "Number of payments",
"value": 360, "formatted": "360" },
{ "key": "payment", "label": "Monthly payment",
"value": 1995.9075, "formatted": "$1,995.91" },
{ "key": "totalPaid", "label": "Total paid over term",
"value": 718526.69, "formatted": "$718,526.69" },
{ "key": "totalInterest", "label": "Total interest",
"value": 418526.69, "formatted": "$418,526.69" }
],
"result": { "key": "payment", "label": "Monthly payment",
"value": 1995.9075, "formatted": "$1,995.91" },
"disclaimer": "Results are informational only — not financial, medical or legal advice.",
"docs": "https://tallytopia.com/api-docs"
}OpenAPI spec & interactive explorer
A machine-readable OpenAPI 3.1 spec is generated from the calculator definitions themselves, so every endpoint's parameters, defaults, ranges and option values are always exact: /api/v1/openapi.json. Import it into Postman, Insomnia or a code generator — or try every endpoint live in the interactive API explorer.
Inputs
Pass each input as a query parameter using the keys from the details endpoint. Number inputs take plain numbers; date inputs take ISO dates (startDate=2026-07-18); dropdown inputs accept only their listed option values. Calculators without a pinned currency accept currency=EUR-style display overrides. Invalid input returns HTTP 400 with a plain-English error; an unknown slug returns 404.
Limits and terms
Free for any use, no key needed, CORS open to all origins. Rate limit: 60 requests per minute per IP (HTTP 429 beyond that). If you build something public with it, a link back to the calculator's page on Tallytopia is appreciated but not required. No uptime guarantee — this is a free service; for embedded UI instead of raw JSON, see the embed snippet on any calculator page. All results carry the standard disclaimer: informational only, not financial, medical or legal advice.
Questions
Email hello@tallytopia.com— including if you'd like higher limits or new calculators.