The Net Reproduction Rate (NRR) is a fundamental demographic metric used to measure the average number of daughters a woman would have if she passed through her lifetime conforming to the age-specific fertility and mortality rates of a specific period. Unlike the Gross Reproduction Rate (GRR), the NRR accounts for the fact that some women will die before reaching or completing their childbearing years.
The NRR Formula
The calculation is performed by summing the products of Age-Specific Fertility Rates (ASFR), the probability of surviving to that age (lx), and the proportion of female births. The standard formula for 5-year age cohorts is:
NRR = i × Σ (ASFRx × lx) × (Female Birth Ratio)
Where:
i: The width of the age interval (usually 5 years).
ASFRx: The fertility rate for women in age group x.
lx: The probability of a newborn female surviving to the midpoint of age group x.
Interpreting the Results
The NRR is a crucial indicator of population replacement:
NRR > 1.0: Each generation of mothers is producing more than one daughter on average. The population is likely to grow in the long term.
NRR = 1.0: This is "Replacement Level Fertility." Each generation exactly replaces itself.
NRR < 1.0: Each generation is failing to produce enough daughters to replace themselves, suggesting a potential long-term population decline.
Example Calculation
Suppose the sum of (ASFR × lx) for all age cohorts (15-49) is 0.45, the age interval is 5 years, and the female birth ratio is 0.488.
Calculation: 5 × 0.45 × 0.488 = 1.098
Since 1.098 is greater than 1, this population is growing.
function calculateNRR() {
var femaleRatio = parseFloat(document.getElementById('female_ratio').value);
var interval = parseFloat(document.getElementById('cohort_interval').value);
var sumProduct = 0;
// Iterate through the 7 cohorts defined in the table
for (var i = 1; i 1.0) {
msg = "The population is expected to grow (Above replacement level).";
bgColor = "#e8f5e9";
} else if (nrr === 1.0) {
msg = "The population is at exact replacement level.";
bgColor = "#fff3e0";
} else {
msg = "The population is expected to decrease (Below replacement level).";
bgColor = "#ffebee";
}
interpretationDisplay.innerHTML = msg;
resultArea.style.backgroundColor = bgColor;
// Smooth scroll to result
resultArea.scrollIntoView({ behavior: 'smooth', block: 'nearest' });
}