Mean Time to Detect & Respond (MTTR) Calculator

ANALife Services AuthorityNational Calculator Authority›Mean Time to Detect & Respond (MTTR) Calculator

.calc-container { max-width: 640px; margin: 2rem 0; padding: 1.5rem; background: #fff; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); font-family: system-ui, -apple-system, sans-serif; } .calc-container h3 { font-family: Georgia, serif; font-size: 1.15rem; color: #1a1a1a; margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-row { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; flex-wrap: wrap; } .calc-row label { min-width: 160px; font-size: 0.9rem; color: #333; font-weight: 500; } .calc-row input[type="number"], .calc-row select { flex: 1; min-width: 120px; max-width: 200px; padding: 0.5rem 0.6rem; border: 1px solid #ccc; border-radius: 4px; font-size: 0.9rem; font-family: system-ui, sans-serif; color: #1a1a1a; background: #fafaf8; } .calc-row input:focus, .calc-row select:focus { outline: none; border-color: var(--ac, #3d5a80); box-shadow: 0 0 0 2px rgba(26,74,138,0.12); } .calc-row .unit { font-size: 0.82rem; color: #888; min-width: 30px; } .calc-btn { display: inline-block; margin-top: 0.5rem; padding: 0.55rem 1.5rem; background: var(--ac, #3d5a80); color: #fff; border: none; border-radius: 4px; font-size: 0.9rem; font-weight: 600; cursor: pointer; font-family: system-ui, sans-serif; } .calc-btn:hover { opacity: 0.9; } .calc-result { margin-top: 1.25rem; padding: 1rem 1.25rem; background: #f0f6fc; border-left: 3px solid var(--ac, #3d5a80); border-radius: 0 6px 6px 0; display: none; } .calc-result.visible { display: block; } .calc-result-label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #666; margin-bottom: 0.25rem; } .calc-result-value { font-size: 1.6rem; font-weight: 700; color: var(--ac, #3d5a80); } .calc-result-detail { font-size: 0.85rem; color: #555; margin-top: 0.5rem; line-height: 1.5; } .calc-note { margin-top: 1rem; font-size: 0.8rem; color: #888; font-style: italic; } .calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 0.75rem; } .calc-grid-item { padding: 0.6rem 0.8rem; background: #f8f9fa; border-radius: 4px; border: 1px solid #eee; } .calc-grid-item .label { font-size: 0.75rem; color: #888; text-transform: uppercase; letter-spacing: 0.04em; } .calc-grid-item .value { font-size: 1.1rem; font-weight: 600; color: #1a1a1a; } @media (max-width: 720px) { .calc-row { flex-direction: column; align-items: flex-start; gap: 0.3rem; } .calc-row label { min-width: auto; } .calc-row input[type="number"], .calc-row select { max-width: 100%; width: 100%; } .calc-grid { grid-template-columns: 1fr; } } .calc-chart { margin: 1rem 0; text-align: center; } .calc-chart svg { max-width: 100%; height: auto; } .calc-chart-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem 1.2rem; margin-top: 0.6rem; font-size: 0.8rem; color: #555; } .calc-chart-legend span { display: inline-flex; align-items: center; gap: 0.3rem; } .calc-chart-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 2px; font-style: normal; } .calc-related { max-width: 640px; margin: 2rem 0 1rem; padding: 1.25rem 1.5rem; background: #f8f9fa; border: 1px solid #e8e8e8; border-radius: 8px; } .calc-related h3 { font-family: Georgia, serif; font-size: 1rem; color: #1a1a1a; margin: 0 0 0.75rem; padding-bottom: 0.4rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-related-list { list-style: none; padding: 0; margin: 0 0 0.75rem; display: grid; grid-template-columns: 1fr 1fr; gap: 0.4rem 1.5rem; } .calc-related-list li a { font-size: 0.88rem; color: var(--ac, #3d5a80); text-decoration: none; } .calc-related-list li a:hover { text-decoration: underline; } .calc-browse-all { margin: 0.5rem 0 0; font-size: 0.9rem; font-weight: 600; } .calc-browse-all a { color: var(--ac, #3d5a80); text-decoration: none; } .calc-browse-all a:hover { text-decoration: underline; } @media (max-width: 720px) { .calc-related-list { grid-template-columns: 1fr; } }

Mean Time to Detect & Respond (MTTR) Calculator

Calculate your organization's Mean Time to Detect (MTTD) and Mean Time to Respond (MTTR) metrics based on incident data. These metrics are critical KPIs for security operations and IT teams.

Number of Incidents

Enter how many incidents to analyze (1–20)

Incident # Occurrence Time (hrs from epoch) Detection Time (hrs) Resolution Time (hrs)

Display Results In

Minutes Hours Days

Calculate MTTD & MTTR

#### Formulas

Mean Time to Detect (MTTD):

MTTD = Σ (Detection Timei − Occurrence Timei) / N

Mean Time to Respond / Resolve (MTTR):

MTTR = Σ (Resolution Timei − Occurrence Timei) / N

Mean Time to Contain (MTTC):

MTTC = MTTR − MTTD  (average time from detection to resolution)

Where N is the total number of incidents analyzed.

#### Assumptions & References

(function() { // Initialize table on load window.meaUpdateRows = function() { var raw = document.getElementById('mea-num-incidents').value; var n = parseInt(raw, 10); if (isNaN(n) || n 20) n = 20; document.getElementById('mea-num-incidents').value = n;

var tbody = document.getElementById('mea-tbody'); var existing = tbody.rows.length;

// Add missing rows for (var i = existing + 1; i ' + i + '' + '' + '' + '' + '' + '' + ''; tbody.appendChild(tr); }

// Remove extra rows while (tbody.rows.length > n) { tbody.deleteRow(tbody.rows.length - 1); } };

window.meaCalc = function() { var errDiv = document.getElementById('mea-error'); var resDiv = document.getElementById('mea-result'); errDiv.style.display = 'none'; resDiv.style.display = 'none';

var n = parseInt(document.getElementById('mea-num-incidents').value, 10); if (isNaN(n) || n 20) { errDiv.textContent = 'Please enter a valid number of incidents (1–20).'; errDiv.style.display = 'block'; return; }

var unit = document.getElementById('mea-time-unit').value; var unitLabel = unit === 'minutes' ? 'min' : unit === 'hours' ? 'hr' : 'day'; var convFactor = unit === 'minutes' ? 60 : unit === 'hours' ? 1 : 1/24;

var totalDetect = 0, totalRespond = 0; var rows = [];

for (var i = 1; i ' + '' + r.i + '' + '' + (r.ttd * convFactor).toFixed(2) + ' ' + unitLabel + '' + '' + (r.ttc * convFactor).toFixed(2) + ' ' + unitLabel + '' + '' + (r.ttr * convFactor).toFixed(2) + ' ' + unitLabel + '' + ''; }).join('');

document.getElementById('mea-result-content').innerHTML = '### Results ' +

'' + '' + 'MTTD' + '' + mttd.toFixed(2) + '' + '' + unitLabel + '' + '' + '' + 'MTTC' + '' + mttc.toFixed(2) + '' + '' + unitLabel + '' + '' + '' + 'MTTR' + '' + mttr.toFixed(2) + '' + '' + unitLabel + '' + '' + '' +

'' + 'Benchmark Assessment:' + 'MTTD: ' + mttdRating + '' + 'MTTR: ' + mttrRating + '' +

'#### Per-Incident Breakdown ' + '' + '' + 'Incident' + 'Time to Detect' + 'Time to Contain' + 'Time to Resolve' + '' + '' + tableRows + '' + '' +

'' + 'N = ' + n + ' incidents  |  ' + 'MTTD = ' + mttd.toFixed(4) + ' ' + unitLabel + '  |  ' + 'MTTC = ' + mttc.toFixed(4) + ' ' + unitLabel + '  |  ' + 'MTTR = ' + mttr.toFixed(4) + ' ' + unitLabel + '

';

resDiv.style.display = 'block'; };

// Build initial table meaUpdateRows(); })();

More Calculators

Read Next

Study Time Planner Authority Network America › Life Services Authority › National Calculator Authority .calc-container { max-width: 640px;...

References