Customer Retention Rate (CRR) is a critical metric for businesses, particularly in SaaS, subscription models, and service-based industries. It measures the percentage of customers a company retains over a specific period. Understanding how to calculate average retention rate helps businesses evaluate customer loyalty, service quality, and long-term viability.
The Retention Rate Formula
To calculate your retention rate accurately, you need three specific data points for a defined time period (e.g., a month, a quarter, or a year). The standard formula used by analysts and investors is:
Retention Rate = ((E – N) / S) × 100
Where:
E = Number of customers at the End of the period.
N = Number of New customers acquired during the period.
S = Number of customers at the Start of the period.
The logic behind subtracting new customers (N) from the end count (E) is crucial. You want to measure how many of the original customers stayed, not how good your sales team was at bringing in new ones. By isolating the existing customer base, you get a true picture of loyalty.
Example Calculation
Let's look at a realistic scenario for a subscription box service:
You start the quarter with 200 customers (S).
During the quarter, you lose 20 customers but gain 40 new customers (N).
At the end of the quarter, you have 220 customers (E) (200 – 20 + 40).
A 90% retention rate means you kept 90% of your original customer base during that period.
Why Retention Rate Matters
Cost Efficiency: It is statistically cheaper to retain an existing customer than to acquire a new one. A high retention rate indicates efficient marketing spend and strong product-market fit.
Customer Lifetime Value (LTV): Higher retention directly correlates to a higher LTV. The longer customers stay, the more revenue they generate over time, allowing you to spend more on acquisition eventually.
Churn Indication: Retention and Churn are two sides of the same coin. If your Retention Rate is 90%, your Churn Rate is 10%. Monitoring retention helps you spot churn trends early before they impact your bottom line.
What is a "Good" Retention Rate?
Benchmarks vary significantly by industry:
SaaS (Enterprise): often targets >90% annual retention.
SaaS (SMB): often sees around 80% annual retention.
E-commerce: typically lower, around 30-40% depending on the product nature.
Media/Streaming: generally targets >85% monthly retention.
function calculateRetention() {
// Get input values
var startS = document.getElementById('startCustomers').value;
var newN = document.getElementById('newCustomers').value;
var endE = document.getElementById('endCustomers').value;
// Convert to numbers
var s = parseFloat(startS);
var n = parseFloat(newN);
var e = parseFloat(endE);
// Validation
if (isNaN(s) || isNaN(n) || isNaN(e)) {
alert("Please enter valid numbers in all fields.");
return;
}
if (s <= 0) {
alert("Start Customers (S) must be greater than 0.");
return;
}
if (n < 0 || e 100% (illogical typically, unless reactivations are not counted as 'new'), cap it or show raw
// Standard logic assumes max retention is 100% of existing cohort.
// If (E-N) > S, it implies reactivations were not tracked as New. We will cap at 100% for display or show real calc.
// Let's stick to raw math but handle churn logically.
var churnRate = 100 – retentionRate;
// Calculate raw number of lost customers: S – (E – N)
var lostCustomers = s – retainedCustomers;
// Display Results
document.getElementById('resultsArea').style.display = "block";
// Formatting to 1 decimal place
document.getElementById('retentionResult').innerHTML = retentionRate.toFixed(1) + "%";
document.getElementById('churnResult').innerHTML = churnRate.toFixed(1) + "%";
// Lost customers logic check
if(lostCustomers = 90) {
resultBox.style.borderLeftColor = "#28a745"; // Green
} else if (retentionRate >= 70) {
resultBox.style.borderLeftColor = "#ffc107"; // Yellow
} else {
resultBox.style.borderLeftColor = "#dc3545"; // Red
}
}