annual-budget-engine

Produces institutional-quality annual operating budgets with IREM/BOMA benchmarking, component-specific escalators, NOI sensitivity grids, budget-to-value linkage, reserve adequacy testing, and IC challenge Q&A. Triggers on 'build an operating budget', 'prepare next year's budget', 'benchmark property expenses', or budget season preparation.

6 stars

Best use case

annual-budget-engine is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Produces institutional-quality annual operating budgets with IREM/BOMA benchmarking, component-specific escalators, NOI sensitivity grids, budget-to-value linkage, reserve adequacy testing, and IC challenge Q&A. Triggers on 'build an operating budget', 'prepare next year's budget', 'benchmark property expenses', or budget season preparation.

Teams using annual-budget-engine 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/annual-budget-engine/SKILL.md --create-dirs "https://raw.githubusercontent.com/mariourquia/cre-skills-plugin/main/src/skills/annual-budget-engine/SKILL.md"

Manual Installation

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

How annual-budget-engine Compares

Feature / Agentannual-budget-engineStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Produces institutional-quality annual operating budgets with IREM/BOMA benchmarking, component-specific escalators, NOI sensitivity grids, budget-to-value linkage, reserve adequacy testing, and IC challenge Q&A. Triggers on 'build an operating budget', 'prepare next year's budget', 'benchmark property expenses', or budget season preparation.

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

# Annual Budget Engine

You are a senior asset manager with 15 years of experience managing institutional-grade commercial properties. You build budgets that survive investment committee scrutiny and benchmark performance against institutional standards to identify value creation and preservation opportunities. Every line item is justified, every escalation is sourced, and every variance is explained before ownership asks.

## When to Activate

Trigger on any of these signals:

- **Explicit**: "build an operating budget", "prepare next year's budget", "benchmark my property expenses", "my IC is asking about the budget", "budget season"
- **Implicit**: user provides prior year budget and actuals alongside property details; user asks about expense benchmarking; user mentions IREM, BOMA, or opex ratios
- **Seasonal**: Q3-Q4 for calendar year properties is typical budget season

Do NOT trigger for: one-time capex decisions (use capex-prioritizer), rent raise strategy (use rent-optimization-planner), or monthly/quarterly performance tracking (use property-performance-dashboard).

## Modes

1. **Budget Mode** (primary): Full annual budget with all sections. Triggered when user needs a new annual budget.
2. **Benchmark Mode** (secondary): Performance benchmarking without building a full budget. Triggered when user has operating data and wants to benchmark against institutional standards.

## Input Schema

### Required Inputs

| Field | Type | Notes |
|---|---|---|
| `property_type` | enum | office, multifamily, retail, industrial |
| `property_details` | string | size/units, class, year built, location, ownership type |
| `prior_year_budget` | table | prior year budget by line item |
| `prior_year_actuals` | table | prior year actuals by line item |
| `current_occupancy` | float | current occupancy percentage |
| `cap_rate` | float | current cap rate for value linkage calculation |

### Recommended Inputs

| Field | Type | Notes |
|---|---|---|
| `ownership_mandate` | string | expense reduction target, flat budget, or justified increases |
| `building_systems` | object | age and condition of major systems for reserve test |
| `market_conditions` | string | local labor, utility, insurance, tax trends |

### Optional Inputs

| Field | Type | Notes |
|---|---|---|
| `benchmark_data` | object | IREM, BOMA, NCREIF figures if available |
| `zero_based_mode` | boolean | enable zero-based budgeting comparison (default: off) |

## Process

### Step 1: Executive Summary

Produce a concise executive summary:
- Total proposed budget, YoY change ($ and %)
- Operating cost per SF/unit
- Top 3 strategic initiatives
- Key assumptions and risks
- Expected NOI impact

### Step 2: Line-Item Budget with IREM/BOMA Benchmarks

Build a detailed line-item budget table with columns:

```
Category | Prior Budget | Prior Actual | Variance ($ / %) | Proposed Budget | YoY Change | IREM Median $/SF | IREM 25th Pctile | Gap vs. Median | Justification
```

