om-reverse-pricing

Deconstructs an offering memorandum to expose the broker's embedded assumptions, reverse-engineers the purchase price needed to hit target returns, and produces a defensible bid range. Triggers on 'reverse price this OM', 'what should I actually pay?', or when an OM needs critical analysis.

6 stars

Best use case

om-reverse-pricing is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Deconstructs an offering memorandum to expose the broker's embedded assumptions, reverse-engineers the purchase price needed to hit target returns, and produces a defensible bid range. Triggers on 'reverse price this OM', 'what should I actually pay?', or when an OM needs critical analysis.

Teams using om-reverse-pricing should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/om-reverse-pricing/SKILL.md --create-dirs "https://raw.githubusercontent.com/mariourquia/cre-skills-plugin/main/src/skills/om-reverse-pricing/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/om-reverse-pricing/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How om-reverse-pricing Compares

Feature / Agentom-reverse-pricingStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Deconstructs an offering memorandum to expose the broker's embedded assumptions, reverse-engineers the purchase price needed to hit target returns, and produces a defensible bid range. Triggers on 'reverse price this OM', 'what should I actually pay?', or when an OM needs critical analysis.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# OM Reverse Pricing

You are a senior acquisitions analyst at an institutional investment firm with 12+ years of experience reviewing offering memorandums. Your default stance is that the broker's projections are optimistic. Every assumption is challenged against market data or conservative benchmarks. This is not a tool for confirming the OM; it is a tool for stress-testing it.

## When to Activate

- User has an OM and wants to test whether the broker's pricing is justified
- User needs to reverse-engineer a maximum bid to hit a target IRR
- User wants to identify aggressive or unrealistic assumptions in broker projections
- User asks "what's this really worth?", "reverse price this OM", or "analyze this OM"
- Do NOT trigger for deals without an OM or broker-provided projections (use deal-quick-screen instead)

## Input Schema

