LearnModelsAccountsNet Worth
Sign in
← Learn

GUIDES

How the Home Model works

Every input, every formula, and every number on the chart — explained completely.

11 min read

Introduction

The Home Model answers one question: when can you afford to buy?

It connects three things that most people track separately — your savings trajectory, your debt paydown timeline, and the equity tied up in your existing home — into a single timeline. The output is a date, plus a chart that shows exactly how the math gets you there.

The model takes no opinion on whether you should buy. It just runs the math against your inputs and shows you when the numbers line up.

The inputs

Inputs are grouped into four sections, in the order they appear in the tool.

Right now

Three fields describing your savings today:

  • Current savings balance — what you have set aside for a down payment right now. The starting point of the simulation.
  • Monthly savings contribution — what you're putting away each month during the debt paydown period. Deliberate phrasing: this is the contribution rate before any debt-related cash flow is freed up.
  • Annual return on savings — the rate your savings earn while sitting (HYSA, brokerage, etc.). The model converts this to a monthly rate and compounds it on every step.

Debt paydown

Two fields describing the bridge from where you are now to a debt-free state:

  • Months until debt-free — how many months from today before all current debt obligations are paid off. You can pull this from the Debt Paydown model or estimate it.
  • Monthly cash flow unlocked — the total monthly payment that's freed when those debts clear. After the debt-free month, your savings contribution increases to this amount.

The model does not simulate the debt paydown itself. It treats the debt period as a fixed-length runway with a fixed contribution, then steps up the contribution once that runway ends.

Your current home

Three fields plus a calculated readout:

  • Estimated sale price — what you'd realistically sell for today.
  • Remaining mortgage balance — the principal still owed.
  • Selling costs — agent fees plus closing costs, as a percentage of sale price. The default of 6% reflects typical full-service agent commissions. This is a percentage of sale price, not equity, because that's how agent commissions and most title fees actually scale.

The model computes net equity from these three. Equity does not earn returns inside the simulation — it's treated as a single capital event at closing, applied once you reach the goal.

Target home

Four fields plus a calculated readout:

  • Target home price — sticker price of the home you'd buy at today's market.
  • Down payment — the percentage you intend to put down (20% by default).
  • Closing costs — buyer's closing costs as a percentage of purchase price (2% default). Typically includes loan origination fees, title insurance, escrow, recording fees, and prepaid taxes/insurance held at closing.
  • Annual home price appreciation — expected yearly growth of home prices. Used only to project a moving goal post; if you set it to 0, the appreciation line disappears from the chart.

The math: savings growth

The simulation walks forward one month at a time. On each step the running balance compounds and a contribution is added.

The monthly rate is the annual return divided by 12:

monthlyRate = annualReturn / 12

While you are still paying off debt — that is, for every month m where m ≤ debtFreeMonth:

balance = balance × (1 + monthlyRate) + currentMonthlySavings

Once you cross the debt-free month — every month m where m > debtFreeMonth:

balance = balance × (1 + monthlyRate) + monthlyContributionAfterDebt

That's the entire compounding model. Two phases, same formula, different contribution amount. The phase change at debtFreeMonth is the kink you see in the savings curve on the chart — the slope steepens because monthly cash flow jumps from currentMonthlySavings to monthlyContributionAfterDebt.

The simulation runs until the balance crosses the savings threshold or until 600 months elapse (50 years), whichever comes first.

The math: home equity

Net equity from selling your current home:

netEquity = max(0, currentHomeValue − remainingMortgage − currentHomeValue × sellingCostPercent)

Three things happen in that formula:

  1. Subtract what you still owe on the mortgage from what you'd sell for.
  2. Subtract the agent fees and closing costs, taken as a percentage of the sale price (not the equity).
  3. Floor at zero, because negative equity isn't useful capital — if you owe more than you'd net, your contribution at closing is just zero.

Selling costs scale with sale price because that's how agent commissions and most transactional fees actually work. A 6% commission on a $500,000 sale is $30,000 regardless of how much mortgage is left on the loan.

The math: down payment goal

The total cash you need at the closing table for the new home:

totalCashNeeded = targetHomePrice × downPaymentPercent + targetHomePrice × closingCostPercent

Down payment plus buyer's closing costs. Closing costs in the model means buyer-side fees only: loan origination, title insurance, escrow, recording, and prepaid items like the first year of homeowner's insurance and a few months of property tax held in escrow. It does not include moving costs or post-purchase reserves — those are separate decisions.

The savings threshold

The model assumes equity from your current home arrives as a single capital event at closing. So your savings only need to cover the gap between total cash needed and net equity:

savingsThreshold = max(0, totalCashNeeded − netEquity)

The simulation watches the savings balance specifically, not balance + equity. The goal is hit on the first month where:

balance ≥ savingsThreshold

That's why the chart shows two teal lines — one for cash savings (the line the simulation actually evaluates) and one for savings + equity (what you'd have at closing). The dot lands where the savings line crosses the threshold.

The chart: what every line means

The chart plots months on the x-axis (years labeled Yr 1, Yr 2, etc.) and dollars on the y-axis. Each line is a different number from the simulation.

Savings (solid teal)

balance — the cash savings balance, month by month. This is the line the goal condition is checked against. It's the strict result of the compounding formula above, with the kink at the debt-free month where monthly contribution steps up.

Savings + equity (dashed teal)

withEquity = balance + netEquity — the same savings line, shifted up by your fixed home equity. Equity is treated as a constant addition at every month rather than something that grows, because the model treats the home sale as a single event, not an investment that compounds.

This line exists to show your total capital position if you sold the current home today. The savings line shows the strict simulation; this line shows the realistic picture at closing.