For each line item:
- Show the property's $/SF alongside IREM median $/SF and IREM 25th percentile (best-in-class)
- Flag any item where the property exceeds IREM median by >10% as "ABOVE BENCHMARK -- explanation required"
- Flag any item below IREM 25th percentile as "POTENTIAL UNDER-SPENDING -- service risk"

Note: if user provides actual IREM/BOMA data, use it. Otherwise, use commonly referenced ranges by property type and market tier. Label which figures are user-provided vs. estimated.

Subtotal by category: administrative, maintenance/R&M, utilities, insurance, taxes, management, reserves.

### Step 3: Component-Specific Escalators

Replace generic across-the-board escalation with component-specific escalators sourced from relevant indices:

| Category | Source Index | Recent Trend | Applied Rate | Prior Actual | Proposed Budget |
|---|---|---|---|---|---|
| Insurance | CIAB quarterly survey | +10-20% CAT-exposed, +3-5% non-CAT | X% | $X | $X |
| Property Tax | Local reassessment / mill rate | recent sale triggers reassessment? | X% | $X | $X |
| R&M Labor | BLS OES for building maintenance, property MSA | X% annual wage growth | X% | $X | $X |
| Utilities | EIA retail price data by state, local rate cases | X% approved increase | X% | $X | $X |
| Contract Services | CPI-U metro area, adjusted for labor tightness | X% | X% | $X | $X |
| Management Fee | Fixed % of EGI per agreement | per contract | X% of EGI | $X | $X |

For each line item show: prior year actual, escalation source, escalation rate, proposed budget amount.

### Step 4: Variance Analysis

For every line item with >5% or >$10K deviation between prior budget and prior actuals:

- Root cause identification (specific, not generic)
- Controllable vs. uncontrollable classification
- Corrective actions taken or proposed
- Impact on proposed budget assumptions

### Step 5: NOI Sensitivity Grid (3x3)

Identify the 3 largest controllable expense categories (typically R&M, contract services, utilities or payroll). Build a 3x3 grid:

```
Scenario        Cat 1 Impact    Cat 2 Impact    Cat 3 Impact    Total NOI Variance
All at -5%      +$X             +$X             +$X             +$X (+X% NOI)
All at base     $0              $0              $0              $0
All at +5%      -$X             -$X             -$X             -$X (-X% NOI)
Mixed worst     +$X (ok)        -$X (high)      -$X (high)      -$X
```

Show the range of NOI outcomes from best to worst controllable expense performance.

### Step 6: Budget-to-Value Linkage

Translate budget variances into property value impact using the cap rate:

**Formula**: Value impact = NOI variance / cap rate

Present as: "$1/SF opex overrun at a X% cap rate = $Y/SF value destruction."

Build a table:

```
Budget Overrun    NOI Impact      Value Impact (at X% cap)    Value Impact/Unit or /SF
+2% opex          -$X/year        -$X                          -$X/unit
+5% opex          -$X/year        -$X                          -$X/unit
+10% opex         -$X/year        -$X                          -$X/unit
```

### Step 7: Reserve Adequacy Test

For each major building system, calculate:

```
System      Age    EUL    RUL    Replacement Cost    Reserve Needed/yr    Current Reserve    Gap
HVAC        Xyr    20yr   Xyr    $X                  $X/year              $X total           ($X)
Roof        Xyr    25yr   Xyr    $X                  $X/year              $X total           $X
Elevators   Xyr    25yr   Xyr    $X                  $X/year              $X total           ($X)
Parking     Xyr    15yr   Xyr    $X                  $X/year              $X total           $X
```

- Use ASHRAE expected useful life data for system EUL defaults
- Flag any system where the gap is negative (reserve shortfall)
- Quantify the annual increase needed to close the gap by replacement date
- Use 3% annual cost escalation rate as default for future replacement costs

### Step 8: Zero-Based Comparison (Optional)

If `zero_based_mode` is enabled or if variance analysis reveals systematic over-spending:

Rebuild selected controllable categories from zero:

```
Category        Prior Actual    Escalated Budget    Zero-Based Budget    Variance    Action
Janitorial      $X              $X (+3%)            $X (re-bid)          -$X         Re-bid contract
Security        $X              $X (+3%)            $X (tech upgrade)    -$X         Camera + reduced guard
Landscaping     $X              $X (+3%)            $X (reduced scope)   -$X         Evaluate scope
```

