Calculator overview
Inputs and outputs
This summary comes from the calculator's published input and output contract.
Inputs
- Loan Term Years (required)
-
Unit years Default 30 Range 1 to 40
About this input
How long the loan would run. A longer term lowers the payment and therefore raises the price that qualifies, at the cost of far more interest.
- Front End Ratio (required)
-
Unit fraction Default 0.28 Range 0 to 1
About this input
The share of gross income a lender allows for housing alone. Twenty-eight percent is the conventional figure; your lender may use another, so it is editable.
- Monthly Debt Payments (required)
-
Unit currency/month Default 500 Range At least 0
About this input
Every other required monthly payment: car loans, student loans, credit-card minimums, child support. Not utilities, food or insurance that is not tied to a debt.
- Property Tax Rate (required)
-
Unit fraction Default 0.012 Range 0 to 1
About this input
Annual property tax as a share of the price, not a dollar amount, because the tax rises with the price you can afford. One to one and a half percent is typical in much of the United States and varies widely.
- Monthly Gross Income (required)
-
Unit currency/month Default 8000 Range At least 0
About this input
Household income each month before tax and deductions. Lenders work from gross, not take-home, which is why the figure looks generous against what actually arrives.
- Annual Home Insurance (required)
-
Unit currency/yr Default 1500 Range At least 0
About this input
The yearly premium. Unlike tax it does not scale with price in this model, so enter the figure for the kind of house you are looking at.
- Annual HOA Dues
-
When omitted Blank
Unit currency/yr Default Not set Range At least 0
About this input
Optional. Yearly association dues, which sit inside the housing ratio and so reduce what you can borrow. Leave blank where there is no association.
- Annual Interest Rate (required)
-
Unit fraction Default 0.06 Range At least 0
About this input
The rate you expect to be offered. It moves the answer more than anything else on this sheet, which the first chart shows directly.
- Down Payment Available (required)
-
Unit currency Default 60000 Range At least 0
About this input
Cash you can put into the purchase. Closing costs come out of the same pot, so the figure here should be what is left after them.
- Back End Ratio (required)
-
Unit fraction Default 0.36 Range 0 to 1
About this input
The share of gross income a lender allows for housing plus all other debt. Thirty-six percent is the conventional figure and the same caveat applies.
Outputs
- Model Status
-
No unit declared
About this output
Reads OK, or explains why the inputs are not valid or why the answer deserves a second look.
- Maximum Price
-
Unit currency
About this output
The most you could pay for the house on these figures. It is solved rather than divided, because the property tax on a more expensive house is itself larger.
- Payment Budget
-
Unit currency/month
About this output
The smaller of the two budgets. This is the whole housing payment, not just the loan: tax, insurance and dues come out of it before any interest is paid.
- Property Tax At Max
-
Unit currency/month
About this output
Monthly property tax at the maximum price, which is the piece that grows as the price does.
- Principal Interest At Max
-
Unit currency/month
About this output
The loan part of the payment at that price. The rest of the budget goes to tax, insurance and dues.
- Maximum Loan
-
Unit currency
About this output
That price less the cash you are putting down.
- Binding Ratio
-
No unit declared
About this output
Which of the two ratios is the one actually limiting you. When it is the total-debt ratio, paying down another debt raises what you can buy; when it is the housing ratio, it does not.
- Back End Budget
-
Unit currency/month
About this output
The monthly housing payment left once every other debt payment is taken out of the total-debt allowance.
- Deposit Share
-
Unit fraction
About this output
Your cash as a share of that price. Under a fifth normally brings mortgage insurance, which this model does not charge and which would lower the price you can reach.
- Headroom Vs Debt Ratio
-
Unit currency/month
About this output
How much room is left under the total-debt allowance once the binding budget is taken. Zero means the debt ratio is what is holding you back.
- Front End Budget
-
Unit currency/month
About this output
The monthly housing payment the housing ratio allows on its own.
LogicCommons is in beta. If a result, label, or reference looks wrong, tell us here; we read every message.
Methodology
Purpose and model boundary
Use this calculator to find the highest price a household could pay for a home once two lender qualifying ratios, existing debt payments, available cash and the recurring costs of ownership are all counted. It reports the monthly housing budget those ratios allow, says which of the two is the one actually limiting you, and converts that budget into a purchase price.
Two points decide how the answer should be read. The budget covers the whole housing payment, not just the loan: principal, interest, property tax, homeowners insurance and any association dues come out of the same monthly figure, and only what remains after the fixed costs sizes a loan. And the price is solved rather than divided out. Property tax is entered as an annual share of the price, so the tax depends on the very price being looked for and the price appears on both sides of the payment equation. Sizing a loan from the budget first and adding tax afterwards gives a price that is too high, because the tax on that larger house no longer fits the budget.
The boundary is wide. This calculator does not decide approval: a lender also weighs credit history, cash reserves, employment, the property itself and its own internal overlays, none of which appear here. Mortgage insurance is not charged, although a deposit below one fifth of the price usually brings it and it is paid out of this same budget, so the real affordable price in that case is lower than the figure here. Closing costs are not deducted, even though they come out of the same cash as the deposit. Variable rates, buydowns and assistance programmes are not represented, and neither is tax reassessment after a sale, so the tax rate entered is assumed to be the rate that applies after the purchase. Income that is not gross, and gross income that is not steady, are outside the model entirely. The two ratios themselves are underwriting conventions rather than law, which is why they are editable inputs and not built-in constants.
Inputs and units
| Input | Unit | Accepted range | What it means |
|---|---|---|---|
| Monthly Gross Income | $/month | 0 or more, and above 0 to compute | Household income each month before tax and deductions. Lenders work from gross, not take-home, which is why the figure looks generous against what actually arrives. |
| Monthly Debt Payments | $/month | 0 or more | Every other required monthly payment: car loans, student loans, credit-card minimums, child support. Not utilities, food or insurance that is not tied to a debt. |
| Front End Ratio | percentage | Above 0 and up to 100% | The share of gross income a lender allows for housing alone. Twenty-eight percent is the conventional figure; your lender may use another, so it is editable. |
| Back End Ratio | percentage | Above 0 and up to 100% | The share of gross income a lender allows for housing plus all other debt. Thirty-six percent is the conventional figure and the same caveat applies. |
| Down Payment Available | $ | 0 or more | Cash you can put into the purchase. Closing costs come out of the same pot, so the figure here should be what is left after them. |
| Annual Interest Rate | percentage | 0% or more | The rate you expect to be offered. It moves the answer more than anything else here, which the first chart shows directly. |
| Loan Term Years | years | 1 through 40 | How long the loan would run. A longer term lowers the payment and therefore raises the price that qualifies, at the cost of far more interest. |
| Property Tax Rate | percentage | 0 through 100% | Annual property tax as a share of the price, not a dollar amount, because the tax rises with the price you can afford. One to one and a half percent is typical in much of the United States and varies widely. |
| Annual Home Insurance | $/year | 0 or more | The yearly premium. Unlike tax it does not scale with price in this model, so enter the figure for the kind of house you are looking at. |
| Annual HOA Dues | $/year | 0 or more, or blank | Optional. Yearly association dues, which sit inside the housing ratio and so reduce what you can borrow. Leave blank where there is no association. |
Association dues are the only optional input and ship blank, which is treated as no dues. Income and both ratios accept zero as an entered value but cannot be evaluated at zero, so a zero there returns a status rather than a price.
Governing relationships
Write income as I, other monthly debt payments as D, the front-end ratio as f and the back-end ratio as b. The housing allowance is I × f and the total-debt allowance after other debts is I × b − D. The binding budget is the smaller of the two, floored at zero:
budget = max(0, min(I × f, I × b − D)).
Insurance and dues are fixed monthly amounts that do not depend on the price, so they come out of the budget before any loan is sized. With annual insurance S and annual dues H, where blank dues read as zero, the amount left for loan and tax is
L = budget − S ÷ 12 − H ÷ 12.
The loan side uses the standard level-payment factor. With monthly rate r equal to the annual rate divided by twelve, and n equal to the term in years times twelve rounded to whole months, the payment per dollar borrowed is a = r ÷ (1 − (1 + r)^−n). That collapses to a = 1 ÷ n at a zero rate, and to a = 0 when there are no payments at all.
The payment equation sets the whole housing payment equal to the budget. With price P, deposit C and annual tax rate t:
L = a × (P − C) + t × P ÷ 12.
Price appears twice, so it is collected on one side and solved in closed form:
P = (L + a × C) ÷ (a + t ÷ 12).
Everything else follows. The loan is max(0, P − C), principal and interest is a × max(0, P − C), monthly property tax is P × t ÷ 12, the deposit share is C ÷ P and is reported as zero when P is zero, and headroom is the total-debt allowance less the binding budget. The fixed point is checked rather than assumed: principal and interest, property tax at the maximum price, insurance and dues add back to the binding budget, and an invariant inside the workbook asserts that in every state.
When L is zero or negative there is nothing to service a loan and the price falls back to the deposit itself. That is deliberate, because cash is still purchasing power even when no borrowing qualifies.
Calculation sequence
- Check income, other debt payments, the interest rate, the term and the two ratios against the published input rules, in the order the status table below sets out.
- Read association dues, treating a blank entry as zero.
- Calculate the number of monthly payments as the term in years times twelve, rounded and floored at zero.
- Calculate both allowances, take the smaller, and floor it at zero. That is the payment budget.
- Record which allowance is the smaller, which is the binding ratio reported on the page.
- Subtract monthly insurance and monthly dues to get the amount left for loan and tax.
- Calculate the monthly rate and the payment factor per dollar borrowed, using the zero-rate branch when the rate is zero.
- Solve the payment equation for the maximum price. If nothing is left for loan and tax, or the combined loan and tax factor is not positive, return the deposit as the price instead.
- Derive the maximum loan, principal and interest at that price, monthly property tax at that price, the deposit share and the headroom.
- Rebuild the budget from the price and confirm it reproduces the binding budget.
- Recalculate the price across annual interest rates from 0% to 20% in half-point steps for the first chart, and split the monthly budget into its four parts for the second.
- Evaluate the status conditions below in order; the first condition that is true is the one returned.
Outputs and interpretation
The three headline outputs are Maximum Price, Payment Budget and Binding Ratio, and they are meant to be read together. Maximum Price is the answer, Payment Budget is the monthly commitment that produces it, and Binding Ratio says which constraint you would have to relieve to move the answer. When the housing ratio binds, paying off a car does nothing for the price while more income or a larger deposit does. When the total-debt ratio binds, clearing another debt raises the price directly.
| Output | Role | Unit | What it means |
|---|---|---|---|
| Maximum Price | headline | $ | The most you could pay for the house on these figures. It is solved rather than divided, because the property tax on a more expensive house is itself larger. |
| Payment Budget | headline | $/month | The smaller of the two budgets. This is the whole housing payment, not just the loan: tax, insurance and dues come out of it before any interest is paid. |
| Binding Ratio | headline | text | Which of the two ratios is the one actually limiting you. When it is the total-debt ratio, paying down another debt raises what you can buy; when it is the housing ratio, it does not. |
| Model Status | status | text | Reads OK, or explains why the inputs are not valid or why the answer deserves a second look. |
| Maximum Loan | detail | $ | That price less the cash you are putting down. |
| Front End Budget | detail | $/month | The monthly housing payment the housing ratio allows on its own. |
| Back End Budget | detail | $/month | The monthly housing payment left once every other debt payment is taken out of the total-debt allowance. |
| Principal Interest At Max | detail | $/month | The loan part of the payment at that price. The rest of the budget goes to tax, insurance and dues. |
| Property Tax At Max | detail | $/month | Monthly property tax at the maximum price, which is the piece that grows as the price does. |
| Deposit Share | detail | percentage | Your cash as a share of that price. Under a fifth normally brings mortgage insurance, which this model does not charge and which would lower the price you can reach. |
| Headroom Vs Debt Ratio | detail | $/month | How much room is left under the total-debt allowance once the binding budget is taken. Zero means the debt ratio is what is holding you back. |
The first chart sweeps the annual interest rate from 0% to 20% in half-point steps and plots the maximum price against it, with your deposit drawn as a flat line underneath; where the curve meets that line, no borrowing qualifies and the price is the cash alone. The second splits the monthly budget into principal and interest, property tax, insurance and association dues, which shows how much of the allowance is spent before any loan is sized.
One useful sanity check: an extra dollar of deposit raises the maximum price by less than a dollar, because the slightly larger house carries slightly more property tax and that tax has to come out of the same budget. A price that rose by exactly the extra deposit would mean the tax scaling had been ignored. The gap closes as the property tax rate approaches zero, where an extra dollar of cash does buy exactly a dollar more house.
Validation and status logic
This calculator evaluates the status conditions in the order shown, from the top down. The first condition that is true is the one returned, and the final row is the fallthrough that applies when none of the earlier conditions holds. The names in the table are the intermediate quantities defined above: the housing budget that binds is the smaller of the two allowances, and the budget left for loan and tax is that figure after insurance and dues.
| Condition | Returned status |
|---|---|
| Monthly Gross Income <= 0 | NOT VALID: there is no income for a lender to work from |
| Monthly Debt Payments < 0 | NOT VALID: other debt payments cannot be negative |
| Annual Interest Rate < 0 | NOT VALID: the interest rate cannot be negative |
| Loan Term Years < 1 | NOT VALID: the term has to be at least one year |
| OR(Front End Ratio <= 0,Front End Ratio > 1,Back End Ratio <= 0,Back End Ratio > 1) | NOT VALID: each qualifying ratio is a share of income between zero and one |
| Housing budget that binds <= 0 | CHECK: your other debt payments already use the whole allowance, so no housing payment qualifies |
| Budget left for loan and tax <= 0 | CHECK: insurance and dues alone exceed the housing budget, so there is nothing left for a loan |
| Back End Budget < Front End Budget | CHECK: the total-debt ratio binds, not the housing ratio, so paying down other debt raises what you can buy |
| None of the preceding conditions applies | OK |
Order matters in a way that is easy to miss. A scenario can satisfy several conditions at once and only the first is reported. Very large other debt payments, for example, exhaust the whole allowance and also make the total-debt ratio the binding one, but the earlier and more serious status is the one returned. None of these statuses contains a substituted value; each is returned exactly as written above.
Assumptions and limitations
- Income, other debt payments, both ratios, the interest rate and all annual costs are held constant for the whole term. Nothing grows with inflation and nothing is indexed.
- Property tax is strictly proportional to purchase price at the rate entered, with no assessment ratio, exemption, cap or reassessment after sale.
- Insurance and dues are flat annual amounts divided by twelve. They do not scale with the price the model reaches, so at the extremes of the price range they are less realistic than in the middle.
- Mortgage insurance is not charged. Below roughly one fifth down it is usually required and comes out of this same budget, so the affordable price would be lower than reported. The Deposit Share output exists so this can be spotted.
- Closing costs are not deducted from the deposit, so the deposit entered should already be net of them.
- The loan is a fixed-rate level-payment mortgage. Adjustable rates, buydowns, points, interest-only periods, balloon structures and assistance programmes are not represented.
- The number of payments is rounded to whole months, so a fractional term is snapped to the nearest month before the payment factor is calculated.
- The two qualifying ratios are conventions lenders commonly quote, not rules. An underwriter may apply different ratios, count income differently, or decline a scenario this model reports as valid.
- The result is what two ratios allow. It is not a preapproval and says nothing about credit history, reserves, employment stability, the property itself or lender overlays.
- The rate sweep in the first chart varies only the interest rate. Every other input stays where you set it, including insurance and dues, which in practice move with the kind of house a different budget buys.
Restrictions and non-computing states
Income must be above zero, because both allowances are shares of it. Both qualifying ratios must be above zero and no greater than 100%. Other debt payments, the interest rate, the deposit, insurance and dues cannot be negative. The term must be at least one year, and the published input rules cap it at 40; an entry outside 1 through 40 years is rejected before any calculation runs. The property tax rate is accepted between 0 and 100%. Association dues are the one input that may be left empty, and a blank there means no association, which is the same arithmetic as zero.
Two non-computing states return figures rather than refusing. When other debt payments consume the whole total-debt allowance, the binding budget floors at zero and the maximum price falls back to the deposit, because cash on hand is still purchasing power even when no monthly payment qualifies. When insurance and dues alone exceed the housing budget, the same fallback applies for the same reason. Both are reported as CHECK states with the reason named, not as ordinary affordability estimates.
Errors and warnings
A rejected entry happens before any calculation. An input outside the published input rules, such as a term of 44 years or a negative deposit, is refused at the page and no figures are produced. Correct the entry and the calculation runs.
A NOT VALID or CHECK status is the model's own finding about inputs it accepted. NOT VALID means the combination does not describe an answerable question: no income, a negative rate or debt figure, a term under a year, or a qualifying ratio that is not a share between zero and one. Numbers shown beside a NOT VALID status are arithmetic residue, not an affordability estimate. CHECK means the arithmetic succeeded and the answer stands, with something worth noticing: the total-debt ratio binding rather than the housing ratio, or the fixed costs having taken the whole budget. These are findings, and repeating the calculation returns the same finding.
A connection or calculation-service failure is neither of those. It means the calculation service could not be reached or did not complete, so no answer exists for these inputs yet. It is a statement about availability, never a finding about your figures, and it is never reported as a zero, a blank result or an affordable price of nothing. Retry; if it keeps failing, the fault is on the platform side and not in what you entered.
References
The two qualifying ratios are debt-to-income measures. For the definition and a worked example, see the Consumer Financial Protection Bureau's explanation of what a debt-to-income ratio is, which states that the ratio is all monthly debt payments divided by gross monthly income. The specific figures of 28% for housing and 36% for housing plus other debt are conventions that lenders commonly quote rather than a published rule, which is why this calculator carries them as editable inputs and not as constants.
The composition of the monthly housing budget follows the Consumer Financial Protection Bureau's account of the costs that come with taking out a mortgage, which separates principal and interest from property tax, homeowners insurance and association dues. The Bureau's description of escrow and impound accounts explains why property tax and insurance are usually collected monthly alongside the loan payment, which is the reason this calculator charges them against the same monthly budget.
Mortgage insurance is the largest cost this calculator leaves out, and the Deposit Share output exists so that its absence is visible. The Consumer Financial Protection Bureau explains that private mortgage insurance may be required on a conventional loan with a down payment of less than 20% of the purchase price. Where that applies, the premium is paid out of the same budget modelled here, so the affordable price would be lower than this calculator reports.
Closing costs are not deducted from the deposit, which is why the deposit entered should already be net of them. The Consumer Financial Protection Bureau sets out the fees and charges paid at closing and who pays them. For broader context on the recurring obligations of ownership, including taxes, insurance, repairs and maintenance, see the Bureau's summary of the financial considerations of buying a home.
The level-payment mortgage factor and the closed-form solution for a price whose property tax scales with that price are standard financial mathematics. No outside source supplies them; they are derived and independently audited in the delivered workbook, whose method note and validation blocks record the derivation and the figures it was checked against.
These sources provide consumer context; they do not supply this calculator's assumptions and they do not certify its result. This calculator is informational and is not financial, mortgage, tax, investment or real-estate advice, and it is not a preapproval or a lending decision. It reports what two ratios allow, which is not the same as what a lender will approve. Results are highly sensitive to the interest rate, the qualifying ratios and the local property tax rate you enter.
Found a problem, or have an idea?
Tell us if a result looks wrong, a label is unclear, or something is missing. We read every message.