ForHosting KIT · Finance & money

Marginal tax bracket lookup and progressive tax calculator

On 50,000 of taxable income with bands starting at 0, 11,600 and 47,150, the marginal rate is 22% and the tax is 6,053, shown band by band so you can check each step. Works with any country's table. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Taxable income
50,000
You get
Marginal rate percent
22
Bracket lower bound
47,150
Total tax
6,053
Effective rate percent
12.11

This marginal tax bracket lookup accepts taxable income and a bracket table you control, then identifies the rate applying to the next unit of income and calculates tax across every applicable band. It is jurisdiction-neutral: enter the thresholds and percentage rates for the country, region, filing status, and tax year you need. The result includes the active bracket, total estimated tax, effective rate, and a transparent band-by-band breakdown, making the calculation easy to inspect or automate.

Describe the bracket table correctly

A threshold is the inclusive lower bound at which its rate becomes the marginal rate, while rate is a percentage between 0 and 100. The first threshold must be zero, and every later threshold must be strictly greater than the one before it. For example, rows starting at 0 with 10%, 11,600 with 12%, and 47,150 with 22% describe three progressive bands.

Keep every amount in the same currency; the calculator does not perform currency conversion. The table is supplied by you because tax schedules differ by jurisdiction, filing status, income category, and year. This also prevents an outdated built-in schedule from silently producing an authoritative-looking answer.

Copy thresholds from the applicable official schedule, check whether its published boundaries are expressed as lower bounds, and include every band needed for the income being tested. The final row is treated as open-ended, so it has no upper bound in the result.

Understand marginal and progressive tax

The marginal rate is not applied to all taxable income. The calculator splits income into portions bounded by consecutive thresholds and applies each portion's own percentage. If taxable income is 50,000 in the example schedule, the first 11,600 is taxed at 10%, the amount from 11,600 to 47,150 is taxed at 12%, and only the amount above 47,150 is taxed at 22%.

At exactly zero income, both total tax and effective rate are zero, while the first bracket is still identified. Monetary output is rounded to two decimal places. The breakdown exposes each non-empty taxed band so you can audit the arithmetic instead of trusting an unexplained total.

Use the result responsibly

Model those items before calling it or handle them separately. Because laws and schedules change, label saved tables with their jurisdiction, filing status, and tax year in your own system. Compare important results with official guidance or a qualified tax professional.

The output is a mathematical estimate from the inputs you supply, not tax, legal, or financial advice.

Compare filing scenarios

Run the same taxable income against separate official tables to compare filing statuses or jurisdictions without changing the calculation logic.

Audit a spreadsheet

Check a spreadsheet's progressive-tax formula against a band-by-band breakdown with explicit thresholds, rates, taxable amounts, and tax.

What is a marginal tax bracket?

It is the band containing the current taxable income. Its rate generally applies only to additional income within that band, not to all income.

How should I express rates?

Use percentages: enter 12 for 12%, not 0.12. Each rate must be a finite number from 0 through 100.

Why must the first threshold be zero?

Starting at zero makes the table complete and prevents an untaxed gap below the first supplied bracket from being mistaken for a progressive band.

Does crossing a threshold tax all income at the higher rate?

No. Only the portion above that threshold uses the higher rate. Earlier portions retain the rates of their own bands.

Does this include deductions, credits, or current official tax tables?

No. Supply already-determined taxable income and the correct table. The tool performs only the progressive bracket calculation and is not tax advice.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/fin/tax-bracket-marginal-lookup

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/fin/tax-bracket-marginal-lookup \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"taxable_income":50000,"brackets":[{"threshold":0,"rate":10},{"threshold":11600,"rate":12},{"threshold":47150,"rate":22}]}'
{
  "taxable_income": 50000,
  "brackets": [
    {
      "threshold": 0,
      "rate": 10
    },
    {
      "threshold": 11600,
      "rate": 12
    },
    {
      "threshold": 47150,
      "rate": 22
    }
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "fin.tax_bracket_marginal_lookup",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

max_brackets100
HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Describe the bracket table correctly

Enter taxable_income as a non-negative number, then provide brackets as ordered rows containing threshold and rate.

Understand marginal and progressive tax

Those band taxes are added to produce total_tax. The marginal_rate_percent field reports the rate of the bracket whose lower bound has been reached, which is the rate applied to an additional unit of taxable income until the next threshold. The effective_rate_percent divides total tax by taxable income, so it will normally be below the marginal rate.

Use the result responsibly

The free browser calculation and API use the same deterministic function, with no network request, random choice, or current-date dependency. API calls start at $0.002, while failed validation such as a negative income, missing row, invalid rate, or unordered threshold produces an invalid_input error rather than a partial estimate.

Power a planning application

Store versioned bracket schedules in your application and call one deterministic API contract for each supported tax year or region.

Read the full KIT documentation →