Developer API

Free, public REST API for global income tax calculations. No authentication required.

Base URL

https://globaltaxcalculator.net/api

Endpoints

GET/api/countries

List all supported countries.

Response

[
  { "name": "Australia", "code": "AU" },
  { "name": "Brazil", "code": "BR" },
  { "name": "Canada", "code": "CA" },
  ...
]

GET/api/countries/:code

Get the full tax data for a country, including all brackets, social contributions, surcharges, and assumptions.

Example

curl https://globaltaxcalculator.net/api/countries/US

Response

{
  "country": "United States",
  "countryCode": "US",
  "taxYear": "2025",
  "currency": "USD",
  "assumptions": {
    "subnationalRegion": "California",
    "notes": [...]
  },
  "incomeTax": {
    "brackets": [...],
    "relief": { "type": "allowance", "amount": 15000, ... }
  },
  "subnationalTaxes": [...],
  "socialContributions": [...],
  "surcharges": [...]
}

GET/api/currencies

List all supported currency codes.

Response

["AED", "ARS", "AUD", "BRL", "CAD", "CHF", "CNY", "EUR", "GBP", "JPY", "USD", ...]

POST/api/calculate

Calculate income tax for one or more countries. Returns a detailed breakdown including income tax, subnational taxes, social contributions, and surcharges.

Request body

Field Type Description
amountnumber Annual gross income. Must be positive.
currencystring ISO 4217 currency code (e.g. "USD", "EUR", "GBP").
countriesstring[]? ISO 3166-1 alpha-2 country codes (e.g. ["US", "GB"]). 1-10 countries. Omit for all.

Example

curl -X POST https://globaltaxcalculator.net/api/calculate \
  -H "Content-Type: application/json" \
  -d '{"amount": 100000, "currency": "USD", "countries": ["US", "GB"]}'

Response

[
  {
    "country": "United States",
    "countryCode": "US",
    "taxYear": "2025",
    "currency": "USD",
    "exchangeRate": 1,
    "gross": 100000,
    "net": 72839,
    "originalGross": 100000,
    "originalNet": 72839,
    "originalTax": 27161,
    "tax": {
      "total": 27161,
      "rate": 0.2716,
      "breakdown": {
        "incomeTax": 14260.5,
        "subnationalTaxes": 5726.96,
        "socialContributions": 7174,
        "surcharges": 0
      }
    },
    "assumptions": { ... },
    "details": { ... }
  }
]

POST/api/tax-curve

Generate effective tax rate curves across an income range for one or more countries. Useful for charting and comparisons.

Request body

Field Type Description
countriesstring[] ISO country codes. 1-6 countries.
currencystringISO 4217 currency code.
maxIncomenumber? Upper income bound. Default: 300,000.
stepsnumber? Number of data points (5-50). Default: 20.

Example

curl -X POST https://globaltaxcalculator.net/api/tax-curve \
  -H "Content-Type: application/json" \
  -d '{"countries": ["US", "GB"], "currency": "USD"}'

Response

[
  {
    "country": "United States",
    "countryCode": "US",
    "currency": "USD",
    "points": [
      { "income": 0, "effectiveRate": 0, "netIncome": 0 },
      { "income": 50000, "effectiveRate": 0.2213, "netIncome": 38935 },
      { "income": 100000, "effectiveRate": 0.2716, "netIncome": 72839 },
      ...
    ]
  }
]

Errors

All errors return a JSON object with a status code and message.

{ "statusCode": 404, "statusMessage": "Country not found" }
CodeMeaning
400 Invalid or missing parameters.
404 Country or resource not found.
500 Server error. Try again later.

Attribution

You must include a visible link to globaltaxcalculator.net anywhere you display data from this API. For example:

Tax data by <a href="https://globaltaxcalculator.net">globaltaxcalculator.net</a>

Attribution-free usage is available under a paid license. Contact hello@globaltaxcalculator.net for details.