{"id":105894,"date":"2026-08-23T17:30:32","date_gmt":"2026-08-23T21:30:32","guid":{"rendered":"https:\/\/bgodinspired.com\/?page_id=105894"},"modified":"2026-08-23T17:30:32","modified_gmt":"2026-08-23T21:30:32","slug":"how-much-house-can-i-afford","status":"publish","type":"page","link":"https:\/\/bgodinspired.com\/index.php\/how-much-house-can-i-afford\/","title":{"rendered":"How Much House Can I Afford? (Free Calculator)"},"content":{"rendered":"\n<!-- BGodInspired How Much House Can I Afford? -->\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&#038;family=Inter:wght@300;400;500;600&#038;display=swap\" rel=\"stylesheet\">\n<style>\n#bgi-house-tool *, #bgi-house-tool *::before, #bgi-house-tool *::after { box-sizing: border-box; margin: 0; padding: 0; }\n#bgi-house-tool {\n  --navy: #0D1B2A;\n  --navy-mid: #162233;\n  --cream: #F5F0E8;\n  --gold: #C9A84C;\n  --gold-dim: #8B6E2E;\n  --sage: #7B9E87;\n  --warm-gray: #8B8680;\n  --dim: rgba(245,240,232,0.66);\n  --soft: rgba(245,240,232,0.38);\n  --line: rgba(245,240,232,0.09);\n  background: var(--navy);\n  color: var(--cream);\n  font-family: 'Inter', system-ui, sans-serif;\n  width: 100%;\n  max-width: 100%;\n  box-sizing: border-box;\n  display: block;\n  padding: 36px 20px 64px;\n  border-radius: 12px;\n  clear: both;\n  position: relative;\n}\n#bgi-house-tool .tool-inner { display: flex; flex-direction: column; align-items: center; width: 100%; }\n#bgi-house-tool .card {\n  width: 100%;\n  max-width: 680px;\n  background: var(--navy-mid);\n  border: 1px solid rgba(201,168,76,0.14);\n  border-radius: 16px;\n  padding: 48px 48px 44px !important;\n  position: relative;\n  box-sizing: border-box !important;\n  overflow: hidden;\n}\n#bgi-house-tool .card::before {\n  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;\n  background: linear-gradient(90deg, transparent, var(--gold), transparent); opacity: 0.5;\n}\n#bgi-house-tool .eyebrow {\n  display: block; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.14em;\n  text-transform: uppercase; color: var(--gold); margin-bottom: 16px;\n}\n#bgi-house-tool .headline {\n  font-family: 'Playfair Display', serif; font-size: clamp(1.75rem, 4vw, 2.5rem);\n  font-weight: 700; line-height: 1.18; color: var(--cream); margin-bottom: 16px;\n}\n#bgi-house-tool .sub { font-size: 0.97rem; line-height: 1.78; color: var(--dim); margin-bottom: 14px; }\n#bgi-house-tool .meta { font-size: 0.76rem; letter-spacing: 0.05em; color: var(--soft); margin-bottom: 30px; }\n\n\/* \u2500\u2500 FORM \u2500\u2500 *\/\n#bgi-house-tool .field { margin-bottom: 20px; }\n#bgi-house-tool .field label { display: block; font-size: 0.88rem; font-weight: 500; color: var(--cream); margin-bottom: 5px; }\n#bgi-house-tool .field .hint { display: block; font-size: 0.77rem; line-height: 1.55; color: var(--soft); margin-bottom: 9px; }\n#bgi-house-tool .input-wrap { position: relative; display: block; }\n#bgi-house-tool .input-wrap .affix {\n  position: absolute; top: 50%; transform: translateY(-50%); font-size: 0.92rem;\n  color: var(--soft); pointer-events: none;\n}\n#bgi-house-tool .input-wrap.pre .affix { left: 15px; }\n#bgi-house-tool .input-wrap.post .affix { right: 15px; }\n#bgi-house-tool .field input, #bgi-house-tool .field select {\n  width: 100%;\n  background: rgba(13,27,42,0.55);\n  border: 1px solid var(--line);\n  border-radius: 10px;\n  padding: 13px 15px !important;\n  font-size: 1rem;\n  font-family: 'Inter', system-ui, sans-serif;\n  color: var(--cream);\n  outline: none;\n  transition: border-color 0.2s;\n  box-sizing: border-box !important;\n  -webkit-appearance: none;\n  appearance: none;\n}\n#bgi-house-tool .input-wrap.pre input { padding-left: 30px !important; }\n#bgi-house-tool .input-wrap.post input { padding-right: 34px !important; }\n#bgi-house-tool .field select {\n  background-image: linear-gradient(45deg, transparent 50%, rgba(245,240,232,0.5) 50%), linear-gradient(135deg, rgba(245,240,232,0.5) 50%, transparent 50%);\n  background-position: calc(100% - 20px) 22px, calc(100% - 15px) 22px;\n  background-size: 5px 5px, 5px 5px;\n  background-repeat: no-repeat;\n}\n#bgi-house-tool .field input:focus, #bgi-house-tool .field select:focus { border-color: var(--gold); }\n#bgi-house-tool .field input::placeholder { color: rgba(245,240,232,0.25); }\n#bgi-house-tool .progress-wrap { margin: 26px 0 14px; }\n#bgi-house-tool .progress-track { height: 3px; width: 100%; background: rgba(245,240,232,0.09); border-radius: 3px; overflow: hidden; }\n#bgi-house-tool .progress-fill { height: 100%; width: 0%; background: var(--gold); border-radius: 3px; transition: width 0.35s ease; }\n#bgi-house-tool .progress-label { font-size: 0.74rem; color: var(--soft); margin-top: 8px; letter-spacing: 0.04em; }\n#bgi-house-tool .err { font-size: 0.85rem; color: #E0A6A0; line-height: 1.6; margin-bottom: 14px; display: none; }\n#bgi-house-tool .err.show { display: block; }\n#bgi-house-tool .btn-calc {\n  width: 100%; background: var(--gold); color: #14212F; border: none; border-radius: 10px;\n  padding: 15px 24px !important; font-size: 0.95rem; font-weight: 600; letter-spacing: 0.03em;\n  font-family: 'Inter', system-ui, sans-serif; cursor: pointer; transition: background 0.2s, transform 0.15s;\n}\n#bgi-house-tool .btn-calc:hover { background: #D8B85E; transform: translateY(-1px); }\n#bgi-house-tool .assume { font-size: 0.76rem; line-height: 1.7; color: var(--soft); margin-top: 18px; }\n\n\/* \u2500\u2500 RESULTS \u2500\u2500 *\/\n#bgi-house-tool .results { display: none; }\n#bgi-house-tool .results.show { display: block; }\n#bgi-house-tool #hs-form.hide { display: none; }\n#bgi-house-tool .res-eyebrow {\n  display: block; font-size: 0.72rem; font-weight: 600; letter-spacing: 0.14em;\n  text-transform: uppercase; color: var(--gold); margin-bottom: 20px;\n}\n#bgi-house-tool .bignum {\n  font-family: 'Playfair Display', serif; font-size: clamp(2.4rem, 8vw, 3.4rem);\n  font-weight: 700; line-height: 1.05; color: var(--cream); margin-bottom: 6px;\n}\n#bgi-house-tool .bignum-label { font-size: 0.82rem; color: var(--dim); line-height: 1.6; margin-bottom: 22px; }\n#bgi-house-tool .meter { display: flex; gap: 6px; margin-bottom: 10px; }\n#bgi-house-tool .seg { flex: 1; height: 7px; border-radius: 4px; background: rgba(245,240,232,0.09); }\n#bgi-house-tool .seg.on { background: var(--gold); }\n#bgi-house-tool .meter-label { font-size: 0.74rem; color: var(--soft); letter-spacing: 0.04em; margin-bottom: 26px; }\n#bgi-house-tool .res-title {\n  font-family: 'Playfair Display', serif; font-size: clamp(1.5rem, 3.6vw, 2rem);\n  font-weight: 700; line-height: 1.22; color: var(--cream); margin-bottom: 10px;\n}\n#bgi-house-tool .res-sub {\n  font-family: 'Playfair Display', serif; font-style: italic; font-size: 1.06rem;\n  color: var(--gold); line-height: 1.5; margin-bottom: 26px;\n}\n#bgi-house-tool .breakdown {\n  display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px;\n  background: var(--line); border: 1px solid var(--line); border-radius: 12px;\n  overflow: hidden; margin-bottom: 28px;\n}\n#bgi-house-tool .bd-cell { background: rgba(13,27,42,0.55); padding: 16px 18px !important; }\n#bgi-house-tool .bd-val { font-family: 'Playfair Display', serif; font-size: 1.22rem; font-weight: 600; color: var(--cream); line-height: 1.2; margin-bottom: 4px; }\n#bgi-house-tool .bd-key { font-size: 0.72rem; letter-spacing: 0.06em; text-transform: uppercase; color: var(--soft); line-height: 1.4; }\n#bgi-house-tool .res-body { font-size: 0.95rem; line-height: 1.8; color: var(--dim); margin-bottom: 18px; }\n#bgi-house-tool .callout {\n  border-left: 3px solid var(--gold-dim); background: rgba(201,168,76,0.07);\n  padding: 16px 20px !important; border-radius: 0 10px 10px 0; margin-bottom: 28px;\n}\n#bgi-house-tool .callout p { font-size: 0.9rem; line-height: 1.75; color: var(--dim); }\n#bgi-house-tool .callout strong { color: var(--cream); font-weight: 600; }\n#bgi-house-tool .rule { height: 1px; background: var(--line); margin: 30px 0; }\n#bgi-house-tool .scripture-block {\n  background: rgba(123,158,135,0.09); border-left: 3px solid var(--sage);\n  padding: 24px 26px !important; border-radius: 0 12px 12px 0; margin-bottom: 30px;\n}\n#bgi-house-tool .scripture-text {\n  font-family: 'Playfair Display', serif; font-style: italic; font-size: 1.06rem;\n  line-height: 1.68; color: var(--cream); margin-bottom: 10px;\n}\n#bgi-house-tool .scripture-ref { font-size: 0.78rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--sage); margin-bottom: 14px; }\n#bgi-house-tool .scripture-angle { font-size: 0.92rem; line-height: 1.8; color: var(--dim); }\n#bgi-house-tool .product-card {\n  background: linear-gradient(145deg, rgba(201,168,76,0.13), rgba(201,168,76,0.04));\n  border: 1px solid rgba(201,168,76,0.3); border-radius: 14px;\n  padding: 28px 28px 26px !important; margin-bottom: 28px;\n}\n#bgi-house-tool .pc-label { display: block; font-size: 0.68rem; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--gold); margin-bottom: 12px; }\n#bgi-house-tool .pc-headline { font-family: 'Playfair Display', serif; font-size: 1.25rem; font-weight: 600; line-height: 1.34; color: var(--cream); margin-bottom: 12px; }\n#bgi-house-tool .pc-body { font-size: 0.92rem; line-height: 1.78; color: var(--dim); margin-bottom: 20px; }\n#bgi-house-tool .btn-product {\n  display: inline-block; background: var(--gold); color: #14212F; text-decoration: none;\n  border-radius: 9px; padding: 13px 24px !important; font-size: 0.9rem; font-weight: 600;\n  letter-spacing: 0.02em; transition: background 0.2s;\n}\n#bgi-house-tool .btn-product:hover { background: #D8B85E; color: #14212F; }\n#bgi-house-tool .share-row { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 16px; }\n#bgi-house-tool .btn-share {\n  flex: 1; min-width: 130px; background: transparent; border: 1px solid var(--line);\n  color: var(--dim); border-radius: 9px; padding: 11px 16px !important; font-size: 0.84rem;\n  font-weight: 500; font-family: 'Inter', system-ui, sans-serif; cursor: pointer; transition: border-color 0.2s, color 0.2s;\n}\n#bgi-house-tool .btn-share:hover { border-color: var(--gold); color: var(--cream); }\n#bgi-house-tool .btn-retake {\n  width: 100%; background: transparent; border: none; color: var(--soft);\n  padding: 10px 0 !important; font-size: 0.84rem; font-family: 'Inter', system-ui, sans-serif;\n  cursor: pointer; text-decoration: underline; text-underline-offset: 3px;\n}\n#bgi-house-tool .btn-retake:hover { color: var(--cream); }\n#bgi-house-tool .disclaimer { font-size: 0.76rem; line-height: 1.7; color: var(--soft); margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); }\n\n#bgi-house-tool .fade-in { animation: houseFade 0.38s ease forwards; }\n@keyframes houseFade { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }\n\n@media (max-width: 560px) {\n  #bgi-house-tool { padding: 26px 14px 48px; }\n  #bgi-house-tool .card { padding: 30px 22px 28px !important; }\n  #bgi-house-tool .breakdown { grid-template-columns: 1fr; }\n  #bgi-house-tool .share-row { flex-direction: column; }\n}\n@media (prefers-reduced-motion: reduce) {\n  #bgi-house-tool .fade-in { animation: none; }\n  #bgi-house-tool * { transition: none !important; }\n}\n<\/style>\n\n<div id=\"bgi-house-tool\">\n  <div class=\"tool-inner\">\n    <div class=\"card\">\n\n      <span class=\"eyebrow\">Home Affordability Calculator<\/span>\n      <h2 class=\"headline\">How Much House Can I Afford?<\/h2>\n      <p class=\"sub\">Put in your real numbers and see the price range the standard lending guideline actually supports &mdash; before a loan officer, a listing site, or a very confident relative tells you what it should be.<\/p>\n      <p class=\"meta\">5 fields &middot; instant &middot; no sign-up, no credit check, nothing saved<\/p>\n\n      <div id=\"hs-form\">\n\n        <div class=\"field\">\n          <label for=\"hs-income\">Annual household income<\/label>\n          <span class=\"hint\">Before taxes &mdash; everyone whose name would go on the loan.<\/span>\n          <span class=\"input-wrap pre\"><span class=\"affix\">$<\/span><input type=\"number\" id=\"hs-income\" inputmode=\"decimal\" min=\"0\" step=\"1000\" placeholder=\"90,000\"><\/span>\n        <\/div>\n\n        <div class=\"field\">\n          <label for=\"hs-debts\">Monthly debt payments<\/label>\n          <span class=\"hint\">Car loans, student loans, minimum credit card payments, child support. Not rent, groceries, or utilities.<\/span>\n          <span class=\"input-wrap pre\"><span class=\"affix\">$<\/span><input type=\"number\" id=\"hs-debts\" inputmode=\"decimal\" min=\"0\" step=\"25\" placeholder=\"450\"><\/span>\n        <\/div>\n\n        <div class=\"field\">\n          <label for=\"hs-down\">Cash for a down payment<\/label>\n          <span class=\"hint\">What you could actually put down today. Enter 0 if you&#8217;re starting from scratch.<\/span>\n          <span class=\"input-wrap pre\"><span class=\"affix\">$<\/span><input type=\"number\" id=\"hs-down\" inputmode=\"decimal\" min=\"0\" step=\"1000\" placeholder=\"30,000\"><\/span>\n        <\/div>\n\n        <div class=\"field\">\n          <label for=\"hs-rate\">Mortgage interest rate<\/label>\n          <span class=\"hint\">Roughly what lenders are quoting right now. Adjust it and watch how much it moves the number.<\/span>\n          <span class=\"input-wrap post\"><span class=\"affix\">%<\/span><input type=\"number\" id=\"hs-rate\" inputmode=\"decimal\" min=\"0\" max=\"25\" step=\"0.125\" value=\"6.5\"><\/span>\n        <\/div>\n\n        <div class=\"field\">\n          <label for=\"hs-term\">Loan length<\/label>\n          <span class=\"hint\">Most buyers choose 30 years. A shorter loan costs less overall but raises the monthly payment.<\/span>\n          <select id=\"hs-term\">\n            <option value=\"30\">30 years<\/option>\n            <option value=\"20\">20 years<\/option>\n            <option value=\"15\">15 years<\/option>\n          <\/select>\n        <\/div>\n\n        <div class=\"progress-wrap\">\n          <div class=\"progress-track\"><div class=\"progress-fill\" id=\"hs-progress\"><\/div><\/div>\n          <p class=\"progress-label\" id=\"hs-progress-label\">0 of 3 required fields filled<\/p>\n        <\/div>\n\n        <p class=\"err\" id=\"hs-err\"><\/p>\n        <button type=\"button\" class=\"btn-calc\" onclick=\"hsCalc()\">Show my price range<\/button>\n\n        <p class=\"assume\">How it works: the calculator uses the 28\/36 guideline most lenders lean on &mdash; a housing payment up to 28% of gross monthly income, and total debt payments up to 36%. It assumes property taxes and homeowners insurance together run about 1.6% of the home price per year. HOA dues, mortgage insurance, and closing costs are not included.<\/p>\n      <\/div>\n\n      <div class=\"results\" id=\"hs-results\"><\/div>\n\n    <\/div>\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  var TI_RATE = 0.016;\n  var CTA_URL = 'https:\/\/bgodinspired.kit.com\/27e17be1e6?utm_source=wordpress&utm_medium=tool&utm_campaign=faith-for-everyday-life&utm_content=how-much-house-can-i-afford';\n\n  function money(n){\n    n = Math.round(n);\n    if (!isFinite(n)) n = 0;\n    return '$' + String(n).replace(\/\\B(?=(\\d{3})+(?!\\d))\/g, ',');\n  }\n  function el(id){ return document.getElementById(id); }\n  function num(id){\n    var v = parseFloat((el(id).value || '').toString().replace(\/,\/g, ''));\n    return isFinite(v) ? v : NaN;\n  }\n\n  function updateProgress(){\n    var filled = 0;\n    ['hs-income','hs-debts','hs-down'].forEach(function(id){\n      var v = (el(id).value || '').trim();\n      if (v !== '' && isFinite(parseFloat(v)) && parseFloat(v) >= 0) filled++;\n    });\n    el('hs-progress').style.width = Math.round((filled \/ 3) * 100) + '%';\n    el('hs-progress-label').textContent = filled + ' of 3 required fields filled';\n  }\n\n  function affordability(gmi, debts, down, rate, years){\n    var maxPay = Math.min(0.28 * gmi, 0.36 * gmi - debts);\n    var months = years * 12;\n    var mr = rate \/ 100 \/ 12;\n    var f = mr > 0 ? mr \/ (1 - Math.pow(1 + mr, -months)) : 1 \/ months;\n    if (maxPay <= 0) return { maxPay: maxPay, price: 0, loan: 0, pi: 0, ti: 0, piti: 0, f: f };\n    var price = (maxPay + down * f) \/ (f + TI_RATE \/ 12);\n    if (price < down) price = Math.min(down, maxPay * 12 \/ TI_RATE);\n    var loan = Math.max(0, price - down);\n    var pi = loan * f;\n    var ti = price * TI_RATE \/ 12;\n    return { maxPay: maxPay, price: price, loan: loan, pi: pi, ti: ti, piti: pi + ti, f: f };\n  }\n\n  var VERSES = {\n    'not-yet': [\n      { t: 'Prepare thy work without, and make it fit for thyself in the field; and afterwards build thine house.', r: 'Proverbs 24:27', a: 'This is an ancient instruction about sequence, and it lands strangely well on a mortgage calculator. Get the field producing first, then build the house on it. It is not a rule against wanting a home. It is an observation that a house built before the ground under it is ready becomes a burden rather than a shelter.' },\n      { t: 'For which of you, intending to build a tower, sitteth not down first, and counteth the cost, whether he have sufficient to finish it?', r: 'Luke 14:28', a: 'Jesus asks this as if the answer is obvious, and it is. Sitting down and counting is the wise move, not the discouraging one. You just did the counting. What came back was hard, but it was honest, and honest is the only place anything real gets built from.' },\n      { t: 'And let us not be weary in well doing: for in due season we shall reap, if we faint not.', r: 'Galatians 6:9', a: 'Notice what this does not promise: a fast season. It promises a due one. The gap between the work and the harvest is where most people quit, and this verse exists precisely because that gap is exhausting. Where you are today is a season, not a sentence.' }\n    ],\n    'debt-bound': [\n      { t: 'The rich ruleth over the poor, and the borrower is servant to the lender.', r: 'Proverbs 22:7', a: 'No moralizing here, just a flat description of how borrowing works. The lender gets a say in your future. That is the whole mechanic, and it is exactly what the number above is showing you: payments you agreed to years ago are quietly voting on the house you can buy now.' },\n      { t: 'Owe no man any thing, but to love one another: for he that loveth another hath fulfilled the law.', r: 'Romans 13:8', a: 'Read the second half before the first half stings. The goal is not a spotless balance sheet for its own sake. It is having something left to give. Debt is costly mostly because it quietly spends tomorrow before tomorrow arrives.' },\n      { t: 'And God is able to make all grace abound toward you; that ye, always having all sufficiency in all things, may abound to every good work.', r: '2 Corinthians 9:8', a: 'The word to sit with is sufficiency. Not abundance, not excess &mdash; enough, and enough aimed at something. It is a quietly radical target in a market where the standard question is how much more you could be approved for.' }\n    ],\n    'trimmed': [\n      { t: 'But godliness with contentment is great gain.', r: '1 Timothy 6:6', a: 'Contentment gets treated as the consolation prize for people who could not afford the upgrade. This verse calls it gain &mdash; an asset, something you hold. It is the one line item on this page that no interest rate can move.' },\n      { t: 'He that loveth silver shall not be satisfied with silver; nor he that loveth abundance with increase: this is also vanity.', r: 'Ecclesiastes 5:10', a: 'Written by a man who had everything and ran the experiment anyway. His finding was that the appetite grows at exactly the rate the supply does. Worth remembering on the day a number on a screen decides whether you feel behind.' },\n      { t: 'Take therefore no thought for the morrow: for the morrow shall take thought for the things of itself. Sufficient unto the day is the evil thereof.', r: 'Matthew 6:34', a: 'Jesus is not telling anyone to skip the planning &mdash; he told a different crowd to count the cost before building. He is telling them to stop carrying the weight of a day that has not shown up yet. Run the numbers. Then set them down.' }\n    ],\n    'clear-runway': [\n      { t: 'Take heed, and beware of covetousness: for a man\u2019s life consisteth not in the abundance of the things which he possesseth.', r: 'Luke 12:15', a: 'Jesus said this to a man who wanted help getting what was fairly his. Not a greedy man &mdash; a man with a legitimate claim. The warning was not that wanting things is wicked. It was that the size of what you hold and the size of your life are two unrelated measurements.' },\n      { t: 'Except the LORD build the house, they labour in vain that build it: except the LORD keep the city, the watchman waketh but in vain.', r: 'Psalm 127:1', a: 'This is not a promise that God will lower your interest rate. It is a claim about what actually holds a household together, written by someone who had built plenty and watched most of it not last. The mortgage buys the structure. Something else has to build the home inside it.' },\n      { t: 'Not that I speak in respect of want: for I have learned, in whatsoever state I am, therewith to be content.', r: 'Philippians 4:11', a: 'The word doing the work is learned. Paul is saying contentment was not his temperament, it was his training &mdash; and he wrote it from a prison cell, not a paid-off house. It is a skill, which means it is available to you at any price point on this page.' }\n    ]\n  };\n\n  var PROFILES = {\n    'not-yet': {\n      title: 'The Numbers Say Not Yet',\n      sub: 'Which is information, not a verdict.',\n      ctaHead: 'Waiting is a season, not a failure',\n      ctaBody: 'A page of numbers can make a hard stretch feel like a personal verdict. It is not. Once a week I send one short, practical piece of encouragement for exactly this kind of in-between season &mdash; steady, honest, no pressure and no pitch.'\n    },\n    'debt-bound': {\n      title: 'Your Debt Is Setting the Ceiling',\n      sub: 'The house number here is really a debt number.',\n      ctaHead: 'When the number in front of you is really a number behind you',\n      ctaBody: 'The most useful thing about this result is that it points at something you can actually change. Once a week I send one short piece of practical encouragement for the long, unglamorous work of getting free of what you already owe. Free, and easy to leave any time.'\n    },\n    'trimmed': {\n      title: 'Your Payments Are Trimming the Top',\n      sub: 'Close &mdash; but the car and the cards are taking a slice.',\n      ctaHead: 'The gap between what you can borrow and what you would sleep well owing',\n      ctaBody: 'Those two numbers are almost never the same, and nobody in the transaction is paid to tell you that. Once a week I send one short piece of practical encouragement for decisions like this one &mdash; the kind you make with real numbers and real limits. Free, no pressure.'\n    },\n    'clear-runway': {\n      title: 'Your Debt Is Not the Limit',\n      sub: 'Your income set this ceiling. Nothing else did.',\n      ctaHead: 'The number is not the hard part. Knowing what is enough is.',\n      ctaBody: 'You just found the top of your range. The harder question is the one no calculator answers: how much of it you actually want to use. Once a week I send one short piece of practical encouragement for questions like that one. Free, and easy to leave any time.'\n    }\n  };\n\n  function pick(arr){ return arr[Math.floor(Math.random() * arr.length)]; }\n\n  function hsCalc(){\n    var errEl = el('hs-err');\n    var income = num('hs-income');\n    var debts = num('hs-debts');\n    var down = num('hs-down');\n    var rate = num('hs-rate');\n    var years = parseInt(el('hs-term').value, 10) || 30;\n\n    if (!isFinite(income) || income <= 0) { errEl.textContent = 'Add an annual household income above $0 to see your range.'; errEl.className = 'err show'; return; }\n    if (!isFinite(debts) || debts < 0) debts = 0;\n    if (!isFinite(down) || down < 0) down = 0;\n    if (!isFinite(rate) || rate < 0) rate = 0;\n    if (rate > 25) rate = 25;\n    errEl.className = 'err';\n\n    var gmi = income \/ 12;\n    var r = affordability(gmi, debts, down, rate, years);\n    var rNoDebt = affordability(gmi, 0, down, rate, years);\n    var debtRatio = debts \/ gmi;\n\n    var key;\n    if (r.maxPay <= 0) key = 'not-yet';\n    else if (debtRatio > 0.18) key = 'debt-bound';\n    else if (debtRatio > 0.08) key = 'trimmed';\n    else key = 'clear-runway';\n\n    var p = PROFILES[key];\n    var v = pick(VERSES[key]);\n\n    var segs = key === 'not-yet' ? 0 : Math.max(1, Math.min(5, Math.round((r.maxPay \/ (0.28 * gmi)) * 5)));\n    var meterHtml = '';\n    for (var i = 0; i < 5; i++) meterHtml += '<div class=\"seg' + (i < segs ? ' on' : '') + '\"><\/div>';\n\n    var downUsed = Math.min(down, r.price);\n    var downPct = r.price > 0 ? (downUsed \/ r.price) * 100 : 0;\n    var payPct = (r.piti \/ gmi) * 100;\n    var gap = rNoDebt.price - r.price;\n\n    var html = '';\n    html += '<span class=\"res-eyebrow\">Your Estimated Range<\/span>';\n\n    if (key === 'not-yet') {\n      var over = Math.max(1, debts - 0.36 * gmi);\n      html += '<div class=\"bignum\">Not yet<\/div>';\n      html += '<p class=\"bignum-label\">On these numbers, the 28\/36 guideline leaves nothing for a house payment &mdash; your existing monthly debts already use the full 36% of gross income the rule allows.<\/p>';\n    } else {\n      html += '<div class=\"bignum\">' + money(r.price) + '<\/div>';\n      html += '<p class=\"bignum-label\">Estimated maximum home price with ' + money(downUsed) + ' down at ' + rate + '% over ' + years + ' years.<\/p>';\n    }\n\n    html += '<div class=\"meter\">' + meterHtml + '<\/div>';\n    html += '<p class=\"meter-label\">Breathing room within the 28% housing guideline<\/p>';\n\n    html += '<h3 class=\"res-title\">' + p.title + '<\/h3>';\n    html += '<p class=\"res-sub\">' + p.sub + '<\/p>';\n\n    if (key === 'not-yet') {\n      html += '<div class=\"breakdown\">';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + money(debts) + '<\/div><div class=\"bd-key\">Current monthly debt payments<\/div><\/div>';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + money(0.36 * gmi) + '<\/div><div class=\"bd-key\">The 36% ceiling on your income<\/div><\/div>';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + money(over) + '<\/div><div class=\"bd-key\">Monthly gap to close first<\/div><\/div>';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + money(rNoDebt.price) + '<\/div><div class=\"bd-key\">Same income, no monthly debts<\/div><\/div>';\n      html += '<\/div>';\n    } else {\n      html += '<div class=\"breakdown\">';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + money(r.piti) + '<\/div><div class=\"bd-key\">Estimated monthly payment<\/div><\/div>';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + money(r.loan) + '<\/div><div class=\"bd-key\">Mortgage amount<\/div><\/div>';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + downPct.toFixed(0) + '%<\/div><div class=\"bd-key\">Down payment<\/div><\/div>';\n      html += '<div class=\"bd-cell\"><div class=\"bd-val\">' + payPct.toFixed(0) + '%<\/div><div class=\"bd-key\">Of gross monthly income<\/div><\/div>';\n      html += '<\/div>';\n    }\n\n    \/\/ Body paragraph 1\n    if (key === 'not-yet') {\n      html += '<p class=\"res-body\">This is the least fun result the calculator gives, so here is exactly what it means and nothing more. Lenders generally cap all of your monthly debt payments &mdash; the house included &mdash; at about 36% of gross monthly income. Yours already sit at ' + Math.round(debtRatio * 100) + '% before a mortgage enters the picture. There is no arithmetic that fits a house payment into what is left, which is why the number came back as a word instead of a price.<\/p>';\n      html += '<p class=\"res-body\">Here is the part worth carrying out of this page. Roughly ' + money(over) + ' a month is what stands between you and the guideline having room again. That is a target, and targets are workable in a way that a vague sense of being behind never is. On the same income with those payments cleared, this calculator would show about ' + money(rNoDebt.price) + '. The house is not gone. It is standing behind the debt, in that order, the way it does for most people who eventually get there.<\/p>';\n    } else if (key === 'debt-bound') {\n      html += '<p class=\"res-body\">Two rules were competing for your number, and the debt rule won by a wide margin. The first caps a house payment at 28% of gross income. The second caps everything &mdash; house, car, cards, student loans &mdash; at 36%. Your existing payments take up ' + Math.round(debtRatio * 100) + '% of your income, which means more than half of the room the guideline allows was already spoken for before a mortgage was even discussed.<\/p>';\n      html += '<p class=\"res-body\">The clearest way to see it: on this exact income, with no monthly debt payments, the same calculator returns about ' + money(rNoDebt.price) + '. The difference &mdash; roughly ' + money(gap) + ' of house &mdash; is not a judgment on you. It is just the honest price tag on payments that were probably each reasonable on the day you agreed to them. And unlike your income, your rate, or the market, it is the one number on this page you have direct control over.<\/p>';\n    } else if (key === 'trimmed') {\n      html += '<p class=\"res-body\">Your monthly debts are modest, but they are not invisible. They are large enough that the 36% total-debt rule &mdash; not the 28% housing rule &mdash; is what set your ceiling. In plain terms: a car payment and a couple of minimums are quietly deciding part of what you can offer on a house, and most people never see that connection drawn out on a single screen.<\/p>';\n      html += '<p class=\"res-body\">Put a number on it. With no monthly debt payments and everything else identical, this calculator returns about ' + money(rNoDebt.price) + ' &mdash; roughly ' + money(gap) + ' more house. That is not an argument for panic-paying anything off tomorrow. It is just the exchange rate, stated plainly, so that if you decide to clear a balance before you shop you know exactly what that decision is worth.<\/p>';\n    } else {\n      html += '<p class=\"res-body\">This is the cleaner result. Your existing monthly payments are small enough that they never became the limiting factor &mdash; the 36% total-debt rule was not the wall you hit. Your number came straight off the 28% housing guideline, which is another way of saying your income, not your history, is what set this ceiling.<\/p>';\n      html += '<p class=\"res-body\">Worth being clear about what the number is and is not. It is a ceiling, not a target. The regret people report most often after buying is almost never that they bought too little house &mdash; it is that they bought right up to the edge of what they were approved for and then met the bills that do not appear on any calculator. Reassessed property taxes. A water heater in year two. Furniture for rooms they did not have before. The most house you can carry and the most house you would be glad you carried are rarely the same number.<\/p>';\n    }\n\n    \/\/ Callout\n    if (key === 'not-yet') {\n      html += '<div class=\"callout\"><p><strong>One thing worth checking before you take this personally:<\/strong> the guideline treats every monthly payment the same, whether it has four years left or four months. If a car loan or a card is close to being cleared, the honest picture a year from now can look very different from the one on this screen.<\/p><\/div>';\n    } else if (downPct < 20) {\n      html += '<div class=\"callout\"><p><strong>A number this estimate leaves out:<\/strong> at ' + downPct.toFixed(0) + '% down, most conventional loans add private mortgage insurance until you reach about 20% equity. That is typically another $30 to $70 a month for every $100,000 borrowed, and it comes out of the same payment ceiling &mdash; so the real-world range usually lands a little below the figure above.<\/p><\/div>';\n    } else {\n      html += '<div class=\"callout\"><p><strong>Where this estimate is likely to be conservative:<\/strong> at ' + downPct.toFixed(0) + '% down you clear the usual threshold for private mortgage insurance, so that cost is off the table. Property tax rates also vary enormously by county &mdash; the 1.6% assumption used here is a middle-of-the-road figure, and a lower-tax area would stretch the same payment further.<\/p><\/div>';\n    }\n\n    html += '<div class=\"rule\"><\/div>';\n\n    html += '<div class=\"scripture-block\">';\n    html += '<p class=\"scripture-text\">&ldquo;' + v.t + '&rdquo;<\/p>';\n    html += '<p class=\"scripture-ref\">&mdash; ' + v.r + '<\/p>';\n    html += '<p class=\"scripture-angle\">' + v.a + '<\/p>';\n    html += '<\/div>';\n\n    html += '<div class=\"product-card\">';\n    html += '<span class=\"pc-label\">Free Weekly Email &mdash; Faith For Everyday Life<\/span>';\n    html += '<h3 class=\"pc-headline\">' + p.ctaHead + '<\/h3>';\n    html += '<p class=\"pc-body\">' + p.ctaBody + '<\/p>';\n    html += '<a class=\"btn-product\" href=\"' + CTA_URL + '\" rel=\"noopener\">Get the free weekly email &rarr;<\/a>';\n    html += '<\/div>';\n\n    html += '<div class=\"share-row\">';\n    html += '<button type=\"button\" class=\"btn-share\" onclick=\"hsShareX()\">Share on X<\/button>';\n    html += '<button type=\"button\" class=\"btn-share\" onclick=\"hsShareFB()\">Share on Facebook<\/button>';\n    html += '<\/div>';\n    html += '<button type=\"button\" class=\"btn-retake\" onclick=\"hsReset()\">Change my numbers<\/button>';\n\n    html += '<p class=\"disclaimer\">This is a general estimate built on a widely used lending guideline &mdash; not financial advice, and not a pre-approval. It assumes taxes and insurance of about 1.6% of the home price per year and excludes HOA dues, mortgage insurance, maintenance, and closing costs. A lender looking at your credit, your documented income, and your local tax rates will produce a different number, and theirs is the one that counts.<\/p>';\n\n    var out = el('hs-results');\n    out.innerHTML = html;\n    out.className = 'results show fade-in';\n    el('hs-form').className = 'hide';\n    if (out.scrollIntoView) out.scrollIntoView({ behavior: 'smooth', block: 'start' });\n  }\n\n  function hsReset(){\n    var out = el('hs-results');\n    out.className = 'results';\n    out.innerHTML = '';\n    el('hs-form').className = '';\n    var top = document.getElementById('bgi-house-tool');\n    if (top && top.scrollIntoView) top.scrollIntoView({ behavior: 'smooth', block: 'start' });\n  }\n\n  function shareText(){\n    return 'I just found out what house price my numbers actually support \u2014 free calculator, no sign-up, no credit check.';\n  }\n  function hsShareX(){\n    window.open('https:\/\/twitter.com\/intent\/tweet?text=' + encodeURIComponent(shareText()) + '&url=' + encodeURIComponent(window.location.href), '_blank', 'noopener');\n  }\n  function hsShareFB(){\n    window.open('https:\/\/www.facebook.com\/sharer\/sharer.php?u=' + encodeURIComponent(window.location.href), '_blank', 'noopener');\n  }\n\n  ['hs-income','hs-debts','hs-down'].forEach(function(id){\n    var node = el(id);\n    if (node) node.addEventListener('input', updateProgress);\n  });\n  updateProgress();\n\n  window.hsCalc = hsCalc;\n  window.hsReset = hsReset;\n  window.hsShareX = hsShareX;\n  window.hsShareFB = hsShareFB;\n})();\n<\/script>\n\n\n\n<h2 class=\"wp-block-heading\">Common Questions About How Much House You Can Afford<\/h2>\n\n\n\n<p><strong>What is the 28\/36 rule, and why does this calculator use it?<\/strong><br>It is the shorthand most mortgage lenders have used for decades, and it comes in two halves. The first says your total monthly housing payment \u2014 mortgage principal, interest, property taxes and homeowners insurance \u2014 should stay at or below 28% of your gross monthly income, meaning income before taxes come out. The second says all of your monthly debt payments added together, the house included, should stay at or below 36%. That second half is the one people forget, and it is usually the one that decides the answer. The calculator above runs both rules, takes whichever gives the smaller number, and works backward from that monthly payment to a home price. It is a guideline rather than a law \u2014 individual lenders and loan programs stretch it in both directions \u2014 but it is the reference point almost everyone in the transaction is quietly working from.<\/p>\n\n\n\n<p><strong>How much house can I afford on a $75,000 salary?<\/strong><br>There is no single answer, and anyone who gives you one has skipped the two variables that matter most: what you already owe each month, and what you can put down. On $75,000 a year, gross monthly income is $6,250, which puts the 28% housing ceiling at $1,750 a month. If you carry no other monthly debt payments and can put $30,000 down at a 6.5% rate on a 30-year loan, that payment supports a home price somewhere in the neighborhood of $260,000. Add a $450 car payment and a $150 student loan payment, though, and the 36% total-debt rule takes over: the ceiling drops to $1,650, and so does the price. Change the interest rate by a single point and the number moves again by tens of thousands. This is exactly why an estimate built on your own figures is worth more than any salary-based rule of thumb.<\/p>\n\n\n\n<p><strong>Does a bigger down payment mean I can afford more house?<\/strong><br>Yes, though not in the way most people expect. Your down payment does not raise the monthly payment ceiling \u2014 that number is set by your income and your existing debts, and cash in the bank does not change it. What a larger down payment does is shrink the loan you need in order to reach the same price, so every extra dollar you put down adds roughly a dollar to the top of your range, and a bit more besides, because a smaller loan also means less interest inside the same monthly payment. There is one threshold worth knowing about. Below about 20% down, most conventional loans add private mortgage insurance, an extra monthly cost that eats into the very payment ceiling you are working with. Crossing that 20% line removes the cost entirely, which is why the jump from 19% to 20% is worth more than the jump from 9% to 10%.<\/p>\n\n\n\n<p><strong>Do car payments and student loans really change how much house I can buy?<\/strong><br>More than almost anything else you control. Under the 36% half of the rule, every monthly obligation you already carry comes straight off the top of what is available for a house payment, dollar for dollar. A $500 car payment is not just $500 a month \u2014 at a 6.5% rate over 30 years, it is roughly $65,000 to $70,000 of home price you can no longer reach. Two such payments, and the gap runs past $130,000. One detail catches people out: the guideline counts the size of the payment, not how long you have left on it. A loan with four months remaining weighs exactly the same as one with four years. If a balance is close to cleared, the picture a few months from now can look meaningfully different from the picture today, which is worth knowing before you decide you are further away than you are.<\/p>\n\n\n\n<p><strong>Is what a lender approves the same as what I should actually spend?<\/strong><br>Almost never, and the difference is where a lot of quiet stress lives. A pre-approval answers one question: how much a lender is willing to risk, based on documents and ratios. It does not know that you would like to keep travelling, or that your car is eight years old, or that one income in the household might pause for a while. It also leaves out costs that arrive with the keys \u2014 maintenance, higher utility bills, a property tax reassessment after the sale, and the furniture for rooms you did not have before. A useful habit is to treat the approval number as the ceiling and then decide separately, on purpose, how far below it you actually want to live. The calculator above gives you that ceiling in about a minute, using your own income, debts and down payment, with no sign-up and no credit check.<\/p>\n\n","protected":false},"excerpt":{"rendered":"<p>Home Affordability Calculator How Much House Can I Afford? Put in your real numbers and see the price range the standard lending guideline actually supports &mdash; before a loan officer, a listing site, or a very confident relative tells you what it should be. 5 fields &middot; instant &middot; no sign-up, no credit check, nothing [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_wp_convertkit_post_meta":{"form":"-1","landing_page":"0","tag":"0","restrict_content":"0"},"footnotes":""},"class_list":["post-105894","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages\/105894","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/comments?post=105894"}],"version-history":[{"count":1,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages\/105894\/revisions"}],"predecessor-version":[{"id":105895,"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/pages\/105894\/revisions\/105895"}],"wp:attachment":[{"href":"https:\/\/bgodinspired.com\/index.php\/wp-json\/wp\/v2\/media?parent=105894"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}