Skip to content

Underwriting

Deterministic deal math on top of valuation and the rent model. Every response carries accepted assumptions, model_version, underwrite_version, and an input hash (p5v4-2026.07).

Exact economics exist only when property-specific evidence is current and approved for a point. If valuation is range-only, hedonic, area context, stale, or suppressed, the response sets exact ARV deal math, offers, profit, NOI, DSCR, cash-on-cash, maximum loan, cashflow projection, and property strategy scores to null, with an unscored_reason.

All current calibration segments are range/suppress, so the production inventory must remain without actionable point economics until a same-version calibration promotion clears the model gates.

When a future valuation earns point support, flip, BRRRR, and hold ceilings remain separate policy outputs. The displayed suggested offer is capped at the analyzed asking/scenario price and can never recommend paying above it. A ceiling is not a bid, appraisal, or guarantee.

Price and legal unit count must be explicit or come from a matching listing record; tract medians and phantom duplex defaults are forbidden. The consumer app currently exposes only controls the endpoint honors: rehab budget, interest rate, and units. Every edit replaces the full response atomically so old and new assumptions cannot appear together.

The engine accepts typed, bounded assumptions for financing type, rate, down-payment fraction, hold months, rehab, rent override, management, HOA, occupancy, scope, strategy, and weights. Unknown fields, duplicate query fields, invalid booleans, non-finite values, invalid percentages, and non-integer units are rejected before calculation.

NOI excludes debt service and itemizes vacancy, management, maintenance/capital reserves, insurance, owner-paid utilities, jurisdictional compliance reserve, property tax, and HOA. DSCR is NOI divided by annual debt service. Cash-on-cash is annual pre-tax cash flow divided by invested cash. The response distinguishes as-is contract rent from stabilized post-renovation rent.

Flip economics include the registered acquisition and disposition percentages, hard-money interest, points, property carry, and scope/market holding period. Buy-and-hold includes the conventional down payment, acquisition costs, rehab, and amortized debt service. BRRRR deducts acquisition and bridge holding costs plus a registered 2% refinance-cost scenario from refinance proceeds before reporting cash left in or capital recycled. House-hack PITI finances the registered FHA up-front mortgage-insurance premium into the note and includes annual mortgage insurance. The five-year cash-flow view expires temporary post-gut-rehab reserve relief after year three instead of extending it forever.

Important limits remain explicit. Property tax is a predictive scenario, not a verified closing bill; reassessment timing and exemptions can differ. Rehab is a rough scenario estimate and does not add a hidden contingency—users should put their own contractor quote plus contingency into the rehab override. Timed IRR stays null unless a user supplies or records a real exit value and date; the engine will not invent appreciation to manufacture one. Transaction percentages and financing terms are scenario assumptions, not lender/title quotes. Point-supported output is still a screen, never full deal approval.

Tract opportunity is location context, never a property score. Property strategy scores are computed only after the terminal evidence gate and their own hard economic gates. Risk remains a separate checklist score and never rescues or boosts opportunity. Income/crime proxy fields do not affect public opportunity, property risk, or recommendations.

The full dependency-ordered remediation sequence is tracked in the repository development plan. Nothing in the AI layer is permitted to invent missing numeric inputs.