ForHosting KIT · Developer Utilities

Mortgage affordability calculator

This mortgage affordability calculator turns a gross annual income, current monthly debt obligations, and a target debt-to-income ratio into a maximum monthly mortgage payment.

● BetaFree · in your browser
Use it from WebAPIEmailTelegramApp soon

It then estimates the loan principal that payment could support at the annual interest rate and repayment term you provide. The result is a planning estimate rather than a lending decision: taxes, insurance, association dues, down payment requirements, closing costs, credit history, and lender-specific rules can all change the amount available for a home purchase.

Start with income, debts, and a deliberate DTI target

Mortgage affordability begins with gross income, meaning income before income taxes and other payroll deductions. The calculator divides annual income by twelve to obtain gross monthly income. It then multiplies that figure by the target debt-to-income ratio, expressed as a percentage, to find the maximum total monthly debt allowed by your chosen threshold. Current required debt payments are subtracted from that allowance. Include recurring obligations such as vehicle loans, student loans, personal loans, minimum credit card payments, and court-ordered payments when they apply. Do not include the proposed mortgage in monthly debts because the calculator is solving for that amount. A target ratio is a planning choice, not an approval guarantee. Different loan programs and lenders apply different definitions, documentation rules, and limits. Using a lower target creates more room in the household budget for savings, maintenance, utilities, and income changes. A ratio above 100 percent is invalid because it would allocate more than all gross monthly income to debt, so the capability rejects it explicitly.

Understand how the payment becomes a loan estimate

After finding the available monthly mortgage payment, the calculator applies the standard present-value formula for a fully amortizing, fixed-rate loan. The annual interest percentage is divided by twelve to obtain a monthly rate, and the term in years is multiplied by twelve to obtain the number of monthly payments. The resulting estimated loan amount is the principal whose scheduled principal-and-interest payment matches the available payment. When the interest rate is zero, the calculation simply multiplies the monthly payment by the number of payments, avoiding division by zero and preserving the intuitive result. If existing monthly debts already consume the entire DTI allowance, the maximum mortgage payment and estimated loan amount are both zero rather than negative. The calculation assumes a constant rate and equal monthly payments through the full term. It does not model adjustable rates, interest-only periods, balloon payments, lender fees financed into the balance, or mortgage insurance. Those features require a more specific loan scenario and can materially change the principal supported by the same monthly budget.

Use the result as a cautious planning boundary

The maximum monthly mortgage payment returned here represents the room left inside the selected total DTI ratio after current debts. In many real housing budgets, however, the payment considered by a lender includes more than loan principal and interest. Property taxes, homeowners insurance, mortgage insurance, flood insurance, and association dues may also count toward the housing obligation. If those costs must fit inside your target, subtract a realistic monthly estimate for them from the returned payment before comparing properties or requesting loan quotes. The estimated loan amount is not the same as a home price: a down payment can increase the purchase price, while closing costs and required reserves can reduce the cash available. Compare several scenarios by changing the rate, term, or DTI target, but avoid treating a favorable scenario as certain. Rates and lender standards can change, and qualifying income may differ from the annual income entered. For automated calculations, each request costs $0.002; the same deterministic inputs always produce the same result, making scenario comparisons and audit records straightforward.

Set a home-search ceiling

Translate a conservative DTI target into a payment and approximate loan principal before reviewing listings.

Compare rate scenarios

See how different annual interest rates change the loan amount supported by the same monthly payment budget.

Evaluate debt reduction

Compare current obligations with a lower monthly debt total to estimate how repayment could affect mortgage capacity.

What does the calculation cost?

API access costs $0.002 per request, and the browser calculation is free.

What debts should I include?

Include required recurring monthly debt payments such as loan installments and minimum credit card payments, but exclude the proposed mortgage.

Does the mortgage payment include taxes and insurance?

No. The computed payment is the amount available for the mortgage calculation. Subtract taxes, insurance, dues, and similar housing costs first if they must share that budget.

Why can the affordable payment be zero?

A zero result means current monthly debts already equal or exceed the total debt allowance created by the selected DTI target.

Is the estimated loan amount a lending offer?

No. It is a deterministic planning estimate. A lender may use different qualifying income, ratios, rates, fees, and underwriting requirements.

Can I use a zero interest rate?

Yes. At zero interest, the estimated loan amount equals the monthly payment multiplied by the number of monthly payments.

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/realestate/mortgage-affordability

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/realestate/mortgage-affordability \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"annual_income":120000,"monthly_debts":1000,"target_dti":36,"interest_rate":6.5,"term_years":30}'
{
  "annual_income": 120000,
  "monthly_debts": 1000,
  "target_dti": 36,
  "interest_rate": 6.5,
  "term_years": 30
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "realestate.mortgage_affordability",
  "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.

Read the full KIT documentation →