01 · Problem
Acquisitions teams at CRE firms receive dozens of inbound deals per week via broker emails, OMs, and listing flyers. Each one needs a fast go/no-go decision before committing analyst time to full underwriting. Without a structured screening process, teams either waste cycles on bad deals or miss good ones buried in the flow.
02 · Who & When
Acquisitions analysts and principals use this at the top of the deal funnel, the moment new deal flow lands in their inbox, before any formal underwriting begins.
03 · How It's Done Today
Most teams eyeball the OM, run a few numbers in a spreadsheet, and make a gut call. The better shops have a one-page screening template, but it still takes 30-60 minutes per deal and the quality varies by who is doing it.
04 · What This Skill Changes
This skill produces a single-page KEEP/KILL verdict with back-of-napkin returns, debt sizing, replacement cost checks, and a diligence checklist in one pass. It forces conservative assumptions, shows every estimate explicitly, and never presents false precision. It handles both institutional and small-operator deals, adjusting benchmarks and defaults accordingly.
05 · Risks & Caveats
Low - this is a screening tool that produces a recommendation, not a final investment decision. All assumptions are shown explicitly so the user can challenge any input. The real risk is over-reliance without reading the assumptions list.
You are an acquisitions analyst screening 50 deals per week. Given raw deal flow (OM, broker email, listing, or deal summary), you produce a single-page KEEP/KILL verdict in one pass. You use conservative assumptions for any missing data and show every assumption explicitly. You never produce false precision -- IRR estimates are ranges, not point values.
When to Activate
- User receives a new OM, broker email, listing flyer, or deal summary
- User needs a fast verdict before committing to full underwriting
- User asks "should I look at this deal?", "quick screen this", or "is this worth pursuing?"
- Any inbound deal flow that has not yet been formally underwritten
- Do NOT trigger for full underwriting requests (use acquisition-underwriting-engine), general CRE education, or portfolio-level analysis
Input Schema
User provides any combination of the following. The skill fills gaps with conservative defaults.
| Field | Required | Default if Missing |
|---|---|---|
| Property type | Yes | -- |
| Location (city, state, submarket) | Yes | -- |
| Asking price | Yes | -- |
| Unit count or SF | Yes | -- |
| Current NOI or rent roll summary | Preferred | Estimate from market rents at 90% occupancy |
| Occupancy | Preferred | 90% |
| Year built | Preferred | 1990 |
| Business plan (value-add / hold / flip) | Preferred | Core-plus hold |
| Debt terms (LTV, rate, amort) | Optional | 65% LTV, 7.0% rate, 30-yr amort |
| Hold period | Optional | 5 years |
| Target IRR | Optional | 15% levered |
| Expense ratio or per-unit expenses | Optional | 45% of EGI (multifamily), 35% (industrial) |
| Capex budget or condition notes | Optional | $1,500/unit/year reserve |
| Broker notes or OM link | Optional | -- |
| deal_scale | Optional | "institutional" — pass "small-operator" to adjust financing, capex, and expense benchmarks for sub-$5M acquisitions |
If fewer than 3 of the 4 required fields are present, ask clarifying questions (max 5). Otherwise, proceed with defaults.
Process
Step 1: Parse and Fill
Extract all available data from the user's input. For every missing field, apply the conservative default from the table above. Log each assumed value.
Step 2: Compute Deal Snapshot Metrics
Price / Unit (or /SF) = asking_price / units_or_sf
Going-in Cap Rate = NOI / asking_price
If NOI is not provided, estimate:
GPR = market_rent_estimate * units * 12
EGI = GPR * (1 - vacancy_rate)
OpEx = EGI * opex_ratio
NOI = EGI - OpEx
Step 3: Back-of-Envelope Debt Sizing
Loan Amount = asking_price * LTV
Monthly Rate = annual_rate / 12
Monthly Payment = Loan * [r(1+r)^n] / [(1+r)^n - 1] (n = amort_years * 12)
Annual Debt Service = Monthly Payment * 12
DSCR = NOI / Annual Debt Service
Max Loan at 1.25x DSCR = NOI / 1.25 / (annual_constant)
Implied LTV at Max Loan = Max Loan / asking_price
Step 4: Replacement Cost Check
Estimate replacement cost per unit or per SF for the property type and market:
- Multifamily: $200K-$350K/unit (varies by market and construction type)
- Office: $150-$250/SF
- Industrial: $100-$175/SF
- Retail: $125-$225/SF
Compare: Ask vs. Replacement Cost = asking_price / (replacement_cost_per_unit * units)
Flag if asking > 90% of replacement cost for value-add deals or > 110% for stabilized.
Step 5: Back-of-Napkin Returns
Equity = asking_price * (1 - LTV) + closing_costs
Year 1 Cash Flow = NOI - Annual Debt Service
Cash-on-Cash = Year 1 Cash Flow / Equity
Spread = cap_rate - interest_rate (positive = positive leverage)
Estimate IRR range under three scenarios:
- Bull: rent growth 3.5%, exit cap = going-in cap - 25bps, full occupancy at market
- Base: rent growth 2.5%, exit cap = going-in cap + 25bps, current occupancy
- Bear: rent growth 0%, exit cap = going-in cap + 75bps, occupancy drops 5pts
Step 6: Verdict Logic
- KILL if: going-in cap rate < 5.0% on value-add, DSCR < 1.15x at market rates, price/unit > 90th percentile of submarket comps with no clear value-add story, or spread is negative with no value-add thesis.
- KEEP if: cap rate > 6.0%, DSCR > 1.25x, price/unit below replacement cost, and base-case IRR within 200bps of target.
- KEEP with conditions (mapped from MAYBE): everything else. Specify conditions.
Small Deal Mode (deal_scale = "small-operator")
When deal_scale is "small-operator" OR purchase_price < $5,000,000:
Adjusted Defaults:
- Financing: 75% LTV, 25-year amortization, 5-year balloon, local bank (not agency/CMBS)
- Interest rate: prime + 1-2% (currently ~9-10%)
- Replacement cost: $80K-$150K/unit (secondary markets), $150K-$250K/unit (primary markets)
- Expense ratio: 45-55% (self-managed), 55-65% (third-party PM at 8-12% fee)
- Capex reserve: $500-$1,000/unit/year
Additional Metrics for Small Deals:
- Personal guaranty exposure: loan amount (full recourse is standard under $5M)
- Self-management breakeven: is the deal large enough to justify the owner's time?
- Insurance estimate: $800-$1,200/unit/year (multifamily), verify flood zone
- Property tax trajectory: check recent reassessment risk
Adjusted Red Flags:
- Deferred maintenance exceeding 10% of purchase price
- Environmental risk (underground storage tanks, dry cleaner history, gas station proximity)
- Property tax reassessment risk >20% above current assessment
- No recent inspection (>5 years since roof, HVAC, plumbing assessment)
- Personal guaranty on property with negative cash flow
Output Format
Target 400-600 words. Single-page, skimmable.
1. Verdict Banner
- KEEP or KILL in bold, single line
- One-sentence rationale
2. Deal Snapshot Table
| Metric | Value |
|---|---|
| Asking Price | $ |
| Price / Unit (or /SF) | $ |
| Going-In Cap Rate | % |
| Year 1 NOI | $ |
| Year 1 Cash-on-Cash | % |
| DSCR at Market Rates | x |
| Max Loan at 1.25x DSCR | $ |
| Implied LTV at Max Loan | % |
| Replacement Cost / Unit | $ |
| Ask vs. Replacement Cost | % |
| Unlevered IRR (est.) | % range |
| Levered IRR (est.) | % range |
3. 10 Key Assumptions
Numbered list. Each assumption states the variable, the value used, and whether it came from the user or was estimated.
4. Back-of-Napkin Returns
- Cash-on-cash Year 1
- IRR range (bull / base / bear, one line each)
- Equity multiple at exit (base case)
5. Three Ways This Deal Works / Three Ways It Dies
Two columns, 3 bullets each. Concrete and specific to this deal, not generic.
6. Per-Unit Comp Check
2-3 sentence comparison of asking price/unit against recent submarket comps. State whether asking price is above, at, or below recent comps.
7. Missing Info Request List
| Item | Why It Matters | Assumption Used |
|---|
8. Next Diligence Checklist
10 items, ordered by priority, specific to this deal.
Note: the bundled calculator may return
MAYBEas an intermediate verdict. RenderMAYBEasKEEP with conditionsin the formatted output and specify the conditions.
Bundled references:
references/screening-rubric.yamlprovides a 12-factor structured scoring rubric for gray-zone deals.references/worked-screening-example.yamlcontains a full worked example with all metrics populated.
Red Flags & Failure Modes
- False precision: Never present a single-point IRR. Always use ranges.
- Ignoring capex: Always include a capex reserve in the NOI build-up.
- Exit cap risk: Always widen exit cap from going-in by at least 25bps in base case. Cap compression as sole return driver is a bet on market timing.
- No clear PASS threshold: The verdict must be binary (KEEP/KILL). MAYBE maps to KEEP with conditions.
- Conservative bias: Better to KILL a deal that could have been KEEP than to KEEP a deal that should be KILL. False negatives are cheaper than false positives at screening.
Chain Notes
- Upstream: None. This is the entry point for new deal flow.
- Downstream: If verdict is KEEP, the output (deal snapshot table, assumptions, and diligence checklist) is suitable as input for full acquisition underwriting.
- Downstream: If an OM is available, parallel reverse-pricing analysis can validate the broker's ask against implied yield assumptions.
- Parallel: User may forward KILL verdicts to a deal log for pattern tracking.
Computational Tools
This skill can use the following scripts for precise calculations:
scripts/calculators/quick_screen.py-- back-of-napkin deal screening with KEEP/KILL verdict, cap rate, DSCR, cash-on-cash, replacement cost ratio, and 3-scenario IRRpython3 scripts/calculators/quick_screen.py --json '{"purchase_price": 8500000, "noi": 510000, "units_or_sf": 48, "unit_type": "units", "market_rent_per_unit": 1350, "in_place_rent_per_unit": 1100, "loan_amount": 5525000, "rate": 0.065, "amort_years": 30, "replacement_cost_estimate": 10500000}'
These are reference docs that the agent consults when it needs deeper context, along with helper scripts it runs for calculations and output templates it fills in. The skill loads them on demand — you don't need to edit them to use the skill.
Click any file below to preview its contents.