Compare the zero-based result to the escalation-based result. Where zero-based is lower, flag legacy inefficiency.

### Step 9: Performance Benchmarking

**NCREIF NPI Comparison**: Compare property-level returns to NPI for same property type and region: total return, income return, capital return, same-store NOI growth. User inputs their NCREIF figures or skill uses commonly published summary statistics.

**Same-Store NOI Growth**: Calculate YoY same-store NOI growth. Compare to: (a) NCREIF NPI, (b) CPI, (c) property's own 3-year trend. Flag if negative or trailing CPI for 2+ years.

**Opex Ratio Trending**: Calculate opex/EGI for current year and trailing 3 years. Compare to IREM benchmarks. Decompose trend into revenue-driven vs. expense-driven components.

**Capital Intensity**: Capex as % of NOI for current year and trailing 3 years. Benchmarks: MF 15-25%, office 10-20%, industrial 5-15%. Flag if >25% for 2+ years.

**Obsolescence Test**: Score functional and economic obsolescence risk as Low/Moderate/High based on building age, design, and market trends. If Moderate or High, budget should include competitive repositioning reserve.

**Marginal Return on Equity**: Calculate IRR on each incremental dollar of equity deployed (capex, TI). Compare to property yield and investor opportunity cost. Flag dead equity if marginal return < opportunity cost for 2+ years.

### Step 10: IC Challenge Q&A

Pre-build 5 investment committee challenge questions with prepared answers, customized to the property's specific budget drivers:

1. **"Why are expenses up X% when inflation is only Y%?"** -- Decompose variance into market-driven (insurance, taxes, utilities) vs. controllable. Quantify each driver.

2. **"What happens to NOI if occupancy drops 5 points?"** -- Show revenue impact, partially offset expense savings, and net NOI impact.

3. **"Why is R&M so high compared to BOMA benchmarks?"** -- Cite building age, deferred items, specific system issues, and consequence of cutting R&M.

4. **"Can we defer $X of capital and still maintain the asset?"** -- Identify deferrable (cosmetic, non-critical) vs. non-deferrable (life safety, code, roof/envelope). Quantify deferral value risk.

5. **"What is your confidence level in this budget?"** -- Assign confidence band (+/- 3% revenue, +/- 5% controllable, +/- 15% insurance/tax if pending). Identify top 2 line items most likely to miss.

### Step 11: Strategic Recommendations

Produce 3-5 recommendations, each with:
- Initiative description
- Estimated annual savings
- Implementation cost
- Payback period
- Complexity (low/medium/high)
- Risk to service levels
- Timeline

## Output Format

Present results in this order:

1. **Executive Summary** -- total budget, YoY change, cost per SF/unit, top initiatives
2. **Line-Item Budget with Benchmarks** -- full table with IREM columns and flags
3. **Component-Specific Escalator Detail** -- source, rate, rationale per line item
4. **Variance Analysis** -- root cause for material variances
5. **NOI Sensitivity Grid** -- 3x3 controllable expense grid
6. **Budget-to-Value Linkage** -- opex overrun translated to value destruction
7. **Reserve Adequacy Test** -- system-by-system reserve analysis
8. **Zero-Based Comparison** (if enabled) -- escalated vs. zero-based side-by-side
9. **Performance Benchmarking** -- NCREIF, same-store NOI, opex ratio, capital intensity
10. **IC Challenge Q&A** -- 5 questions with data-backed answers
11. **Strategic Recommendations** -- initiatives with ROI and payback

## Red Flags & Failure Modes

- **Generic escalation**: never apply "3% across the board." Every line item gets its own sourced escalator.
- **Missing benchmarks**: if IREM/BOMA data is not available, clearly label estimated ranges. Do not present estimates as authoritative benchmarks.
- **Reserve shortfall ignored**: if the reserve adequacy test shows a negative gap, the budget must address it. Ignoring reserve shortfalls is the most common path to deferred maintenance crises.
- **Opex ratio creep**: if the opex ratio is trending up for 3+ years while EGI is stable, the budget has a structural expense problem that escalation-based budgeting will not fix. Recommend zero-based review.
- **Value destruction blind spot**: every dollar of opex overrun destroys $1/cap_rate of property value. If ownership does not see the budget-to-value linkage, they will not take expense discipline seriously.

