Skip to content

Underwriting

Deterministic deal math on top of valuation and the rent model. Every response carries the full assumptions block and model_version (p0a-2026.07).

  • Flip: offer = ARV × 0.75 − rehab (the 75% rule).
  • BRRRR: offer = ARV × LTV − rehab (default LTV 75%) — the refinance pulls everything back out.
  • Suggested offer = max of the two; discount_pct = % below ask it sits.

Known limit: at the default LTV 75%, the two solvers return the same number (offer_flip == offer_brrrr). P5 makes them genuinely different — flip solved with modeled exit-DOM carry and a profit floor, BRRRR solved backward from min(LTV × ARV, DSCR-supportable loan) with a cash-left-in target, plus a develop/teardown solver (land residual) from the P4.5 zoning layer.

Assumption Default
Rehab $175,000 SFH · $62,500 per unit (2–4 unit)
Interest rate / cap rate 7.0% / 7.0%
Opex 30% of gross
LTV / hard money 75% / 10.5%
Hold (flip) 6 months
Renovated rent multiplier 1.5×
Sale costs 8% of ARV

Carry = (85% of price × 10.5% hard money + effective tax × price) × months/12 + $300/mo. Flip net = 0.92 × ARV − price − rehab − carry, computed at ask and at the suggested offer. The flat 30% opex and this carry stub are known blind spots: P4 itemizes insurance from the climate layer, P5 recalibrates rehab against actual invoices (cosmetic/medium/gut × $/sqft × assessor floor area, with Chicago adders).

NOI = renovated rents × 12 × (1 − 30% opex) − taxes (effective rate × (price + rehab)). Debt service = 30-year amortization on ARV × 75% at 7.0%. Also returned: cash-left-in, cash-on-cash, and the maximum loan at DSCR 1.15.

economics_factor = 0.35 + 0.65 × (0.5 × offer_headroom + 0.5 × best_exit) → range 0.35–1.0

Offer headroom maps offer/ask 0.60→0 and 1.05→1. Flip exit scores margin/ARV against a 15% full-marks bar; hold exit maps DSCR 0.85→0 and 1.25→1; a deal needs only one working exit. The factor multiplies the deal score, so terrible deal math collapses any tract score — a great location can no longer rescue a deal that doesn’t pencil. Shipped in p0-2026.06.

Develop/teardown solver on zoned capacity (P4.5); Monte Carlo distributional underwriting with headline sentences like “72% chance this pencils at ask; 94% at $412k” (P5); Deal Critic — an adversarial pass over the distribution, risk flags, and comp dispersion, as both a UI action and an MCP tool (P5). Nothing in the AI layer invents numbers.