Total losses below the split point (e.g., $18,500)
Total losses exceeding the split point
Derived from NCCI class codes/payrolls
Derived from NCCI class codes/payrolls
Stabilizing value based on expected losses
Ratio between 0.00 and 1.00
Total Actual Losses:–
Total Expected Losses:–
Ratable Excess Losses:–
Your Experience Mod (EMR)
1.00
Average
Understanding Your NCCI Experience Modification Rate
The Experience Modification Rate (EMR), often called the "Ex-Mod" or "X-Mod," is a critical factor in determining your workers' compensation insurance premiums. It is a multiplier used by insurance carriers to adjust your premium based on your specific loss history compared to the average in your industry.
A standard EMR is 1.0. This means your loss experience is exactly average for your industry classification. If your EMR is lower than 1.0, you receive a credit (lower premiums); if it is higher than 1.0, you receive a debit (higher premiums).
How the Calculation Works
The National Council on Compensation Insurance (NCCI) uses a complex actuarial formula to determine your rate. While the variables differ by state and year, the core logic relies on comparing "Actual Losses" against "Expected Losses."
Ap (Actual Primary Losses): The cost of claims below a specific split point (historically $5,000, but now often higher, such as $18,500).
Ae (Actual Excess Losses): The remaining cost of claims above the split point.
E (Expected Losses): What the NCCI predicts your losses should be based on your payroll and industry codes.
W (Weighting Value): A factor that determines how much influence your excess losses have on the calculation. Smaller companies have lower W values.
B (Ballast Value): A stabilizing number added to both the numerator and denominator to prevent one severe accident from skewing the EMR too drastically for small companies.
Interpreting Your Score
The result of this calculation directly impacts your bottom line:
Below 1.0 (Credit Mod): Indicates you are safer than average. If your EMR is 0.85, you pay roughly 85% of the standard manual premium.
Above 1.0 (Debit Mod): Indicates higher claim frequency or severity than average. An EMR of 1.25 means you pay roughly 125% of the standard premium.
Exactly 1.0: Average industry performance or a new business with no loss history.
Why Frequency Matters More Than Severity
The NCCI formula is designed to penalize frequency (many small claims) more than severity (one large claim). This is because frequency is statistically a better predictor of future risk. The formula achieves this by counting "Primary Losses" (the first portion of every claim) fully, while "Excess Losses" are discounted by the Weighting Value.
To improve your EMR, focus on safety programs that eliminate small, frequent accidents, and implement Return-to-Work programs to keep claim costs below the split point.
function calculateEMR() {
// 1. Get Inputs
var ap = parseFloat(document.getElementById('actualPrimary').value) || 0;
var ae = parseFloat(document.getElementById('actualExcess').value) || 0;
var ep = parseFloat(document.getElementById('expectedPrimary').value) || 0;
var ee = parseFloat(document.getElementById('expectedExcess').value) || 0;
var ballast = parseFloat(document.getElementById('ballastValue').value) || 0;
var weight = parseFloat(document.getElementById('weightingValue').value) || 0;
// 2. Validation
if (weight > 1) weight = 1;
if (weight 0) {
emr = numerator / denominator;
}
// 5. Update DOM
document.getElementById('resultsSection').style.display = 'block';
// Format Currency
var currencyFormatter = new Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
maximumFractionDigits: 0
});
document.getElementById('displayActualTotal').innerText = currencyFormatter.format(totalActual);
document.getElementById('displayExpectedTotal').innerText = currencyFormatter.format(totalExpected);
document.getElementById('displayRatableExcess').innerText = currencyFormatter.format(ratableExcess);
// Update EMR Display
var finalEmr = emr.toFixed(2);
document.getElementById('emrResult').innerText = finalEmr;
// Update Status Badge
var statusEl = document.getElementById('emrStatus');
statusEl.className = 'emr-status'; // reset classes
if (finalEmr 1.0) {
statusEl.innerText = "Debit Mod (High Risk)";
statusEl.classList.add('status-debit');
} else {
statusEl.innerText = "Average";
statusEl.classList.add('status-neutral');
}
}