Goal today (horizontal reference)

A horizontal dashed line at totalCashNeeded. This is the cash required to buy the target home at today's price. Where the savings + equity line crosses this horizontal line is when you'd be able to close — at today's prices.

Appreciated goal (dashed orange)

This is the moving target. It plots the cash required if home prices keep rising:

appreciatedGoal(m) = targetHomePrice × (1 + monthlyAppreciation)^m × (downPaymentPercent + closingCostPercent)

monthlyAppreciation = annualAppreciation / 12. This line slopes upward because the down payment and closing costs are both percentages of price, so as the home appreciates, your required cash grows with it.

The orange dot marks the first month where your savings + equity catches up to the appreciated goal. If the dot is far to the right of the savings goal dot, appreciation is moving the target faster than you're moving toward it. If the dot is missing from the chart, the model couldn't find a crossing within its window.

Debt-free vertical marker

A vertical dashed line at debtFreeMonth, labeled "Debt-free". This is the month your monthly contribution steps up from currentMonthlySavings to monthlyContributionAfterDebt. You'll see the savings curve change slope at this line.

The goal dot (teal)

A solid teal dot on the savings + equity line at the buy month. Its y-coordinate is totalSavedAtGoal + netEquity — your savings at the goal month, plus equity. Reading horizontally back to the y-axis tells you total capital at closing; reading vertically down to the x-axis tells you when.

The stat cards

Below the buy date, the model shows seven stat cards. Each is derived directly from the simulation result.

Total saved at goal

totalSavedAtGoal — the savings balance on the month the goal condition is first satisfied. This is what your accounts hold at closing, before the equity transfer.

Equity from home sale

equityContribution — same as netEquity from the equity formula above. It does not change over time in the model.

Interest earned on savings

phase1Months = min(debtFreeMonth, goalMonth)
phase2Months = max(0, goalMonth − debtFreeMonth)
totalCashContributions = currentMonthlySavings × phase1Months + monthlyContributionAfterDebt × phase2Months
interestEarnedAtGoal = totalSavedAtGoal − currentSavingsBalance − totalCashContributions

The portion of totalSavedAtGoal that came from compound growth, not contributions. If you set the annual return to zero, this card reads $0 — every dollar you have is a dollar you put in.

Extra per month to buy 1 year sooner

How much more you'd need to contribute in the post-debt phase to pull the buy date in by 12 months. The model finds this iteratively:

  1. Set targetMonth = goalMonth − 12.
  2. Binary search the post-debt monthly contribution over the range [0, 1,000,000].
  3. For each candidate contribution, run the simulation with a hard stop at targetMonth and check whether the balance reaches savingsThreshold by then.
  4. Repeat for 60 iterations to converge on the minimum contribution that lets the goal hit at targetMonth.

The card shows the difference: solverResult − monthlyContributionAfterDebt, floored at zero.

If the goal is already at or before the debt-free month, the card reads . There's no post-debt window to accelerate.

Home price at buy date

appreciatedHomePrice = targetHomePrice × (1 + monthlyAppreciation)^goalMonth

What the target home is projected to cost on the month you'd buy, given the appreciation rate.

Revised cash needed

appreciatedCashNeeded = appreciatedHomePrice × (downPaymentPercent + closingCostPercent)

Total cash required at closing if home prices follow the appreciation rate. Compare this to totalCashNeeded (the today price) to see how much further the target moved.

Extra needed vs today's price

appreciationGap = max(0, appreciatedCashNeeded − totalCashNeeded)

The dollar gap between the today goal and the appreciated goal at your buy month. This is the additional capital you'd need if the appreciation assumption holds. If the gap is zero, your trajectory effectively covers the appreciation — the card label changes to read "Your trajectory covers appreciation."

These three appreciation cards only render when annualAppreciationPct > 0.

What the model does not account for

Stating these plainly so you know what the chart isn't telling you:

  • Sequence-of-returns risk on savings. The annual return is treated as a deterministic rate compounded monthly. Real returns are volatile; a 4.5% average can mean −15% one year and +25% the next. The model gives you the smooth-line answer.
  • Sequence-of-returns risk on home prices. Appreciation is also a smooth deterministic rate. Housing markets can fall, plateau, or spike well above the long-run average for years at a time.
  • Tax implications. Capital gains exclusions on a primary residence sale, mortgage interest deduction, property tax deduction, and state-level taxes are all outside the model.
  • Mortgage qualification. The model says nothing about whether you'd actually qualify for a mortgage on the target home — that depends on debt-to-income ratios, credit, and lender-specific underwriting that aren't part of the math here.
  • Inflation. All dollar figures are nominal (not adjusted for inflation). Wages, contribution amounts, and the today goal don't rise with CPI in the simulation. Home appreciation is the only growth term.
  • Interest on the existing mortgage during the simulation. Remaining mortgage balance is treated as a fixed number until you sell. It doesn't pay down month-by-month inside the model.
  • Reserves and moving costs. totalCashNeeded is closing-table cash. Moving expenses, post-purchase reserves, and any cosmetic work on the new home are separate.

A note on the math

Every number on the page comes from a formula above. The model is deterministic — same inputs produce the same outputs, every time, with no hidden parameters or randomness. That's a feature, not a limitation: the goal isn't to predict the future, it's to give you a transparent baseline you can sanity-check against and adjust as your situation changes.

If a number on the chart looks off, you can trace it back to a formula. If a formula looks wrong, the source is open. That's the philosophy: deterministic models with visible assumptions are more honest than black-box projections that hide the math behind a single confident-looking number.