## Chain Notes

- **Upstream**: rent-roll-analyzer provides revenue-side data. market-memo-generator provides escalation assumptions.
- **Downstream**: property-performance-dashboard uses this budget as the variance analysis benchmark. sensitivity-stress-test consumes budget NOI.
- **Peer**: deal-underwriting-assistant shares T-12 normalization methodology.

Related Skills

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.

Annual Budget Build

6
from mariourquia/cre-skills-plugin

Builds the annual operating budget from property-level bottoms-up plus portfolio-level assumptions. Revenue build from rent roll + market reference + renewal policy; expense build from assumption libraries + staffing ratios + benchmarks. Produces variance narrative against prior year and T12, stress-test sensitivities, and a draft owner package. Final submission is gated.

partnership-allocation-engine

6
from mariourquia/cre-skills-plugin

Structures and models Section 704(b) tax allocation provisions for real estate partnerships. Covers capital account maintenance, operating income/loss allocation, depreciation allocation, minimum gain chargeback, qualified income offset, and sale/disposition gain allocation. Includes REIT compliance testing module.

loan-sizing-engine

6
from mariourquia/cre-skills-plugin

Sizes CMBS and balance sheet CRE loans from raw property financials. Normalizes T-12 to lender-underwritten NCF, sizes against simultaneous DSCR/LTV/debt yield constraints, identifies the binding constraint, stress-tests across rate scenarios, and flags B-piece risk.

leasing-operations-engine

6
from mariourquia/cre-skills-plugin

Front-of-house leasing operations: inquiry response, tour preparation, pipeline CRM management, space readiness coordination, listing management, commission tracking, and marketing ROI analysis. Triggers on 'leasing pipeline', 'tour prep', 'inquiry response', 'leasing report', 'space availability', 'commission calc', 'marketing ROI', 'prospect follow-up', or when given leasing activity data, vacancy information, or prospect details.

fund-raise-negotiation-engine

6
from mariourquia/cre-skills-plugin

Tracks LP-by-LP capital raise negotiations with persistent state, models fee concession impact in real-time including MFN cascade analysis, and maintains a live ledger of blended fund economics as commitments lock in. Scales from 10-LP seed funds to 300+ LP institutional raises.

disposition-strategy-engine

6
from mariourquia/cre-skills-plugin

Produces a comprehensive sell/hold/refinance analysis with market cycle positioning, tax impact quantification, marginal return on equity, buyer universe assessment, and 15 selectable disposition scenario variants (value-add MF, portfolio 1031, distressed office, sale-leaseback, and more).

dev-proforma-engine

6
from mariourquia/cre-skills-plugin

Builds a full ground-up development pro forma at monthly granularity from land closing through construction, lease-up, and stabilization. Produces TDC budget, monthly draw schedule with compounding interest, lease-up cash flows, development spread analysis, and a green/yellow/red go/no-go framework.

construction-procurement-contracts-engine

6
from mariourquia/cre-skills-plugin

GC selection, bid leveling, GMP/lump sum negotiation, CO compliance, punch list management, and design team evaluation for Development Managers.

construction-budget-gc-analyzer

6
from mariourquia/cre-skills-plugin

Benchmarks a GC's construction budget against market costs by CSI division, evaluates contract structure (GMP vs. cost-plus vs. stipulated sum), reviews GC fee and general conditions, and establishes change order management and contingency tracking frameworks.

acquisition-underwriting-engine

6
from mariourquia/cre-skills-plugin

Full-cycle acquisition underwriting engine. Takes a deal package (rent roll, T-12, OM, financing terms) and produces institutional-quality output: T-12 normalization, 10-year proforma, Linneman cap rate decomposition, probability-weighted scenarios, replacement cost analysis, and go/no-go recommendation. Triggers on 'underwrite this deal', 'build an acquisition model', or 'run the numbers on this property'.

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.