From multifamily-tools
Comprehensive multifamily underwriting — post-contract deep due diligence analysis. Verifies all financials against T12, bank statements, and Schedule E actuals. Runs 3-scenario NOI (Floor/Base/Upside), full valuation matrix, DSCR at every offer price, post-sale tax reassessment, formal Risk Matrix across 4 categories, 30-item due diligence checklist, 25+ hard seller questions, and a gated Go/No-Go verdict. Use when: underwrite this apartment deal, run full multifamily due diligence, verify this deal, go deep on this property, we are under contract analyze everything, run the comprehensive underwriting, multifamily DD, deep dive this apartment deal, or any time an investor is under contract or approaching LOI acceptance on a multifamily property and needs full verification before going hard on contingencies. Also use when someone uploads a T12, Schedule E, rent roll, or bank statements and asks you to verify the numbers.
How this skill is triggered — by the user, by Claude, or both
Slash command
/multifamily-tools:mf-underwriterThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill runs after an LOI is accepted and the investor is under contract. Its job is to verify everything the screener estimated, find every risk that could hurt the investor, and produce a definitive Go/No-Go verdict before contingencies are released.
This skill runs after an LOI is accepted and the investor is under contract. Its job is to verify everything the screener estimated, find every risk that could hurt the investor, and produce a definitive Go/No-Go verdict before contingencies are released.
Design philosophy: Skeptical first, actionable second. This skill does NOT exist to validate a decision already made. It exists to find every assumption that could cost money, every risk that could kill the investment, and every number that needs confirmation before capital is deployed. If the deal is good, the numbers will prove it. If they don't hold up, the investor walks away before losing real money.
The skill cannot output GO until the Risk Matrix is complete. Two or more unresolved HIGH risks = Yellow or Red verdict, regardless of how good the NOI looks.
Before running any analysis, load this client's saved multifamily investment preferences from Cloud Brain. These calibrate all thresholds and verdicts to their specific buy box.
Search Cloud Brain: search_notes with query "multifamily preferences". Also search for screener analysis: search_notes with "[property name or address] mf screen" to pull Phase 0 screener output if available.
If preferences ARE found:
Display a quick confirmation and proceed:
📋 Underwriting calibrated to your preferences — Min cash flow: $[X]/mo | Target cap: [X–X]% | Min DSCR: [X]x | Class: [X] | Markets: [X]
If screener analysis IS found in memory:
📎 Screener found: Conservative NOI: $[X] | Viability score: [X]/10 | Recommended offer: $[X] | Pursuit decision: [X] | Top flags: [list] Using screener estimates as starting baseline — all figures will be verified against bank statements and Schedule E.
If NO preferences found — run setup first:
"Before we begin underwriting, I need your investment criteria so every threshold and verdict reflects your actual buy box:"
Save to memory: write_note → brain/preferences/multifamily-preferences.md
| Hardcoded Default | Replace With |
|---|---|
| DSCR thresholds (1.20x / 1.25x) | Client's stated minimum DSCR |
| Cash flow flags ($500/month) | Client's stated monthly minimum |
| CapEx reserve by class | Weight toward client's preferred asset class |
| Cap rate range for valuation matrix | Weight toward client's target cap rate range |
| GO/NO-GO verdict thresholds | Calibrated to client's risk tolerance |
| Offer price recommendations | Anchored to client's target cap rate |
Parse all available documents. For any document not yet provided, add it to the Due Diligence Checklist with HIGH priority.
Tier 1 — Critical (analysis cannot be completed without these):
Tier 2 — Required for Full Analysis:
Tier 3 — Due Diligence Period Items:
Build a structured property profile from all available inputs. Note confidence level for each data point: Verified / Estimated / Unknown.
Revenue is verified in 6 steps. Every step is mandatory.
Compare 24 months of bank deposits to T-12 revenue line by line.
Compare bank statement revenue to Schedule E Line 3 (Rents Received).
From the rent roll:
For every unit on the rent roll, verify:
For every non-rent income line:
Plot revenue by year (use 3 years if available):
VERIFIED GROSS REVENUE = $[final verified amount] List every assumption and every unverified figure with its dollar impact.
Apply ALL expense lines. For every line not on the T-12, add it and explain why. An expense ratio below 35% (tenant-pays-utilities) is impossible for a fully normalized property.
| Expense Line | Calculation Method | Default If Unknown | Flag If |
|---|---|---|---|
| Property Management | 9% of Verified EGI (if self-managed) | 9% of EGI | Missing from T-12 |
| Property Taxes | Verify against tax bills; calculate post-sale reassessment | Pull from county assessor | Using seller's pre-sale bill |
| Insurance | Actual bound policy declaration page | $1,000–$1,500/unit/year | Soft quote / ACV policy |
| Maintenance & Repairs | Actual + 15% first-year cushion | $700/unit/year minimum | Below $500/unit |
| CapEx Reserve | Client's preferred class: A=$300 · B=$400 · C=$500/unit/yr | Client's class default | Missing entirely |
| Landlord Utilities | Actual bills if landlord-pays | Estimate from utility comps | Excluded when landlord pays |
| Landscaping | Actual invoices | $200–$400/unit/year | Suspiciously low |
| Admin / Accounting / Legal | Actual | $300–$500/unit/year | Missing |
| Pest Control | Actual | $75–$150/unit/year | Missing |
| Misc / Contingency | 3% of verified gross revenue | 3% always | Never remove |
| Ratio | Scenario | Verdict |
|---|---|---|
| Below 30% | Tenant-pays-utilities | Impossible — add missing lines |
| 30–40% | Tenant-pays-utilities, Class A | Possible if truly new construction |
| 40–50% | Tenant-pays-utilities, Class B/C | Normal |
| 50–65% | Landlord-pays-utilities | Normal |
| Above 65% | Any | Flag — operational inefficiency or severe deferred maintenance |
TOTAL NORMALIZED EXPENSES = $[amount] ([X]% expense ratio)
Always produce three NOI figures. Never blend scenarios. Never use Upside NOI as the offer basis.
THREE-SCENARIO NOI — [Property Name]
SCENARIO | FLOOR (Conservative) | BASE (Stabilized) | UPSIDE (Value-Add)
----------------------|----------------------|----------------------|----------------------
Revenue Basis | 3-yr avg OR bank | Verified current | All units at market
| statements (lower) | run-rate actuals | rent, stabilized
Vacancy Used | [actual low yr] % | [current physical] % | 5% stabilized
Gross Revenue | $[amount] | $[amount] | $[amount]
Total Normalized Exp | ($[amount]) | ($[amount]) | ($[amount])
NET OPERATING INCOME | $[amount] | $[amount] | $[amount]
Expense Ratio | [X]% | [X]% | [X]%
USE CASE:
- Floor: Stress testing, financing worst-case, walk-away trigger
- Base: Recommended offer price, primary underwriting, DSCR calculations
- Upside: Strategic planning only — never for offer pricing or financing
Identify the top 3 drivers of the gap between Floor and Upside NOI.
Build the full matrix using all three NOI scenarios. Assign cap rate range BEFORE showing numbers.
| Factor | Cap Rate Adjustment |
|---|---|
| Class A, major MSA, strong demand | Start at 4.5–6.0% |
| Class B, suburban / secondary market | Start at 6.5–8.0% |
| Class C, tertiary / value-add | Start at 8.0–10.0% |
| High-crime submarket | Add 1.0–2.0% |
| FEMA flood zone | Add 0.5–1.5% |
| Deferred maintenance evident | Add 0.5–1.0% |
| Rent control jurisdiction | Add 0.5–1.5% |
| No CapEx done in 10+ years | Add 1.0% |
State the selected cap rate range and justify in 2–3 sentences. Note where client's target cap rate range falls.
VALUATION MATRIX — [Property Name]
Cap Rate Range: [X]% – [X]% | Client's Target: [X]% – [X]% | Rationale: [justification]
| [low cap]% | [mid cap]% | [high cap]%
----------------------|--------------|--------------|-------------
FLOOR NOI ($[X]) | $[X÷low] | $[X÷mid] | $[X÷high]
BASE NOI ($[X]) | $[X÷low] | $[X÷mid] | $[X÷high]
UPSIDE NOI ($[X]) | $[X÷low] | $[X÷mid] | $[X÷high]
CONTRACT PRICE ($[X]) | [cap%] | [cap%] | [cap%]
Price Per Unit @ Contract: $[contract ÷ units]
Price Per SF @ Contract: $[contract ÷ GBA]
Revenue Multiple @ Contract: $[contract ÷ verified revenue]x
State the recommended offer range based on Base NOI and the client's target cap rate range. Flag if the contract price falls outside client's target range.
Model DSCR at three price points: (1) Contract price, (2) Recommended offer, (3) Lowest viable price.
Scenario A — Assumed Existing Loan + Seller Carry
Scenario B — New Conventional (25% Down)
Scenario C — Agency (Fannie/Freddie, if eligible)
DSCR ANALYSIS
Price Point | Contract ($[X]) | Recommended ($[X]) | Floor ($[X])
----------------|-----------------|--------------------|--------------
Scenario A DSCR | [X]x | [X]x | [X]x
Scenario B DSCR | [X]x | [X]x | [X]x
Scenario C DSCR | [X]x | [X]x | [X]x
Client Min DSCR | [X]x ✅/❌ | [X]x ✅/❌ | [X]x ✅/❌
Flag any DSCR below client's minimum OR below 1.0x. Flag DSCR 1.0–1.20x: "Below conventional minimum. Requires seller carry, larger down payment, or price reduction."
Also model True Cash Flow after all debt service and compare to client's minimum monthly cash flow target.
Every identified risk is entered here. The overall deal rating is calculated from this matrix.
FINANCIAL RISKS
| Risk | Severity | Finding | Mitigation |
|---|---|---|---|
| Revenue actuals < T-12 stated | HIGH/MED/LOW | [Finding] | [Action] |
| Physical vacancy > stated vacancy | HIGH/MED/LOW | [Finding] | [Action] |
| No management fee on T-12 | HIGH/MED/LOW | [Finding] | [Action] |
| CapEx reserve missing | HIGH/MED/LOW | [Finding] | [Action] |
| Insurance soft-quoted / ACV only | HIGH/MED/LOW | [Finding] | [Action] |
| Post-sale tax reassessment impact | HIGH/MED/LOW | [Finding] | [Action] |
| Maintenance below $500/unit/year | HIGH/MED/LOW | [Finding] | [Action] |
| Only 1 year of financials available | HIGH/MED/LOW | [Finding] | [Action] |
| "Other Income" unverified / owner-dependent | HIGH/MED/LOW | [Finding] | [Action] |
| Schedule E income < bank deposits | HIGH/MED/LOW | [Finding] | [Action] |
| NOI below level needed to meet client's DSCR minimum | HIGH/MED/LOW | [Finding] | [Action] |
LEGAL & REGULATORY RISKS
| Risk | Severity | Finding | Mitigation |
|---|---|---|---|
| Rent control / stabilization ordinance | HIGH/MED/LOW | [Finding] | Research city ordinance |
| Zoning non-conforming / grandfathered | HIGH/MED/LOW | [Finding] | Verify rebuild rights |
| Code violations or open permits | HIGH/MED/LOW | [Finding] | Pull permit history |
| Lease expirations clustered near close | HIGH/MED/LOW | [Finding] | Review all lease dates |
| Month-to-month tenants (>30% of units) | HIGH/MED/LOW | [Finding] | Review state tenant laws |
| Undisclosed easements or deed restrictions | HIGH/MED/LOW | [Finding] | Title review |
| Eviction history / problem tenants | HIGH/MED/LOW | [Finding] | Request 3-year history |
PHYSICAL & INFRASTRUCTURE RISKS
| Risk | Severity | Finding | Mitigation |
|---|---|---|---|
| Roof age unknown / near end of life | HIGH/MED/LOW | [Finding] | Roof inspection |
| Aluminum wiring (pre-1973 construction) | HIGH/MED/LOW | [Finding] | Licensed electrical inspection |
| Galvanized plumbing (pre-1970 construction) | HIGH/MED/LOW | [Finding] | Plumbing inspection |
| HVAC systems aged / deferred | HIGH/MED/LOW | [Finding] | HVAC inspection |
| FEMA flood zone (anything other than X) | HIGH/MED/LOW | [Finding] | Flood insurance cost |
| Phase I Environmental not completed | HIGH/MED/LOW | [Finding] | Order immediately |
| ADA non-compliance | HIGH/MED/LOW | [Finding] | ADA audit + cost estimate |
| Parking inadequate for unit count | HIGH/MED/LOW | [Finding] | Local code check |
| Deferred exterior / structural maintenance | HIGH/MED/LOW | [Finding] | Licensed inspector |
MARKET & DEMAND RISKS
| Risk | Severity | Finding | Mitigation |
|---|---|---|---|
| Outside client's target markets | HIGH/MED/LOW | [Finding] | Confirm client buy box applies |
| Crime score above 60 (scale of 100) | HIGH/MED/LOW | [Finding] | NeighborhoodScout research |
| Population declining in submarket | HIGH/MED/LOW | [Finding] | Census trend analysis |
| Single employer driving local demand | HIGH/MED/LOW | [Finding] | Employer diversification research |
| New supply (units under construction nearby) | HIGH/MED/LOW | [Finding] | Local permit research |
| Rent control legislation pending | HIGH/MED/LOW | [Finding] | City council agenda research |
| Property on market >180 days / prior contract failure | HIGH/MED/LOW | [Finding] | Ask broker for history |
| Rating | Criteria | Recommendation |
|---|---|---|
| 🟢 GREEN | 0 HIGH risks; financials verified; DSCR meets client's minimum | GO HARD — release contingencies |
| 🟡 YELLOW | 1–2 HIGH risks, resolvable; DSCR near client's minimum; some unverified | GO WITH CONDITIONS — specify exactly what must clear |
| 🔴 RED | 3+ HIGH risks unresolved; DSCR below client's minimum; material misrepresentation | DO NOT GO HARD — specify what moves this to Yellow |
OVERALL DEAL RATING: [GREEN / YELLOW / RED]
Generate a deal-specific, prioritized DD checklist. Every HIGH risk from the Risk Matrix becomes a DD item.
| # | Item | Request From | Status | Priority |
|---|---|---|---|---|
| 1 | 24 months bank statements — verify revenue | Seller | ☐ | CRITICAL |
| 2 | Schedule E (last 2 years) — cross-check income | Seller / CPA | ☐ | CRITICAL |
| 3 | Current rent roll — all tenants, rates, lease dates, deposits | Seller | ☐ | CRITICAL |
| 4 | Executed leases for all occupied units | Seller | ☐ | CRITICAL |
| 5 | Post-sale property tax assessment — county assessor | County | ☐ | CRITICAL |
| 6 | Hard-bound insurance quote (RCV, not ACV) | Insurance broker | ☐ | CRITICAL |
| 7 | Title report — liens, judgments, easements | Title company | ☐ | CRITICAL |
| 8 | Existing loan statement — balance, rate, term, assumability | Lender | ☐ | CRITICAL |
| 9 | Full building inspection — roof, HVAC, plumbing, electrical | Licensed inspector | ☐ | CRITICAL |
| 10 | Phase I Environmental Site Assessment | Environmental firm | ☐ | CRITICAL |
| 11 | 3-year capital improvement history | Seller | ☐ | HIGH |
| 12 | Maintenance and repair logs (24 months) | Seller | ☐ | HIGH |
| 13 | Utility bills — landlord-paid items only (12 months) | Seller | ☐ | HIGH |
| 14 | Rent payment history — delinquency rate | Seller / PM | ☐ | HIGH |
| 15 | Crime score and trend research — submarket | NeighborhoodScout | ☐ | HIGH |
| 16 | Rent control / tenant protection ordinance verification | City/County | ☐ | HIGH |
| 17 | Zoning compliance certificate | City/County | ☐ | HIGH |
| 18 | Certificate of Occupancy for all buildings | City/County | ☐ | HIGH |
| 19 | Open permits or code violations check | City/County | ☐ | HIGH |
| 20 | Roof inspection and age verification | Roofing contractor | ☐ | HIGH |
| 21 | Electrical inspection (aluminum wiring risk if pre-1973) | Licensed electrician | ☐ | HIGH |
| 22 | Plumbing inspection (galvanized risk if pre-1970) | Licensed plumber | ☐ | HIGH |
| 23 | Insurance claims history (5 years) | Seller / insurance broker | ☐ | MEDIUM |
| 24 | FEMA flood map confirmation | FEMA / surveyor | ☐ | MEDIUM |
| 25 | Vacancy history (3 years) | Seller / PM | ☐ | MEDIUM |
| 26 | Security deposits held — full schedule | Seller | ☐ | MEDIUM |
| 27 | Vendor contracts and any assignable agreements | Seller | ☐ | MEDIUM |
| 28 | Any pending litigation — seller or property | Seller / title search | ☐ | MEDIUM |
| 29 | ADA compliance status | ADA consultant | ☐ | LOW-MEDIUM |
| 30 | Market rent comps — current (3rd party) | Appraisal or PM survey | ☐ | MEDIUM |
Add any deal-specific items from the Risk Matrix.
Generate 25 hard, specific questions tailored to this deal.
Financial Questions (always required):
Legal & Regulatory Questions (always required): 11. Is this property in a jurisdiction with any form of rent control, rent stabilization, or just-cause eviction protection? 12. Are all current operating permits current and have you confirmed they are transferable to a new owner? 13. Are any tenants classified as legal tenants with formal eviction protections under state law? 14. Is the property's current use specifically permitted by right, or does it operate under a grandfathered status or conditional use permit? 15. Have you ever received a notice of violation, code enforcement action, or government inquiry related to this property? 16. Are there any pending or threatened legal actions involving the property or any tenant?
Physical & Infrastructure Questions (tailor to building age): 17. What is the age and condition of each roof? Have any been replaced, and do you have documentation? 18. (If pre-1973): Has the electrical been inspected for aluminum wiring? 19. (If pre-1970): What type of plumbing is in place — copper, galvanized, PVC? Has it been inspected or replaced? 20. When was the HVAC last serviced or replaced in each unit? Do you have service records? 21. Has a Phase I Environmental Assessment ever been conducted? Are you aware of any underground storage tanks, contamination, or prior industrial use?
Operational Questions: 22. Why are you selling now? What would you do differently if you were keeping this property for another 5 years? 23. Is the property currently self-managed or third-party managed? What does your management routine look like? 24. Which, if any, tenants would you describe as problematic, and what is the eviction history for the past 3 years? 25. What do you know about the vacant units — how long have they been vacant, what is the cause, and what does it cost to make them rent-ready?
This section is always the last thing generated. Never produce the verdict before the Risk Matrix is complete.
GO / NO-GO VERDICT — [Property Name]
OVERALL RISK RATING: [GREEN / YELLOW / RED]
VERIFIED NOI: $[Base NOI] (Floor: $[X] | Upside: $[X])
RECOMMENDED OFFER RANGE: $[X] – $[X]
CONTRACT PRICE: $[X] — [above/below/within] recommended range
DSCR AT RECOMMENDED PRICE: [X]x ([Scenario A/B/C]) vs. client minimum of [X]x ✅/❌
TRUE MONTHLY CASH FLOW: $[X]/month vs. client minimum of $[X]/month ✅/❌
THE 3 BIGGEST RISKS:
1. [Most critical — specific, quantified where possible]
2. [Second risk]
3. [Third risk]
THE 3 BIGGEST OPPORTUNITIES:
1. [Most compelling upside — specific, quantified]
2. [Second opportunity]
3. [Third opportunity]
RECOMMENDED NEXT STEPS:
1. [Immediate action]
2. [Second action]
3. [Third action]
Timeline: [X days to complete verification before DD deadline]
VERDICT:
[GO HARD — Release contingencies. All key risks resolved. Numbers verified. Meets client's DSCR and cash flow minimums.]
[GO WITH CONDITIONS — Release contingencies on [specific items]. Hold on [specific items] until [action].]
[RENEGOTIATE — Verified NOI of $[X] supports a maximum price of $[X] at [cap]% cap to meet client's criteria. Current contract price of $[X] requires a reduction of $[amount].]
[WALK — [Specific reason]. The deal as structured cannot meet client's minimum criteria at any reasonable price because [specific finding].]
Deliver the complete report in this sequence:
Always save the analysis to: brain/deal-analyses/[property-slug]-mf-underwrite-[YYYY-MM-DD].md
| Metric | Conservative | Standard | Strong |
|---|---|---|---|
| Cap rate (Class A major MSA) | 6.0%+ | 4.5–6.0% | Below 4.5% |
| Cap rate (Class B suburban) | 8.0%+ | 6.5–8.0% | Below 6.5% |
| Cap rate (Class C tertiary) | 10.0%+ | 8.0–10.0% | Below 8.0% |
| Expense ratio (tenant pays utilities) | 48%+ | 38–48% | Below 38% |
| Expense ratio (landlord pays utilities) | 60%+ | 50–60% | Below 50% |
| CapEx reserve (Class A) | $300/unit/yr | $350/unit/yr | — |
| CapEx reserve (Class B) | $400/unit/yr | $450/unit/yr | — |
| CapEx reserve (Class C) | $500/unit/yr | $600/unit/yr | — |
| Maintenance minimum | $500/unit/yr | $700/unit/yr | $900/unit/yr |
| Management fee (3rd party) | 10% EGI | 8–9% EGI | 6–8% EGI |
| Physical vacancy (stabilized) | 8%+ | 5–8% | Below 5% |
| DSCR (conventional minimum) | 1.20x | 1.25x | 1.40x+ |
| DSCR (agency Fannie/Freddie) | 1.25x | 1.30x | 1.40x+ |
| True monthly CF/unit | $50 | $150–$250 | $400+ |
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub owenmecham/mbg --plugin multifamily-tools