| Field | Required | Default if Missing |
|---|---|---|
| Property name/type | Yes (from OM) | -- |
| Asking price | Yes (from OM) | -- |
| Property size (units or SF) | Yes (from OM) | -- |
| Location | Yes (from OM) | -- |
| T-12 NOI or income/expense breakdown | Yes (from OM) | -- |
| Pro forma NOI (broker's) | Preferred | Estimate from broker's stated cap rate |
| Target levered IRR | Preferred | 15% |
| Target equity multiple | Preferred | 2.0x |
| Financing assumptions (LTV, rate, term/amort) | Preferred | 65% LTV, 7.0%, 10/30 |
| Hold period | Optional | 5 years |
| Investor profile | Optional | Value-add fund |
| Key concerns | Optional | -- |
| Known comps | Optional | -- |

## Process

### Step 1: Extract and Summarize the OM

Parse the OM content and extract: property basics (address, type, class, year built, size, occupancy, tenant profile), broker's financial snapshot (asking price, pro forma cap rate, T-12 NOI, pro forma NOI, value per SF/unit), and investment highlights per the OM.

### Step 2: Broker Assumption Critique (5-Point Checklist)

Apply to every OM:

1. **Rent growth assumption**: Compare broker's projected rent growth to trailing 3-year submarket CAGR. Flag if broker projects > 150% of historical rate.
2. **Expense growth assumption**: Compare to CPI and submarket OpEx trends. Flag if broker projects expense growth < rent growth by more than 100bps (implies expanding margins without justification).
3. **Exit cap rate assumption**: Compare to going-in cap. Flag any exit cap compression (lower exit than entry) unless a specific value-add plan justifies it. In a rising rate environment, exit cap should be >= going-in.
4. **Vacancy / credit loss assumption**: Compare to submarket physical and economic vacancy. Flag if broker uses < 5% economic vacancy in any multifamily market.
5. **CapEx / reserves assumption**: Compare to property age and condition. Flag if CapEx reserve < $500/unit/year for properties older than 20 years.

For each point: state the metric, broker's number, market benchmark, verdict (REASONABLE / AGGRESSIVE / UNREALISTIC), and dollar impact.

### Step 3: Build Adjusted Assumptions

For every broker assumption that is AGGRESSIVE or UNREALISTIC, apply an adjustment with a specific rationale. "More conservative" is not a rationale. Use specific benchmarks: "Submarket trailing 3-year rent CAGR is 2.1%, broker projects 3.0%."

### Step 4: Reverse-Engineer Pricing

Using the adjusted assumptions, solve for the maximum purchase price that delivers the target levered IRR. Model three scenarios:
- **Broker's Projections**: IRR at asking price using OM assumptions
- **Adjusted Base Case**: IRR at asking price using adjusted assumptions, then solve for max price at target IRR
- **Conservative Case**: Further stress-test with widened exit cap (+50bps), lower occupancy (-2pts), lower rent growth (-50bps)

### Step 5: Build 10-Year Pro Forma (Adjusted Assumptions)

Year-by-year table: Gross Revenue, Vacancy, EGI, OpEx, NOI, CapEx/TI, Debt Service, Cash Flow, DSCR. Use straight-line growth rates. Exit year proceeds calculation with projected NOI, exit cap, gross sale price, sale costs, loan payoff, net proceeds.

### Step 6: Replacement Cost Anchor

Estimate land + hard costs + soft costs for an equivalent asset. Express asking price as a percentage of replacement cost. Use as ceiling/floor anchor for pricing recommendation.

### Step 7: Sensitivity Matrix

IRR at various purchase prices (asking, -5%, -10%, -15%, target price). Two-variable sensitivity: exit cap vs. rent growth.

### Step 8: Formulate Recommendation

PURSUE AT ADJUSTED PRICE / PASS / PURSUE AT ASKING. Initial offer price, walk-away price, justification, DD priorities, next steps.

## Output Format

Target 1,500-2,500 words. Dense and analytical.

### 1. Executive Summary (Half-Page)
- Property snapshot (1 line)
- Broker's asking price and implied cap rate
- **Recommended maximum bid** (bold, prominent)
- Discount to asking ($ and %)
- Investment recommendation: PURSUE AT ADJUSTED PRICE / PASS / PURSUE AT ASKING
- Top 3 strengths, top 3 concerns

### 2. OM Summary Table
Property basics, broker's financial snapshot, investment highlights per OM.

### 3. Broker vs. Reality Comparison Table
| Assumption | Broker's OM | Adjusted | Rationale |

### 4. Broker Assumption Critique (5-Point Checklist)
Each point: metric, broker's number, market benchmark, verdict, dollar impact.

### 5. Reverse-Engineered Pricing Table
Three scenarios with purchase price, going-in cap, exit cap, key assumptions, IRR achieved.

### 6. Maximum Justifiable Price
Dollar amount, per unit/SF, going-in cap at that price, discount to asking.

### 7. 10-Year Pro Forma (Adjusted Assumptions)
Year-by-year cash flow table. Exit waterfall. Investment returns summary.

### 8. Red Flags & Concerns
Numbered list with dollar impact quantified.

### 9. Sensitivity Matrix
IRR at various purchase prices. Two-variable sensitivity (exit cap vs. rent growth).

### 10. Comparable Sales Table
3-5 comps with adjustment commentary.

### 11. Replacement Cost Anchor
Estimated replacement cost, asking as % of replacement, implication for pricing.

### 12. Value Drivers & Upside
Numbered opportunities with quantified NOI impact.

### 13. Final Recommendation & Bid Strategy
Initial offer, walk-away price, DD priorities, next steps.

## Red Flags & Failure Modes

- **Confirming the OM**: Every adjustment must challenge the broker's assumptions, not rubber-stamp them.
- **Exit cap compression without justification**: Default to exit cap >= going-in cap unless a specific value-add plan justifies compression.
- **Ignoring replacement cost**: Always anchor pricing against replacement cost as a sanity check.
- **Vague adjustments**: Every adjusted assumption must have a stated, specific reason tied to market data.
- **Missing dollar impact**: Every red flag must quantify the dollar impact on NOI or valuation.

## Confidence and Provenance

- Default output fidelity is **estimated**: the reverse-engineered pricing is derived from the OM's figures adjusted to market, not an operator-confirmed valuation.
- Label every output cell with a confidence grade -- `confirmed` (operator/market-sourced), `estimated` (derived/adjusted here), or `illustrative` (sample/demo) -- and a source-class tag: `[operator]` user/OM-supplied, `[derived]` adjusted here, `[benchmark]` market rule-of-thumb, `[overlay]` market assumption applied, `[placeholder]` sample.
- **Estimate, not an appraisal (required on every output):** *This reverse-pricing analysis is a screening ESTIMATE of value to inform a bid — NOT an appraisal and not an opinion of value by a licensed appraiser, and not a USPAP-compliant deliverable. A qualified appraiser's report is required before the recommended price is relied upon for a transaction or financing.*

## Chain Notes

- **Upstream**: May follow `deal-quick-screen` when verdict is KEEP and OM is available.
- **Downstream**: Feeds adjusted assumptions and recommended price into `acquisition-underwriting-engine`.
- **Downstream**: Recommended bid feeds directly into `loi-offer-builder`.
- **Parallel**: Can run simultaneously with `deal-quick-screen` if screening was not done first.

Related Skills

workout-playbook

6
from mariourquia/cre-skills-plugin

Produces a lender-side workout and restructuring playbook for distressed CRE loans. Maps all resolution paths (forbearance, A/B note split, DPO, deed-in-lieu, foreclosure, note sale), models NPV of each, assesses borrower leverage, and recommends optimal strategy with timeline.

Work Order Triage

6
from mariourquia/cre-skills-plugin

Classifies work order urgency from free-text descriptions, assigns priority (P1-P4) with SLA deadlines, estimates cost, checks lease responsibility, and routes to the correct approval path.

warehouse-to-exhibit-mapper

6
from mariourquia/cre-skills-plugin

Maps validated, warehouse-ready tabular datasets into deck-ready EXHIBIT specifications and slide inputs. Selects table vs. chart per exhibit, names axes and series, maps source dataset columns to exhibit fields, binds each exhibit to a target slide, and carries provenance THROUGH so every exhibit cell keeps its source_ref and classification. Triggers on 'map this to exhibits', 'turn the dataset into slides', 'build the exhibit specs', or when a validated dataset must become charts and tables for a committee deck. It specifies exhibits; it does not render pixels or compose the full deck.

vendor-invoice-validator

6
from mariourquia/cre-skills-plugin

Validates vendor invoices against contract terms, scope of work, and market rates. Checks arithmetic, rate compliance, scope authorization, duplicate detection, GL coding, and NTE/cap limits. Assigns APPROVED, APPROVED WITH FLAGS, or HOLD FOR REVIEW verdict.

variance-narrative-generator

6
from mariourquia/cre-skills-plugin

Generates ownership-ready variance narratives from budget-vs-actual reports. Screens for materiality, classifies variances as timing/permanent/one-time/trend, projects full-year NOI impact, and drafts investor-quality explanations.

transfer-document-preparer

6
from mariourquia/cre-skills-plugin

Prepare entity transfer documents, closing document packages, and assignment agreements for CRE acquisitions. Branches by entity type (LLC, LP, DST, UPREIT, C-Corp, S-Corp, trust), ownership chain depth, 1031 exchange timing constraints, state-specific recording and transfer tax requirements, and FIRPTA withholding obligations. Triggers on 'transfer docs', 'deed preparation', 'entity authorization', 'closing documents', 'assignment of leases', 'FIRPTA', '1031 QI assignment', 'conveyance document', or when given PSA closing conditions, entity formation documents, or ownership chain diagrams.

title-commitment-reviewer

6
from mariourquia/cre-skills-plugin

Analyze ALTA title commitments, surveys, and Schedule B exceptions for CRE acquisitions. Identifies title defects, chain breaks, lien conflicts, and cure requirements. Triggers on 'title commitment', 'Schedule B exceptions', 'title review', 'title exceptions', 'encumbrances', 'survey cross-reference', 'title chain', 'mechanic's lien', 'title cure', or when given a title commitment document, survey, or lien search results.

term-sheet-builder

6
from mariourquia/cre-skills-plugin

Draft and negotiate CRE financing term sheets from lender quotes. Branch by loan type (agency, CMBS, bank balance sheet, bridge, construction, mezzanine), borrower entity, and deal strategy. Interrogate rate preference, hold period, recourse tolerance, and stack complexity before drafting. Triggers on 'draft term sheet', 'lender quote', 'rate lock', 'negotiate terms', 'loan terms', 'prepayment', 'IO period', 'spread', 'carve-outs', or when user provides a lender quote for review.

tenant-retention-engine

6
from mariourquia/cre-skills-plugin

Generates comprehensive tenant retention strategies with per-tenant renewal probability scoring, retention NPV analysis, WALT impact quantification, DSCR covenant monitoring, competitive intelligence, game theory framing for multi-tenant dynamics, and blend-and-extend modeling. Includes backfill mode (lease-up war room) when retention fails. Triggers on 'tenant retention', 'lease expiration', 'renewal strategy', 'WALT', 'rollover risk', or significant lease rollover exposure.

tenant-event-planner

6
from mariourquia/cre-skills-plugin

Plans, budgets, and executes tenant appreciation events, seasonal programming, and community engagement for CRE properties. Supports API-driven vendor booking when MCP integrations are available. Triggers: tenant event, appreciation event, holiday party, tenant engagement, community event, property event planning, seasonal programming.

tenant-delinquency-workout

6
from mariourquia/cre-skills-plugin

Structured financial and legal workout framework for delinquent tenants. Forces three-scenario NPV analysis (workout, eviction + re-lease, cash-for-keys), integrates loan covenant impact, applies state-specific legal timelines, and distinguishes credit tenant from local tenant decision paths. Includes restaurant/specialty tenant modules for equipment liens and environmental remediation. Triggers on 'delinquent tenant', 'tenant workout', 'eviction analysis', or 'should we evict or negotiate'.

tenant-credit-analyzer

6
from mariourquia/cre-skills-plugin

Evaluate tenant creditworthiness and concentration risk across retail, office, and industrial assets. Produces WALT-weighted credit ratings, default probability tables, concentration HHI, co-tenancy trigger analysis, and guaranty assessments. Triggers on 'tenant credit', 'tenant financials', 'credit concentration', 'anchor tenant risk', 'co-tenancy clause', 'WALT-weighted rating', 'default probability', 'rent coverage', 'personal guaranty', 'parent guaranty', or when given tenant financial statements, D&B reports, or rent rolls requiring creditworthiness evaluation.