{
  "slug": "land-development-yield-on-cost",
  "title": "Land Development Yield-on-Cost Calculator",
  "heading": "Land Development Yield-on-Cost Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/land-development-yield-on-cost",
  "summary": "Compare stabilized NOI yield-on-cost against market cap rate to gauge development spread.",
  "description": "Yield-on-cost (also called developer's yield or building yield) is the ground-up development equivalent of cap rate: stabilized NOI divided by total project cost, including land, hard costs, soft costs, and financing carry during construction and lease-up. Developers compare this figure against prevailing market cap rates for stabilized, built assets — the gap between the two is the 'development spread,' which compensates you for construction risk, entitlement risk, and lease-up risk versus simply buying a finished asset. A healthy development spread is typically 150-250 basis points above market cap rate; anything tighter than 100bps usually means the risk-adjusted return doesn't justify building versus buying an existing stabilized property. This calculator totals your project costs, divides projected stabilized NOI by that total to get yield-on-cost, and compares it against a market cap rate you input to show the spread in basis points and the implied value creation (the difference between what the finished project is worth at market cap rate and what it cost you to build).",
  "formula": "Total project cost = Land + hard costs + soft costs + financing carry; Yield-on-cost = Stabilized NOI ÷ Total project cost; Spread = Yield-on-cost − market cap rate; Value created = (Stabilized NOI ÷ market cap rate) − Total project cost.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=land-development-yield-on-cost",
  "inputs": [
    {
      "id": "landCost",
      "label": "Land cost",
      "kind": "number",
      "hint": null,
      "default": 800000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "hardCosts",
      "label": "Hard construction costs",
      "kind": "number",
      "hint": null,
      "default": 3200000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "softCosts",
      "label": "Soft costs (design, permits, legal)",
      "kind": "number",
      "hint": null,
      "default": 500000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "financingCarry",
      "label": "Construction financing carry cost",
      "kind": "number",
      "hint": null,
      "default": 300000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "stabilizedNoi",
      "label": "Projected stabilized annual NOI",
      "kind": "number",
      "hint": null,
      "default": 420000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "marketCapRate",
      "label": "Market cap rate for comparable stabilized assets",
      "kind": "number",
      "hint": null,
      "default": 5.75,
      "unit": "%",
      "min": 1,
      "max": 15
    }
  ],
  "outputs": [
    {
      "id": "yieldOnCost",
      "label": "Yield-on-cost",
      "format": "percent",
      "hint": null,
      "primary": true
    },
    {
      "id": "spreadBps",
      "label": "Spread over market cap rate",
      "format": "number",
      "hint": null,
      "primary": false
    },
    {
      "id": "valueCreated",
      "label": "Value created at completion",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "totalCost",
      "label": "Total project cost",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "stabilizedValue",
      "label": "Value at market cap rate",
      "format": "currency",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Land cost: 800000 $",
      "Hard construction costs: 3200000 $",
      "Soft costs (design, permits, legal): 500000 $",
      "Construction financing carry cost: 300000 $",
      "Projected stabilized annual NOI: 420000 $",
      "Market cap rate for comparable stabilized assets: 5.75 %"
    ],
    "outputs": [
      "Yield-on-cost: 8.75%",
      "Spread over market cap rate: 300",
      "Value created at completion: $2,504,348",
      "Total project cost: $4,800,000",
      "Value at market cap rate: $7,304,348"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter land cost ($).",
      "Enter hard construction costs ($).",
      "Enter soft costs (design, permits, legal) ($).",
      "Enter construction financing carry cost ($).",
      "Enter projected stabilized annual noi ($).",
      "Enter market cap rate for comparable stabilized assets (%).",
      "Read your yield-on-cost on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "landCost": 480000,
        "hardCosts": 1920000,
        "softCosts": 300000,
        "financingCarry": 180000,
        "stabilizedNoi": 250000,
        "marketCapRate": 3.4499999999999997
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "landCost": 800000,
        "hardCosts": 3200000,
        "softCosts": 500000,
        "financingCarry": 300000,
        "stabilizedNoi": 420000,
        "marketCapRate": 5.75
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "landCost": 1280000,
        "hardCosts": 5120000,
        "softCosts": 800000,
        "financingCarry": 480000,
        "stabilizedNoi": 670000,
        "marketCapRate": 9.200000000000001
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "What's a typical target development spread?",
      "a": "150-250 basis points above market cap rate is a common institutional target for ground-up multifamily or industrial development, compensating for entitlement, construction, and lease-up risk. Riskier product types (hospitality, speculative office) or less certain markets often require 300bps or more to justify breaking ground."
    },
    {
      "q": "Why does this metric matter more than cap rate for new construction?",
      "a": "Cap rate assumes you're buying a stabilized, cash-flowing asset today; yield-on-cost accounts for the fact that you're bearing 18-36 months of construction and lease-up risk before that NOI materializes, with no guarantee rents or costs land where projected. The spread is your compensation for that uncertainty."
    },
    {
      "q": "How sensitive is this to construction cost overruns?",
      "a": "Very — a 10% hard cost overrun on a project where hard costs are 70% of total budget directly cuts yield-on-cost by roughly 6-7%, since NOI stays fixed while the denominator grows. Always stress-test yield-on-cost at 10-15% cost overrun before committing to a development deal."
    },
    {
      "q": "Does this include developer profit/fee?",
      "a": "Not automatically — if your total project cost figure already includes a development fee paid to yourself or a GC, that's fine; if not, add it as a line item before computing, since skipping it overstates your real yield-on-cost relative to what an arm's-length buyer would pay for the finished project."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/adu-build-roi",
    "https://www.revenuelab.fyi/toolbox/cap-rate-expansion-sensitivity",
    "https://www.revenuelab.fyi/toolbox/mobile-home-park-lot-economics"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Land Development Yield-on-Cost Calculator (https://www.revenuelab.fyi/toolbox/land-development-yield-on-cost)"
}