Real Estate ROI Calculator

Calculate return on investment for rental properties including NOI, cap rate, and cash-on-cash return.

$
$
$

Include property tax, insurance, maintenance, vacancy

$
%
yr

よくある質問

コヌド実装

def calculate_real_estate_roi(
    purchase_price: float,
    down_payment: float,
    monthly_rent: float,
    monthly_expenses: float,
    annual_appreciation: float = 0.03,
    years: int = 5
) -> dict:
    loan_amount = purchase_price - down_payment
    annual_rent = monthly_rent * 12
    annual_expenses = monthly_expenses * 12

    # Net Operating Income
    noi = annual_rent - annual_expenses

    # Cap Rate
    cap_rate = (noi / purchase_price) * 100

    # Cash-on-Cash Return (assumes no mortgage for simplicity)
    cash_on_cash = (noi / down_payment) * 100

    # Property value after appreciation
    future_value = purchase_price * ((1 + annual_appreciation) ** years)
    appreciation_gain = future_value - purchase_price

    # Total return over holding period
    total_cash_flow = noi * years
    total_return = total_cash_flow + appreciation_gain
    roi = (total_return / down_payment) * 100

    return {
        "noi": round(noi, 2),
        "cap_rate": round(cap_rate, 2),
        "cash_on_cash": round(cash_on_cash, 2),
        "future_value": round(future_value, 2),
        "appreciation_gain": round(appreciation_gain, 2),
        "total_return": round(total_return, 2),
        "roi_percent": round(roi, 2),
        "annualized_roi": round(roi / years, 2)
    }

result = calculate_real_estate_roi(
    purchase_price=400000,
    down_payment=80000,
    monthly_rent=2500,
    monthly_expenses=800,
    annual_appreciation=0.03,
    years=5
)
for k, v in result.items():
    print(f"{k}: {v}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.