Calculate your medical practice's revenue cycle efficiency.
$
Total amount billed to patients and payers before any adjustments.
$
Amounts you cannot collect due to payer contracts (Allowed Amount difference).
$
Total cash collected from payers and patients.
Net Collection Rate0.00%
Gross Charges$0.00
Less: Contractual Adjustments-$0.00
Net Collectible Amount$0.00
Total Payments Received$0.00
Uncollected Revenue$0.00
Understanding Net Collection Rate (NCR)
The Net Collection Rate (NCR), also known as the Adjusted Collection Rate, is one of the most critical Key Performance Indicators (KPIs) for medical practices and healthcare organizations. Unlike the Gross Collection Rate, which looks at total billings, the Net Collection Rate measures the effectiveness of your revenue cycle management (RCM) by comparing payments received against the amount you were actually allowed to collect.
The Net Collection Rate Formula
To calculate your NCR accurately, you must account for contractual adjustments. These adjustments represent the difference between your standard fee schedule and the "allowed amount" negotiated with insurance payers. This money is not collectible, so it shouldn't be counted against your collection performance.
Total Charges: The total dollar amount billed for services rendered.
Contractual Adjustments: The portion of the bill that is written off due to provider contracts with insurers.
Total Payments: The actual revenue deposited into the bank from payers and patients.
What is a "Good" Net Collection Rate?
Because NCR factors out contractual write-offs, a healthy medical practice should have a very high percentage. This metric essentially asks: "Of the money we are contractually owed, how much did we get?"
95% – 100%: Excellent. Your Revenue Cycle Management is highly effective.
90% – 94%: Average. There is room for improvement, likely in denial management or patient collections.
Below 90%: Poor. The practice is losing significant revenue due to avoidable errors, unworked denials, or bad debt.
Net vs. Gross Collection Rate
It is vital not to confuse NCR with Gross Collection Rate (GCR). GCR is simply Total Payments / Total Charges. Because medical fee schedules are often set higher than insurance reimbursement rates, a GCR of 40-50% might be normal for some specialties. However, an NCR of 50% indicates a catastrophic failure in billing processes.
How to Improve Your NCR
If your calculation shows a rate below 95%, consider these strategies:
Improve Upfront Collections: Collect copays and deductibles at the time of service.
Denial Management: Aggressively work on claim denials and rejections. Ensure your team is correcting and resubmitting claims promptly.
Clean Claim Rate: Focus on coding accuracy to prevent denials before they happen.
Update Patient Demographics: Ensure insurance information is verified before every visit to avoid eligibility denials.
function calculateNCR() {
// Get input values
var chargesInput = document.getElementById('totalCharges').value;
var adjustmentsInput = document.getElementById('adjustments').value;
var paymentsInput = document.getElementById('totalPayments').value;
var errorDiv = document.getElementById('errorDisplay');
var resultsArea = document.getElementById('resultsArea');
// Reset error
errorDiv.style.display = 'none';
errorDiv.innerText = ";
// Validation
if (chargesInput === " || adjustmentsInput === " || paymentsInput === ") {
errorDiv.style.display = 'block';
errorDiv.innerText = 'Please fill in all fields to calculate.';
resultsArea.style.display = 'none';
return;
}
var charges = parseFloat(chargesInput);
var adjustments = parseFloat(adjustmentsInput);
var payments = parseFloat(paymentsInput);
if (isNaN(charges) || isNaN(adjustments) || isNaN(payments)) {
errorDiv.style.display = 'block';
errorDiv.innerText = 'Please enter valid numeric values.';
return;
}
if (charges < 0 || adjustments < 0 || payments < 0) {
errorDiv.style.display = 'block';
errorDiv.innerText = 'Values cannot be negative.';
return;
}
// Logic
var netCharges = charges – adjustments;
// Prevent division by zero or negative net charges
if (netCharges <= 0) {
errorDiv.style.display = 'block';
errorDiv.innerText = 'Net Collectible Amount (Charges – Adjustments) must be greater than zero.';
resultsArea.style.display = 'none';
return;
}
var ncrDecimal = payments / netCharges;
var ncrPercentage = ncrDecimal * 100;
var uncollected = netCharges – payments;
// Display Formatting
var formatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
});
document.getElementById('displayCharges').innerText = formatter.format(charges);
document.getElementById('displayAdjustments').innerText = '-' + formatter.format(adjustments);
document.getElementById('displayNetCharges').innerText = formatter.format(netCharges);
document.getElementById('displayPayments').innerText = formatter.format(payments);
// Handle negative uncollected (overpayment) scenario visually
if (uncollected = 95) {
statusDiv.innerText = 'Performance: EXCELLENT';
statusDiv.classList.add('status-good');
} else if (ncrPercentage >= 90) {
statusDiv.innerText = 'Performance: AVERAGE';
statusDiv.classList.add('status-warning');
} else {
statusDiv.innerText = 'Performance: NEEDS IMPROVEMENT';
statusDiv.classList.add('status-bad');
}
// Show results
resultsArea.style.display = 'block';
}