ForHosting KIT · Finance & money

Annual salary calculator

A gross salary of 4,000 a month is 48,000 a year, and with a flat 22% tax you keep 37,440 after paying 10,560. One step gives the yearly gross, net and tax for any monthly figure. 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
Gross monthly
4,000
Tax rate percent
22
You get
Annual gross
48,000
Annual net
37,440
Annual tax
10,560

The annual salary calculator answers the two questions every payslip raises at once: how much do I actually earn in a year, and how much of it do I keep after tax? Give it your gross monthly salary and a flat tax rate as a percentage, and it returns your gross annual salary — twelve times the monthly figure — alongside your net annual salary after applying that single rate, plus the total tax withheld over the year.

From a monthly payslip to a yearly number

Salaries are quoted monthly, but life is budgeted yearly. Rent contracts, mortgage applications, savings goals and job comparisons all work on annual figures, which means the first thing anyone needs to do with a monthly salary is multiply it out — and the second thing is to work out how much of it survives tax.

This annual salary calculator does both in one deterministic step: it multiplies your gross monthly salary by twelve to get your gross annual salary, then applies your tax rate as a single flat percentage to produce your net annual salary and the total tax paid across the year. There is no estimation, no sampling and no randomness involved — the same two inputs always produce exactly the same three outputs, which is what makes the result safe to embed in offer-comparison spreadsheets, payroll sanity checks and automated budget pipelines.

Because the formula is fixed, you can also run it backwards mentally: if the net figure feels low, you can see instantly whether the cause is the gross number or the rate, instead of staring at a payslip full of line items you cannot influence.

Choosing the right tax rate

The tax rate input is a flat percentage between 0 and 100, and choosing it well is the only real judgment call this tool asks of you. The simplest approach is to use the effective rate from a recent payslip: divide the total tax withheld by your gross pay for the same month and multiply by one hundred. That single number folds brackets, allowances and credits into one rate, which is exactly what a back-of-the-envelope yearly figure needs.

If you do not have a payslip yet — say you are evaluating an offer in a new country — a national average effective rate for your income band is a reasonable stand-in, as long as you remember the output is an approximation. What you should not use is the top marginal bracket: it overstates the tax for almost everyone and makes offers look worse than they are. Everything else — zero salary, zero tax — is accepted, because both model legitimate edge cases like unpaid leave or tax-exempt income.

What the result tells you — and what it does not

The output gives you three yearly figures: gross annual salary, the total tax for the year, and net annual salary. Gross is the number negotiations revolve around; net is the number your budget should be built on; the tax figure is the difference you need to explain to yourself before signing anything. Together they let you compare a monthly offer in one currency or country with another on a like-for-like yearly scale, provided you convert currencies first.

What the calculator deliberately does not model is everything that makes real payroll complicated: progressive brackets that change the rate as income rises, social security contributions, pension deductions, bonuses, a thirteenth month, or mid-year raises. If your situation includes any of those, treat the output as a clean baseline and adjust from there — a flat-rate estimate that is off by two percent is still vastly more useful than no yearly figure at all.

Compare a monthly offer with a yearly one

Convert the monthly gross to an annual figure so both offers sit on the same yearly scale before you negotiate or sign.

Build a realistic household budget

Use the net annual salary — not the gross headline number — as the income line your yearly budget is actually built on.

Sanity-check payroll withholding

Multiply your payslip's effective rate by twelve months and compare the computed annual tax against what payroll actually withheld.

Which tax rate should I enter?

Your effective rate: total tax withheld divided by gross pay, times one hundred. Avoid the top marginal bracket — it overstates tax for almost everyone.

Does it handle progressive tax brackets?

No. It applies one flat rate to the whole year. Fold brackets into a single effective rate from your payslip for a good approximation.

Are bonuses or a thirteenth month included?

No. The gross figure is exactly twelve times the monthly input. Add bonuses to the monthly amount first if you want them reflected.

What tax rate should I use for a job offer in another country?

If you have no payslip from that country yet, use the national average effective rate for your income band. It is a reasonable stand-in, as long as you remember that the yearly result is an approximation.

Why is a tax rate above 100 rejected?

Because a flat rate below zero or above one hundred percent has no real-world meaning. The calculator refuses it rather than return a number that would quietly distort your budget; any rate from 0 to 100 is accepted.

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/annual-salary

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/annual-salary \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"gross_monthly":4000,"tax_rate_percent":22}'
{
  "gross_monthly": 4000,
  "tax_rate_percent": 22
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "fin.annual_salary",
  "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.

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.

The same deterministic arithmetic runs free in your browser on this page and through the API at $0.002 per request, so the number you see here is byte-for-byte the number your integration receives. It is the fastest way to turn a monthly offer into a yearly figure you can compare, budget against, and negotiate with.

Choosing the right tax rate

A rate below zero or above one hundred has no real-world meaning, so the calculator rejects it with an invalid_input error instead of returning a number that would silently poison a budget.

What the result tells you — and what it does not

The arithmetic is pure and runs entirely in your browser or in a Worker at the edge: your salary numbers are never sent to a third party, stored, or logged by this page, and the API charges $0.002 per request with the same zero-retention behavior.

What does it cost?

$0.002 per request via the API. It is also completely free to run in your browser on this page.

Why was my tax rate rejected?

Rates below 0 or above 100 percent have no real-world meaning, so the calculator returns an invalid_input error instead of a misleading number.

Read the full KIT documentation →