Growth Rate Calculator
This calculator helps you determine the growth rate of a value over a specific period. Growth rate is a fundamental concept used in many fields, including finance, biology, economics, and demography, to understand how a quantity changes over time.
Initial Value:
Final Value:
Time Period (in years):
Calculate Growth Rate
function calculateGrowthRate() {
var initialValue = parseFloat(document.getElementById("initialValue").value);
var finalValue = parseFloat(document.getElementById("finalValue").value);
var timePeriod = parseFloat(document.getElementById("timePeriod").value);
var growthRateResult = document.getElementById("growthRateResult");
var annualGrowthRateResult = document.getElementById("annualGrowthRateResult");
if (isNaN(initialValue) || isNaN(finalValue) || isNaN(timePeriod) || initialValue <= 0 || timePeriod <= 0) {
growthRateResult.textContent = "Please enter valid positive numbers for all fields.";
annualGrowthRateResult.textContent = "";
return;
}
// Calculate total growth
var totalGrowth = finalValue – initialValue;
// Calculate overall growth rate (as a decimal)
var overallGrowthRateDecimal = totalGrowth / initialValue;
// Calculate overall growth rate (as a percentage)
var overallGrowthRatePercentage = overallGrowthRateDecimal * 100;
// Calculate Compound Annual Growth Rate (CAGR)
// CAGR = (Ending Value / Beginning Value)^(1 / Number of Years) – 1
var cagrDecimal = Math.pow((finalValue / initialValue), (1 / timePeriod)) – 1;
var cagrPercentage = cagrDecimal * 100;
growthRateResult.innerHTML = "Overall Growth Rate: " + overallGrowthRatePercentage.toFixed(2) + "%";
annualGrowthRateResult.innerHTML = "Compound Annual Growth Rate (CAGR): " + cagrPercentage.toFixed(2) + "%";
}
.calculator-container {
font-family: sans-serif;
max-width: 500px;
margin: 20px auto;
padding: 20px;
border: 1px solid #ccc;
border-radius: 8px;
box-shadow: 2px 2px 8px rgba(0,0,0,0.1);
}
.calculator-container h2 {
text-align: center;
margin-bottom: 20px;
}
.input-section {
margin-bottom: 15px;
}
.input-section label {
display: block;
margin-bottom: 5px;
font-weight: bold;
}
.input-section input[type="number"] {
width: calc(100% – 22px);
padding: 10px;
border: 1px solid #ccc;
border-radius: 4px;
box-sizing: border-box;
}
.calculator-container button {
width: 100%;
padding: 10px 15px;
background-color: #007bff;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 16px;
margin-bottom: 20px;
}
.calculator-container button:hover {
background-color: #0056b3;
}
#result {
margin-top: 20px;
padding: 15px;
background-color: #f8f9fa;
border: 1px solid #e0e0e0;
border-radius: 4px;
}
#result h3 {
margin-top: 0;
margin-bottom: 10px;
}
#growthRateResult, #annualGrowthRateResult {
margin-bottom: 5px;
font-size: 1.1em;
}