비용편익 분석
프로젝트 평가를 위한 NPV, ROI, 편익비용비를 계산합니다.
비용
이익
| 년 | 비용 | 이익 | 순 현금 흐름 |
|---|---|---|---|
| 1 | $120,000 | $75,000 | $-45,000 |
| 2 | $20,000 | $75,000 | $55,000 |
| 3 | $20,000 | $75,000 | $55,000 |
| 4 | $20,000 | $75,000 | $55,000 |
| 5 | $20,000 | $75,000 | $55,000 |
이 도구 소개
비용편익분석은 프로젝트 또는 이니셔티브의 시행에 따른 편익의 금전적 가치와 비용을 비교하는 기본적인 경제 도구입니다. 개인, 조직, 정부 기관이 정보에 기반한 투자 결정을 내리도록 도와줍니다. 이 도구에서 계산하는 핵심 지표인 순현재가치(NPV), 투자수익률(ROI), 편익비용비(BCR)를 통해 프로젝트를 표준화된 기준으로 평가하고 재무적 가치에 따라 우선순위를 정할 수 있습니다.
이 도구를 사용하려면 초기 투자 비용을 입력하고 프로젝트 전체 기간에 걸친 연간 편익과 비용을 나열합니다. 할인율(일반적으로 대부분의 비즈니스 결정에서는 5-10%)을 지정하여 인플레이션과 기회비용을 반영하는 화폐의 시간가치를 고려합니다. 계산기는 NPV(오늘날의 달러 가치로 환산한 순 이익), ROI(초기 투자 대비 수익률), 편익비용비(편익÷비용)를 계산합니다. NPV가 양수, ROI가 목표 임계값 이상, BCR이 1.0 초과라면 모두 재무적으로 실행 가능한 프로젝트임을 나타냅니다.
이 분석은 자본예산 편성, 인프라 계획, 환경 정책, 사업 확장 결정에 필수적입니다. 프로젝트 매니저와 재무 분석가는 이러한 지표를 사용하여 이해관계자에게 투자를 정당화하고 서로 다른 타이밍의 대안들을 비교합니다. 비용편익분석은 미래의 비용과 편익에 대한 정확한 예측에 의존한다는 점을 명심하세요. 민감도 분석(할인율이나 편익 추정값 조정)을 통해 가정이 결과에 어떤 영향을 미치는지 파악할 수 있습니다.
자주 묻는 질문
코드 구현
def cost_benefit_analysis(costs, benefits, years: int, discount_rate: float):
"""
costs/benefits: list of {'name': str, 'amount': float, 'type': 'one-time'|'annual'}
discount_rate: as decimal (0.08 for 8%)
"""
cash_flows = []
cumulative_pv = 0.0
cumulative_net = 0.0
payback_year = None
for year in range(1, years + 1):
year_costs = sum(
c['amount'] for c in costs
if c['type'] == 'annual' or (c['type'] == 'one-time' and year == 1)
)
year_benefits = sum(
b['amount'] for b in benefits
if b['type'] == 'annual' or (b['type'] == 'one-time' and year == 1)
)
net = year_benefits - year_costs
df = 1 / (1 + discount_rate) ** year if discount_rate > 0 else 1
pv = net * df
cumulative_pv += pv
cumulative_net += net
if payback_year is None and cumulative_net >= 0:
payback_year = year
cash_flows.append({'year': year, 'costs': year_costs, 'benefits': year_benefits, 'net': net, 'pv': pv, 'cumulative_pv': cumulative_pv})
total_costs = sum(cf['costs'] for cf in cash_flows)
total_benefits = sum(cf['benefits'] for cf in cash_flows)
npv = cumulative_pv
bcr = total_benefits / total_costs if total_costs > 0 else 0
roi = (total_benefits - total_costs) / total_costs * 100 if total_costs > 0 else 0
return {'npv': npv, 'bcr': bcr, 'roi': roi, 'payback_year': payback_year, 'cash_flows': cash_flows}
# Example
costs = [
{'name': 'Initial Investment', 'amount': 100000, 'type': 'one-time'},
{'name': 'Annual Operating', 'amount': 20000, 'type': 'annual'},
]
benefits = [
{'name': 'Revenue', 'amount': 60000, 'type': 'annual'},
{'name': 'Cost Savings', 'amount': 15000, 'type': 'annual'},
]
result = cost_benefit_analysis(costs, benefits, years=5, discount_rate=0.08)
print(f"NPV: ${result['npv']:,.0f}")
print(f"BCR: {result['bcr']:.2f}")
print(f"ROI: {result['roi']:.1f}%")
print(f"Payback: Year {result['payback_year']}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.