ForHosting KIT · Finance & money

Discretionary income calculator

With 80,000 of gross income, 16,000 in taxes and 42,000 of essential costs, 22,000 remains for savings, extra debt payments or wants. You also see the 64,000 of disposable income after tax. 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 income
80,000
Taxes
16,000
Essential expenses
42,000
You get
Disposable income
64,000
Discretionary income
22,000
Remaining income
22,000

Discretionary income is the leftover after taxes and the living costs a household cannot skip. Use the same period for every field: annual with annual, monthly with monthly.

What discretionary income is, and how it differs from take-home pay

Discretionary income is the money that remains after you subtract taxes and essential living expenses from gross income. It is not the same as take-home pay. Take-home, or net pay, stops after withholdings leave the paycheck.

Disposable income in textbook language is gross income minus taxes — the cash that is legally yours to spend or save. Discretionary income goes one layer further: it also removes the costs of staying housed, fed, insured, and current on required bills. What is left is the remainder you can put toward savings, extra debt payments, travel, hobbies, or nothing at all.

That remainder can be positive, zero, or negative. A negative figure is not a bug; it means essentials plus tax already exceed gross income for the period, which is information a budget needs rather than a value to hide. This calculator does not invent a tax table, does not classify your transactions, and does not decide what is essential for you.

You bring those three numbers; it subtracts them. Housing, groceries, utilities, insurance premiums, childcare that lets you work, and minimum debt payments are the usual essentials. Streaming, dining out, and optional subscriptions belong in the leftover, not in the essential bucket, unless you choose to treat them as must-pays.

Keeping that boundary honest is what makes the remaining-income figure useful instead of optimistic.

Where knowing your leftover income helps

Households use a discretionary income calculator to size how much they can save, invest, or spend on wants after the bills that keep the lights on. Advisors compare two job offers on remaining income rather than on headline salary, because a higher gross with higher tax and a higher cost of living can leave less leftover. Budgeting apps gate optional spending against this remainder so a new subscription cannot silently eat the emergency-fund contribution.

Failed validation does not consume balance. The tool is not a tax engine and not a transaction categorizer: it will not estimate your bracket, split a grocery receipt, or forecast inflation. Bring numbers you already trust, keep the period consistent, and treat a negative remaining amount as a signal to cut wants, raise income, or re-examine what you labeled essential.

Household monthly leftover

Enter monthly gross, monthly tax withheld, and monthly must-pay bills to see how much remains for savings, extra debt payments, or wants.

Compare two job offers on remaining income

A higher salary in a higher-tax, higher-rent city can leave less leftover. Run both offers through the same three-number contract before you decide.

What is the difference between disposable income and discretionary income?

Disposable income is gross minus taxes. Discretionary income subtracts essential living expenses as well. This calculator returns both so you can see each layer.

What counts as essential living expenses?

Costs you cannot skip for the period: housing, food, utilities, insurance, required childcare, and minimum debt payments.

What if remaining income is negative?

That is a valid result, not an error. It means taxes plus essentials already exceed gross income for the period.

Should I enter monthly or yearly figures?

Either, as long as all three use the same period: monthly income with monthly tax and monthly bills, or annual with annual. Mixing a yearly salary with monthly rent gives a leftover that describes no real month.

Do I enter my tax rate or the tax amount?

The amount. Enter the tax actually paid or withheld for the period as a sum of money, not as a percentage; the calculator does not estimate your bracket or apply a tax table.

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/discretionary-income

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/discretionary-income \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"gross_income":80000,"taxes":16000,"essential_expenses":42000}'
{
  "gross_income": 80000,
  "taxes": 16000,
  "essential_expenses": 42000
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "fin.discretionary_income",
  "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.

This discretionary income calculator accepts three finite numbers — gross income, taxes, and essential living expenses — and returns remaining income as discretionary_income, plus disposable income (gross minus taxes) so both classic personal-finance layers appear in one response. Any missing, infinite, or non-numeric value fails with invalid_input and is not billed. Successful API calls use prepaid balance at $0.002 per request.

Input contract, formula, and error behaviour

There is no hidden default: omitting taxes is not the same as taxes equal to zero. The formula field restates the identity for display. Example: gross eighty thousand, taxes sixteen thousand, essential expenses forty-two thousand yields disposable sixty-four thousand and remaining twenty-two thousand. Pair monthly gross with monthly tax and monthly essentials; mixing an annual salary with monthly rent produces a leftover that does not describe any real month. Send a JSON body with three required finite numbers on the same time base. gross_income is salary, wages, or other gross receipts before tax for the period. taxes is the tax actually paid or withheld for that same period, expressed as a currency amount, not a percentage. essential_expenses is the sum of must-pay living costs for the period: rent or mortgage, food, utilities, insurance, and similar non-negotiables. Each field may arrive as a JSON number or as a numeric string; aliases such as income, gross, salary, tax, tax_amount, expenses, living_expenses, and essential_living_expenses are accepted. Missing fields, empty strings, infinities, NaN, and non-numeric values fail with invalid_input naming the field, and those failures are not billed. The formula is a single subtraction chain: discretionary_income equals gross_income minus taxes minus essential_expenses. The response echoes the three inputs rounded to two decimal places, reports disposable_income as gross minus taxes, and reports both discretionary_income and remaining_income as the leftover — they are the same amount, named twice so clients looking for either term find it.

Where a remaining-income API earns its keep

Every successful API call costs the published $0.002 base price with no model tokens and no outbound network. Pin the rounded leftover in tests if you automate the call; two decimal places keep comparisons stable across runtimes. That is the entire contract: three finite numbers in, remaining income out.

Gate optional spending in a budgeting app

Block new subscriptions when discretionary_income is at or below zero, using the same arithmetic the API bills and the free widget shows.

How is discretionary income calculated?

Send finite numbers for gross_income, taxes, and essential_expenses on the same period. The leftover is gross_income minus taxes minus essential_expenses, returned as discretionary_income and remaining_income.

What does the discretionary income calculator cost?

The browser tool is free. API requests use prepaid balance at $0.002 per successful call; invalid input is not billed.

Read the full KIT documentation →