초깃값, 최종값, 기간, CAGR(%) 4개 중 아는 값 3개를 입력하고, 구하고 싶은 1개는 비워 둔 채 ‘계산’을 누르세요. 비워 둔 항목을 역산하고, 연도별 추이표와 성장 곡선 그래프를 보여 줍니다.
이 페이지에서 할 수 있는 것
- 초깃값, 최종값, 연수 3개로 연평균 성장률(CAGR)을 계산합니다. ‘매출이 5년 만에 1,000만 원에서 1,610만 원이 되었다 = 연평균 약 10% 성장’처럼, 들쭉날쭉한 성장을 ‘해마다 같은 몇 %로 계속 늘어난 것과 같은가’로 바꾼 값입니다
- 4개의 칸(초깃값, 최종값, 연수, CAGR) 중 아는 값 3개를 넣으면 나머지 1개를 역산합니다. ‘연 10% 성장으로 매출을 2배로 만들려면 몇 년?’(연수의 역산), ‘연 15% 성장을 이어 가면 5년 뒤에는 얼마?’(최종값의 역산), ‘목표를 이루려면 지금 얼마가 필요?’(초깃값의 역산)를 모두 계산할 수 있습니다
- 연수는 2.5년 같은 소수로도, ‘18개월’ 같은 개월 수로도 입력할 수 있습니다. 목표에 이르는 연수는 소수와 올림한 연수(몇 년 차에 도달하는가)를 모두 표시합니다
- 연도별 추이표와, 성장 곡선(초깃값 × (1 + CAGR)의 연수 제곱)에 ‘해마다 같은 금액씩 늘어난 경우의 직선’을 겹친 그래프로 단순 평균 성장률과의 차이도 한눈에 볼 수 있습니다
이 계산은 어디에 쓰일까요?
스타트업의 사업 계획서나 상장 기업의 실적 발표(IR) 자료에서는 매출이나 이용자 수의 성장을 ‘최근 3년 CAGR 25%’처럼 나타냅니다. 예를 들어 매출이 3년 만에 20억 원에서 39억 원이 되었다면 CAGR은 \((39 \div 20)^{1/3} - 1 \fallingdotseq 0.249\), 즉 약 25%입니다.
해마다의 성장이 들쭉날쭉해도 숫자 하나로 성장의 속도를 나타낼 수 있으므로, 규모도 기간도 다른 회사끼리 비교할 수 있습니다. 다만 초깃값과 최종값 두 점만 보므로 ‘마지막 해에만 갑자기 늘었다’ 같은 속사정은 가려집니다. 자료를 읽을 때는 추이표도 함께 확인하는 것이 요령입니다.
‘연 10% 성장을 이어 가면 매출이 2배가 되는 것은 몇 년 뒤?’라는 물음에는 연수의 식으로 \(\log 2 \div \log 1.1 \fallingdotseq 7.27\)년, 즉 8년 차 말에 2배를 넘는다고 답할 수 있습니다. 반대로 ‘5년 만에 2배’를 목표로 한다면 필요한 CAGR은 \(2^{1/5} - 1 \fallingdotseq 0.149\), 연 약 14.9%의 성장이 필요하다는 것을 알 수 있습니다.
‘해마다 몇 %를 늘리면 목표에 닿는가’를 숫자로 만들면 연도별 목표 매출(추이표)로 구체화할 수 있습니다.
어떤 앱의 월간 이용자 수(MAU)가 2년 만에 5만 명에서 20만 명(4배)이 되었다면 CAGR은 \(4^{1/2} - 1 = 1\), 연 100%(해마다 2배)입니다. 다른 앱이 4년 만에 4배라면 \(4^{1/4} - 1 \fallingdotseq 0.414\), 연 약 41%로, 같은 ‘4배’라도 성장 속도가 전혀 다르다는 것이 CAGR로 보입니다.
이용자 수처럼 단위가 원이 아닌 것에도 같은 식을 그대로 쓸 수 있습니다.
‘이 시장은 연평균 8%로 성장할 전망’이라는 예측이 있을 때, 현재 1,000억 원인 시장은 5년 뒤에 \(1000 \times 1.08^5 \fallingdotseq 1469\)억 원으로 추산할 수 있습니다(최종값의 식). 업계 보고서의 ‘○년 뒤의 시장 규모’에는 이런 계산으로 만든 것이 많습니다.
주의할 점은 성장률이 앞으로도 일정하다는 가정 위의 숫자라는 것입니다. 예측의 전제(몇 %를 몇 년 이어 가는가)를 확인한 뒤에 쓰세요.
어느 군의 인구가 10년 만에 5만 명에서 4만 명으로 줄었다면 CAGR은 \((4 \div 5)^{1/10} - 1 \fallingdotseq -0.0221\), 연 약 2.2% 감소입니다. ‘10년 동안 20% 줄었다 = 연 2% 감소’로 단순히 나누면 조금 어긋나는 것은, 줄어드는 방식도 복리(줄어든 뒤의 인구를 기준으로 줄어듦)이기 때문입니다.
감소할 때도 똑같은 식이며, CAGR이 마이너스가 될 뿐입니다. 같은 속도가 이어지면 몇 년 뒤에 3만 명 아래로 내려가는지도 연수의 식으로 역산할 수 있습니다.
예를 들어 20년 전에 월급 200만 원이던 사람이 지금 300만 원이라면 CAGR은 \((300 \div 200)^{1/20} - 1 \fallingdotseq 0.0205\), 연 약 2%의 상승입니다. 물가가 오른 정도도 같은 식으로 ‘연평균 몇 %’로 바꿀 수 있으므로, 월급의 상승과 물가의 상승을 같은 잣대로 비교할 수 있습니다.
‘긴 기간의 변화를 연율로 바꾸는’ 것은 CAGR이 잘하는 분야로, 숫자가 커 보이는 ‘20년 동안 50% 증가’도 연율로 바꾸면 2%라는 실감 나는 숫자가 됩니다.
공식과 그래프
용어·기호 해설
기호
| CAGR | 씨에이지알 | 연평균 성장률(Compound Annual Growth Rate)입니다. 직역하면 ‘복리 연간 성장률’로, ‘해마다 같은 비율로 계속 늘어났다고 하면 연 몇 %인가’를 나타냅니다. 이 페이지에서는 기호 \(r\)로 나타냅니다. |
| \(V_0\) | 브이 영 | 초깃값(기간의 처음 시점의 값)입니다. \(V\)는 value(값)의 첫 글자이고, 오른쪽 아래의 0은 ‘0년 차’라는 뜻입니다(예: 5년 전 매출 1,000만 원). |
| \(V_n\) | 브이 엔 | 최종값(\(n\)년 뒤의 값)입니다. 오른쪽 아래의 \(n\)은 ‘\(n\)년 차’라는 뜻입니다(예: 올해 매출 1,610.51만 원). |
| \(G\) | 지 | 전체 배율입니다. 최종값 ÷ 초깃값(\(V_n \div V_0\))으로, 기간 전체에서 몇 배가 되었는지를 나타냅니다. growth(성장)의 첫 글자입니다(예: 1,000만 원 → 1,210만 원이라면 \(G = 1.21\)). |
| \(n\) | 엔 | 연수입니다. 초깃값에서 최종값까지의 기간을 연 단위로 나타낸 수로, number(수)의 첫 글자입니다. 2.5년 같은 소수도 됩니다(18개월이라면 \(18 \div 12 = 1.5\)년). |
| \(r\) | 알 | 연평균 성장률(CAGR)을 소수로 나타낸 것입니다. rate(비율)의 첫 글자입니다. 10%라면 \(r = 0.1\)이고, %로 나타낼 때는 100을 곱합니다. |
| \(1 + r\) | 일 더하기 알 | 1년당 배율입니다. 성장률 10%라면 \(1 + 0.1 = 1.1\)배입니다. ‘원래 몫인 1’에 ‘늘어난 몫인 \(r\)’를 더한 꼴로, \(n\)년분을 곱하면 \((1 + r)^n\)배가 됩니다. |
| \(x^{1/n}\) | 엑스의 엔분의 일 제곱 | \(x\)의 \(1/n\)제곱, 즉 ‘\(n\)제곱하면 \(x\)가 되는 수’(\(n\)제곱근 \(\sqrt[n]{x}\))입니다. 2년이면 제곱근, 3년이면 세제곱근입니다(예: \(1.21^{1/2} = \sqrt{1.21} = 1.1\)). |
| \(\log\) | 로그 | 로그(logarithm)입니다. ‘어떤 수를 몇 제곱하면 그 값이 되는가’를 구하는 기호입니다. 이 페이지에서는 ‘1.1을 몇 제곱하면 2가 되는가’처럼 연수를 역산할 때 씁니다. 밑이 10(상용로그)이든 \(e\)(자연로그 \(\ln\))든 분자와 분모에서 같은 밑을 쓰면 답은 같습니다. |
| \(g\) | 지 | 단순 평균 성장률입니다. 전체 성장률을 연수로 나누기만 한 참고값입니다. CAGR인 \(r\)과 구별하려고 다른 문자를 씁니다(대문자 \(G\), 즉 전체 배율과는 다른 양입니다). |
용어
| 연평균 성장률(CAGR) | 몇 년 동안의 성장을 ‘해마다 같은 비율로 계속 늘어났다고 하면 연 몇 %인가’로 바꾼 값입니다. 초깃값, 최종값, 연수 3개만으로 정해지고, 중간 해의 오르내림은 계산에 들어가지 않습니다. 사업의 매출, 이용자 수, 시장 규모, 인구 등의 성장을 연율로 비교할 때 쓰는 표준적인 지표입니다. |
| 복리 | 늘어난 몫에도 다시 같은 비율이 붙어 가는 늘어나는 방식입니다. ‘해마다 10% 성장’을 2년 이어 가면 \(1.1 \times 1.1 = 1.21\)배(21% 증가)가 되며, ‘10% + 10% = 20% 증가’가 되지는 않습니다. CAGR은 이 복리의 생각으로 성장률을 고르게 한 것입니다. |
| 기하평균 | \(n\)개의 수를 모두 곱해서 \(1/n\)제곱한 평균입니다. CAGR은 ‘각 해의 배율의 기하평균에서 1을 뺀 것’이며, 보통의 평균(더해서 나누는 산술평균)과는 다릅니다. 배율처럼 ‘곱셈으로 이어지는 양’의 평균에는 기하평균을 씁니다. |
| 단순 평균 성장률(산술평균) | 기간 전체의 성장률을 연수로 나누기만 한 값입니다. ‘해마다 같은 금액씩 늘었다’고 보는 직선의 관점으로, 복리의 효과를 무시하므로 기간이 1년 이상이면 증가할 때는 CAGR보다 큰 숫자가 나옵니다(감소할 때는 줄어드는 비율이 CAGR보다 작게 나옵니다). 연율을 말할 때는 CAGR을 쓰는 것이 표준입니다. |
| 전체 배율 | 최종값 ÷ 초깃값입니다. 기간 전체에서 몇 배가 되었는지를 나타냅니다. 1,000만 원이 1,610.51만 원이 되었다면 약 1.61배입니다. 여기서 1을 빼고 100을 곱한 것이 ‘전체 성장률(약 61% 증가)’입니다. |
| 거듭제곱근(n제곱근) | \(n\)제곱하면 그 수가 되는 수입니다. \(\sqrt[n]{x}\)나 \(x^{1/n}\)으로 씁니다. ‘2년 만에 1.21배’라면 1년당 배율은 \(\sqrt{1.21} = 1.1\)배이며, 이것이 CAGR 계산의 중심입니다. |
| 로그(log) | ‘\(a\)를 몇 제곱하면 \(b\)가 되는가’에서 ‘몇 제곱’ 부분을 나타내는 수입니다. \(\log_{a} b\)로 씁니다. 지수(곱하는 횟수)를 구하는 계산이므로 ‘연 10% 성장으로 몇 년 만에 2배가 되는가’ 같은 연수의 역산에 씁니다. |
| 72의 법칙 | ‘값이 2배가 되는 연수 ≒ 72 ÷ 연율(%)’이라는 암산의 기준입니다. 연 10%라면 약 7.2년, 연 5%라면 약 14.4년 만에 2배가 됩니다. 로그 계산을 쓴 정확한 값과 거의 일치합니다. |
| 전년 대비 | 올해의 값 ÷ 작년의 값입니다. 1년분의 증감률로, ‘전년 대비 110%’, ‘전년 대비 +10%’처럼 말합니다. CAGR은 이 전년 대비가 해마다 같았다고 할 때의 값에 해당합니다. |
먼저 알아 두면 좋은 내용
이 페이지의 계산을 ‘뜻을 이해하고’ 쓸 수 있도록, 미리 알아 두면 좋은 내용을 정리했습니다.
막히면 이 표의 내용으로 돌아가 복습하는 것이 지름길입니다.
| 비율과 백분율(초등학교 6학년, 11~12세) |
|
| 거듭제곱(중학교 1학년~고등학교, 12~18세) |
|
| 복리의 생각(중학교~고등학교의 수학·경제, 12~18세) |
|
| 거듭제곱근과 지수의 확장(고등학교 ‘지수와 로그’ 단원, 15~18세) |
|
| 로그(고등학교 ‘지수와 로그’ 단원, 15~18세) |
|
| 문자와 식, 등식의 변형(중학교 1~2학년, 12~14세) |
|
Excel로 계산하는 방법
| 초깃값 V0 | 1000 |
| 최종값 Vn | 1610.51 |
| 연수 n | 5 |
| CAGR r(%) | =((B2/B1)^(1/B3)-1)*100 |
| 초깃값 V0 | 1000 |
| CAGR r(%) | 10 |
| 연수 n | 3 |
| 최종값 Vn | =B1*(1+B2/100)^B3 |
| 최종값 Vn | 1331 |
| CAGR r(%) | 10 |
| 연수 n | 3 |
| 초깃값 V0 | =B1/(1+B2/100)^B3 |
| 초깃값 V0 | 1000 |
| 최종값 Vn(목표) | 2000 |
| CAGR r(%) | 10 |
| 연수 n | =LN(B2/B1)/LN(1+B3/100) |
| 올림한 연수 | =ROUNDUP(B4,0) |
| 초깃값 V0 | 1000 |
| 최종값 Vn | 1210 |
| 연수 n | 2 |
| 단순 평균 성장률 g(%) | =(B2/B1-1)/B3*100 |
예를 들어 첫 번째 표는 B4에 10(CAGR 10%), 두 번째 표는 B4에 1331(3년 뒤의 값), 세 번째 표는 B4에 1000(필요한 초깃값), 네 번째 표는 B4에 약 7.27(연수)과 B5에 8(올림한 연수), 다섯 번째 표는 B4에 10.5(단순 평균 성장률)가 표시됩니다.
‘^(1/B3)’이 ‘1/n제곱’, ‘LN’이 자연로그(밑이 \(e\)인 로그)입니다. 연수의 식은 ‘LOG10’이나 ‘LOG’를 써도 분자와 분모가 같은 함수라면 같은 답이 됩니다.
참고로 CAGR은 Excel의 함수 ‘=RRI(연수, 초깃값, 최종값)’으로도 구할 수 있습니다(첫 번째 표라면 ‘=RRI(B3,B1,B2)*100’).
Google 스프레드시트로 계산하는 방법
| 초깃값 V0 | 1000 |
| 최종값 Vn | 1610.51 |
| 연수 n | 5 |
| CAGR r(%) | =((B2/B1)^(1/B3)-1)*100 |
| 초깃값 V0 | 1000 |
| CAGR r(%) | 10 |
| 연수 n | 3 |
| 최종값 Vn | =B1*(1+B2/100)^B3 |
| 최종값 Vn | 1331 |
| CAGR r(%) | 10 |
| 연수 n | 3 |
| 초깃값 V0 | =B1/(1+B2/100)^B3 |
| 초깃값 V0 | 1000 |
| 최종값 Vn(목표) | 2000 |
| CAGR r(%) | 10 |
| 연수 n | =LN(B2/B1)/LN(1+B3/100) |
| 올림한 연수 | =ROUNDUP(B4,0) |
| 초깃값 V0 | 1000 |
| 최종값 Vn | 1210 |
| 연수 n | 2 |
| 단순 평균 성장률 g(%) | =(B2/B1-1)/B3*100 |
Python으로 계산하는 방법
import math
start_value = 1000 # 초깃값(예: 5년 전 매출, 단위는 만 원)
end_value = 1610.51 # 최종값(예: 올해 매출)
years = 5 # 연수
# 연평균 성장률(CAGR) = (최종값 ÷ 초깃값)^(1/연수) − 1
cagr = (end_value / start_value) ** (1 / years) - 1
print(f"CAGR: {cagr * 100:.2f}%")
# 참고: 단순 평균 성장률 = 전체 성장률 ÷ 연수
simple_avg = (end_value / start_value - 1) / years
print(f"단순 평균 성장률: {simple_avg * 100:.2f}%")
# 역산 1: 초깃값과 CAGR로 n년 뒤의 값
rate = 0.10 # CAGR(10%)
future_value = start_value * (1 + rate) ** 3
print(f"3년 뒤의 값: {future_value:.2f}")
# 역산 2: 초깃값, 목표값, CAGR로 목표에 도달할 때까지의 연수
target_value = 2000
years_needed = math.log(target_value / start_value) / math.log(1 + rate)
print(f"2배가 될 때까지의 연수: {years_needed:.2f}년(올림 {math.ceil(years_needed)}년)")
LaTeX 등 수식 언어로 쓰는 법(복사 가능)
r = (Vₙ ÷ V₀)^(1/n) − 1
r = \left(\dfrac{V_n}{V_0}\right)^{1/n} - 1
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>r</mi>
<mo>=</mo>
<msup>
<mrow>
<mo>(</mo>
<mfrac><msub><mi>V</mi><mi>n</mi></msub><msub><mi>V</mi><mn>0</mn></msub></mfrac>
<mo>)</mo>
</mrow>
<mrow><mn>1</mn><mo>/</mo><mi>n</mi></mrow>
</msup>
<mo>−</mo>
<mn>1</mn>
</mrow>
</math>
r = (V_n/V_0)^(1/n) - 1
(vn/v0)^(1/n) - 1
r := (V_n/V_0)^(1/n) - 1;
r = (V_n/V_0)^(1/n) - 1;
r = (V_n/V_0)^(1/n) - 1
Vₙ = V₀ × (1 + r)ⁿ
V_n = V_0 (1 + r)^{n}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>V</mi><mi>n</mi></msub>
<mo>=</mo>
<msub><mi>V</mi><mn>0</mn></msub>
<msup>
<mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>r</mi><mo>)</mo></mrow>
<mi>n</mi>
</msup>
</mrow>
</math>
V_n = V_0 (1 + r)^n
v0 (1 + r)^n
V_n := V_0*(1 + r)^n;
V_n = V_0*(1 + r)^n;
V_n = V_0 (1 + r)^n
V₀ = Vₙ ÷ (1 + r)ⁿ
V_0 = \dfrac{V_n}{(1 + r)^{n}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>V</mi><mn>0</mn></msub>
<mo>=</mo>
<mfrac>
<msub><mi>V</mi><mi>n</mi></msub>
<msup>
<mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>r</mi><mo>)</mo></mrow>
<mi>n</mi>
</msup>
</mfrac>
</mrow>
</math>
V_0 = V_n/(1 + r)^n
vn/(1 + r)^n
V_0 := V_n/(1 + r)^n;
V_0 = V_n/(1 + r)^n;
V_0 = V_n/(1 + r)^n
n = log(Vₙ ÷ V₀) ÷ log(1 + r)
n = \dfrac{\log\left(V_n / V_0\right)}{\log(1 + r)}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>n</mi>
<mo>=</mo>
<mfrac>
<mrow><mi>log</mi><mo>(</mo><msub><mi>V</mi><mi>n</mi></msub><mo>/</mo><msub><mi>V</mi><mn>0</mn></msub><mo>)</mo></mrow>
<mrow><mi>log</mi><mo>(</mo><mn>1</mn><mo>+</mo><mi>r</mi><mo>)</mo></mrow>
</mfrac>
</mrow>
</math>
n = log(V_n/V_0)/log(1 + r)
Log[vn/v0]/Log[1 + r]
n := log(V_n/V_0)/log(1 + r);
n = log(V_n/V_0)/log(1 + r);
n = log(V_n/V_0)/log(1 + r)
g = (Vₙ ÷ V₀ − 1) ÷ n
g = \dfrac{V_n / V_0 - 1}{n}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>g</mi>
<mo>=</mo>
<mfrac>
<mrow><msub><mi>V</mi><mi>n</mi></msub><mo>/</mo><msub><mi>V</mi><mn>0</mn></msub><mo>−</mo><mn>1</mn></mrow>
<mi>n</mi>
</mfrac>
</mrow>
</math>
g = (V_n/V_0 - 1)/n
(vn/v0 - 1)/n
g := (V_n/V_0 - 1)/n;
g = (V_n/V_0 - 1)/n;
g = (V_n/V_0 - 1)/n
ChatGPT 에게 물어서 계산하는 방법
당신은 사업 계획 도우미입니다. 다음 계산을 반드시 Python 코드를 실제로 실행해서 하고, 실행 결과의 숫자만을 근거로 답해 주세요(암산이나 추측으로 답하지 마세요). 어느 회사의 연 매출은 5년 전에 1,000만 원, 올해는 1,610.51만 원이었습니다. 다음 값을 각각 구해 주세요. 1. 연평균 성장률 CAGR((최종값 ÷ 초깃값)^(1/연수) − 1. %로 소수 둘째 자리까지) 2. 참고로 단순 평균 성장률((최종값 ÷ 초깃값 − 1) ÷ 연수. %)과, CAGR과 다른 이유를 1~2문장으로 3. 이 CAGR이 앞으로도 이어질 때 3년 뒤의 매출(초깃값 × (1 + CAGR)^3) 4. 올해 매출을 기점으로 같은 CAGR로 매출이 2배가 될 때까지의 연수(log(2) ÷ log(1 + CAGR). 소수와 올림한 연수 모두) 계산에 쓴 식과 실행 결과의 숫자를 보여 주세요.
사용법
-
1숫자 입력계산하고 싶은 숫자를 입력란에 입력합니다
-
2계산‘계산’ 버튼을 누릅니다
-
3결과 확인계산 결과가 바로 표시됩니다. 계산의 원리와 공식 해설도 같은 페이지에서 확인할 수 있습니다
DataChef의 특징
전문 지식 없이도 직관적이고 간단하게 사용
개인정보를 등록하지 않고도 이용할 수 있습니다
"다운로드"를 누르면 파일이 자동으로 삭제됩니다
출처 표기 불필요
상업적 이용 허가 연락도 필요 없습니다