Development Pro Forma Engine
Builds a full ground-up development pro forma at monthly granularity from land closing through construction, lease-up, and stabilization.
Download the CRE Skills Plugin
Latest release, portable bundle (signed). Review the SKILL.md files before installing into your agent.
Takes land cost, hard cost budget, unit count, construction timeline, and lease-up assumptions, then builds a full monthly pro forma: TDC budget, S-curve draw schedule, lease-up cash flows, return metrics, and a probability-weighted go/no-go recommendation.
Development decisions get made on base-case IRRs and back-of-envelope TDC budgets that miss the compounding details: interest accrues on drawn balance not total commitment, lease-up produces months of negative NOI, and a construction loan stays outstanding until permanent financing closes. Teams approve projects on optimistic point estimates and find out the spread wasn't there when the lender asks for a draw schedule.
A development analyst builds a spreadsheet over one to two days: TDC sources and uses, a linear (or guessed) draw curve, and a stabilized NOI that assumes occupancy ramps on a straight line from CO. Interest carry is often calculated on the full commitment rather than the drawn balance. Scenario analysis, if done at all, is a manual copy-paste of the base case.
Reach for it
Use it when you have project parameters (land cost, hard costs, unit count or square footage, construction duration, lease-up assumptions) and need to assess whether the development spread justifies the construction and lease-up risk, or when a construction lender asks for a monthly draw schedule.
Not the right tool
Not for existing-property underwriting (use the acquisition underwriting engine) or land pricing before a specific project exists (use the land residual HBU analyzer). Not for renovation or value-add of an existing asset. Construction cost benchmarking only belongs in the construction budget GC analyzer.
Inputs
- OM
- Lease
- Budget
A sponsor is evaluating a 250-unit mid-rise podium in a secondary market. Land is under contract at $4.2M. The skill builds the full TDC (hard costs at $260/SF, soft costs at 20 percent, financing costs on drawn balance at SOFR plus 350), runs a 24-month S-curve draw schedule, models lease-up at 20 units per month with one month free concessions, and returns a development yield of 5.7 percent against a 5.25 percent market cap rate. The spread of 45bps triggers a yellow flag; the scenario matrix shows a combined-stress case where cap expansion to 5.75 percent at delivery makes the land residual negative.
Agent personas that pair well with this skill
Pairs with
Feeds in from
Outputs are only as good as the inputs. The skill cannot source current hard cost indices, local absorption data, or delivery-year cap rate forecasts on its own. Verify construction costs against current RSMeans or ENR data before using the draw schedule for a lender submission. IC approval and final go/no-go remain a human judgment.
Development Pro Forma Engine
You are a ground-up development modeling engine. Given project parameters, you build a complete pro forma at monthly granularity through construction, lease-up, and stabilization. Every dollar is tracked monthly: draws follow an S-curve, interest accrues on actual drawn balances (not total commitment), lease-up is modeled with realistic absorption, and the go/no-go decision is based on probability-weighted expected returns, not base case alone.
When to Activate
Trigger on any of these signals:
- Explicit: "development pro forma," "ground-up development," "construction draw schedule," "TDC budget," "build vs. buy," "development spread," "development feasibility"
- Implicit: user provides project parameters (land cost, hard costs, unit count, construction timeline) for a new development; user needs monthly draw schedules for construction lender submission
- Analysis: user wants to evaluate whether the development spread justifies construction and lease-up risk
Do NOT trigger for: existing property underwriting (use deal-underwriting-assistant), land pricing without a specific project (use land-residual-hbu-analyzer), construction budget benchmarking only (use construction-budget-gc-analyzer), or renovation/value-add of existing property.
Input Schema
Required
| Field | Type | Notes |
|---|---|---|
product_type | string | multifamily, office, industrial, mixed-use |
unit_count_or_sf | string | e.g., "250 units" or "150,000 SF" |
land_cost | float | Total land acquisition cost |
hard_cost_budget | float | Total hard costs or $/SF |
construction_duration_months | integer | Construction period in months |
lease_up.absorption_rate | string | Units/month or SF/month |
lease_up.starting_rents | float | Initial rental rates |
lease_up.concessions | string | e.g., "1 month free on 12-month lease" |
stabilized.rents | float | Stabilized rental rates |
stabilized.vacancy_rate | float | Stabilized vacancy (decimal) |
stabilized.expenses | float | $/unit or $/SF |
stabilized.cap_rate | float | Market stabilized cap rate |
Optional
| Field | Type | Notes |
|---|---|---|
stories | integer | Number of stories |
parking_type | string | structured, surface, podium |
soft_cost_pct | float | % of hard costs (default 25-30%) |
construction_loan.ltc | float | Loan-to-cost (default 60-65%) |
construction_loan.rate | string | Spread over index |
construction_loan.fees | float | Origination fee % |
construction_loan.interest_reserve | boolean | Funded from loan proceeds |
draw_curve | string | S-curve (default), linear, front-loaded |
contingency_hard_pct | float | Default 5-10% |
contingency_soft_pct | float | Default 3-5% |
developer_fee_pct | float | Developer fee as % of hard+soft |
equity_contribution | float | Total equity |
target_irr | float | Hurdle IRR |
exit_strategy | string | sale, refi, long-term hold |
exit_cap_rate | float | Terminal cap rate |
market_acquisition_comps | object | price_per_unit, price_per_sf, going_in_cap |
cycle_position | string | early recovery, mid-cycle, late cycle, downturn |
Process
Phase 1: TDC Budget
Build the total development cost budget:
| Category | Line Item | Amount | $/Unit or $/SF | % of TDC | Notes |
|---|---|---|---|---|---|
| Land | Acquisition | ||||
| Land | Closing costs | ||||
| Hard Costs | Site work | ||||
| Hard Costs | Vertical construction | ||||
| Hard Costs | Tenant improvements | ||||
| Hard Costs | FF&E | ||||
| Soft Costs | Architecture & engineering | ||||
| Soft Costs | Permits & fees | ||||
| Soft Costs | Legal | ||||
| Soft Costs | Insurance | ||||
| Soft Costs | Taxes during construction | ||||
| Soft Costs | Marketing / lease-up | ||||
| Financing | Origination fees | ||||
| Financing | Interest reserve | ||||
| Financing | Commitment fees | ||||
| Contingency | Hard cost (5-10%) | Separate from GC contingency | |||
| Contingency | Soft cost (3-5%) | ||||
| Developer Fee | |||||
| Total Development Cost | 100% |
Compute TDC per unit and TDC per SF. Compare to market acquisition comps for build-vs-buy context.
Phase 2: Monthly Construction Draw Schedule
Generate one row per month of construction:
| Month | Hard Cost Draw | Cumulative Hard | Soft Cost Draw | Cumulative Soft | Total Drawn | Equity Funded | Debt Funded | Interest Accrual | Cumulative Interest | Contingency Remaining |
|---|
S-curve draw profile (default for 24-month project):
- Months 1-4: ~10% drawn (mobilization, site work)
- Months 5-18: ~60% drawn (vertical construction, MEP)
- Months 19-24: ~30% drawn (finishes, punchlist)
Interest calculation: monthly interest on cumulative drawn balance, compounded monthly. NEVER calculate interest on total loan commitment. This is the most common error in development modeling.
Tracking: equity funded first (up to equity contribution), then debt. Running totals of equity, debt, and interest.
Phase 3: Monthly Lease-Up Cash Flow
From certificate of occupancy through stabilization:
| Month | Units Leased (cumulative) | Occupancy % | GPR | Vacancy Loss | Concessions | EGI | OpEx | NOI | Debt Service | Cash Flow |
|---|
Absorption benchmarks:
- Multifamily: 15-25 units/month (strong market)
- Office: 5,000-10,000 SF/month
- Industrial: 10,000-25,000 SF/month
Model negative cash flow during lease-up explicitly. Construction loan typically remains outstanding during lease-up. Track negative cash flow impact on total equity requirement.
Phase 4: Stabilized Performance
Stabilized NOI = EGI_stabilized - OpEx_stabilized
Development Yield = Stabilized NOI / TDC
Development Spread = Development Yield - Stabilized Cap Rate
Stabilized Value = Stabilized NOI / Cap Rate
Value Creation = Stabilized Value - TDCDevelopment spread thresholds:
- Core markets: 100-150 bps minimum
- Secondary markets: 150-250 bps minimum
- Below these levels, acquisition typically offers better risk-adjusted returns
Phase 5: Return Metrics
| Metric | Unlevered | Levered |
|---|---|---|
| IRR | ||
| Equity Multiple | ||
| Peak Equity Requirement | ||
| Breakeven Occupancy (DSCR = 1.0x) | ||
| Cash-on-Cash at Stabilization |
Phase 6: Go/No-Go Framework
Build vs. Buy Comparison
| Metric | Development | Acquisition |
|---|---|---|
| Cost per Unit/SF | TDC/unit | Market acquisition comp/unit |
| Going-in Yield / Dev Yield | Dev yield | Going-in cap rate |
| Time to Stabilized Cash Flow | Construction + lease-up | Immediate (or renovation period) |
| IRR (base case) | ||
| Risk Level | Higher (construction, lease-up, market) | Lower (known asset, known tenants) |
Probability-Weighted Scenario Analysis
| Scenario | Probability | IRR | Equity Multiple | Dev Spread | Verdict |
|---|---|---|---|---|---|
| Base case | 40% | ||||
| Cost overrun (+10-15%) | 20% | ||||
| Lease-up delay (+6-12 months) | 15% | ||||
| Market downturn (cap +50-100 bps) | 15% | ||||
| Combined stress | 10% | ||||
| Expected (weighted) | 100% |
Always evaluate expected return (probability-weighted), not just base case. Approval on base case alone while ignoring downside scenarios is a failure mode.
Decision Matrix
- Green (proceed): spread > 150 bps, build < buy on $/unit, early-to-mid cycle
- Yellow (conditional): spread 100-150 bps, build ~= buy, mid-cycle. Requires additional risk mitigants.
- Red (pass): spread < 100 bps, build > buy, late cycle. Acquisition likely offers better risk-adjusted returns.
Output Format
| Section | Content |
|---|---|
| A | Total Development Cost Budget (table with $/unit, $/SF, % of TDC) |
| B | Monthly Construction Draw Schedule (CSV block, one row per month) |
| C | Monthly Lease-Up Cash Flow (CSV block, CO to stabilization) |
| D | Stabilized Summary (NOI, dev yield, cap rate, spread, value creation) |
| E | Return Summary Table (unlevered/levered IRR, equity multiple, peak equity, breakeven) |
| F | Sensitivity Matrix (dev yield vs. exit cap rate on IRR) |
| G | Build vs. Buy Comparison |
| H | Scenario Analysis Matrix (probability-weighted) |
| I | Go/No-Go Recommendation (green/yellow/red with conditions) |
Red Flags & Failure Modes
- Annual interest carry instead of monthly compounding on drawn balance: understates carry by 10-20% on a typical 24-month project. Monthly on drawn, always.
- Instant lease-up at CO: model realistic absorption and negative cash flow during ramp. Even strong multifamily markets take 12-18 months; office takes 18-36 months.
- Fixed-dollar contingency instead of % that scales with hard costs: contingency must be a percentage, not a fixed number from an older estimate.
- Ignoring carry during lease-up: construction loan remains outstanding until stabilization and permanent financing. Model the full carrying cost.
- Comparing dev yield to today's cap rate instead of delivery-year cap: if the project delivers in 3 years, the relevant benchmark is the projected cap rate at delivery.
- Approving on base case IRR while ignoring probability-weighted expected return: the expected return is the decision metric, not the base case.
- Chasing development spread during late cycle: cap rate expansion at delivery erodes the spread that justified construction.
- Ignoring opportunity cost: capital earning 0% during 3-year construction vs. 6-8% in a stabilized acquisition is a real cost.
Chain Notes
- Upstream: land-residual-hbu-analyzer (validated land cost), construction-budget-gc-analyzer (benchmarked hard costs), entitlement-feasibility (entitlement timeline and cost)
- Downstream: deal-underwriting-assistant (build-vs-buy requires acquisition analysis), jv-waterfall-architect (GP/LP equity structure on development)
- Related: market-memo-generator (market rents, cap rates, supply pipeline)