{"product_id":"trir","title":"TRIR Calculator","description":"\u003cstyle\u003e\n.trir-calculator {\n  --ink: #0f172a;\n  --muted: #475569;\n  --border: #e2e8f0;\n  --surface: #ffffff;\n  --tint: #f8fafc;\n  --primary: #1d4ed8;\n  --accent: #c2410c;\n  --accent-hover: #9a3412;\n  --chart-1: #1e40af;\n  --chart-2: #0d9488;\n  --chart-3: #7c3aed;\n  --chart-4: #be185d;\n  --chart-5: #334155;\n  color: var(--ink);\n  background: var(--surface);\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .06);\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  font-size: 15px;\n  line-height: 1.55;\n  max-width: 1200px;\n  margin: 0 auto;\n  overflow-wrap: anywhere;\n}\n.trir-calculator,\n.trir-calculator *,\n.trir-calculator *::before,\n.trir-calculator *::after {\n  box-sizing: border-box;\n}\n.trir-calculator * {\n  min-width: 0;\n}\n.trir-calculator button,\n.trir-calculator input,\n.trir-calculator select,\n.trir-calculator textarea {\n  font: inherit;\n}\n.trir-calculator button,\n.trir-calculator input {\n  min-height: 44px;\n}\n.trir-calculator button:focus-visible,\n.trir-calculator input:focus-visible,\n.trir-calculator a:focus-visible {\n  outline: 3px solid var(--primary);\n  outline-offset: 2px;\n}\n.trir-shell {\n  padding: 24px;\n}\n.trir-header {\n  display: grid;\n  gap: 12px;\n  border-bottom: 1px solid var(--border);\n  padding-bottom: 20px;\n}\n.trir-header h2,\n.trir-section-heading,\n.trir-education h2,\n.trir-education h3 {\n  color: var(--ink);\n  margin: 0;\n}\n.trir-header h2 {\n  font-size: 24px;\n  font-weight: 700;\n  line-height: 1.25;\n}\n.trir-header p,\n.trir-section-intro,\n.trir-helper,\n.trir-note,\n.trir-caption,\n.trir-education p,\n.trir-education li {\n  color: var(--muted);\n}\n.trir-header p {\n  margin: 0;\n  max-width: 760px;\n}\n.trir-pills {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n}\n.trir-pill {\n  align-items: center;\n  background: var(--tint);\n  border: 1px solid var(--border);\n  border-radius: 999px;\n  color: var(--muted);\n  display: inline-flex;\n  font-size: 13px;\n  font-weight: 600;\n  gap: 6px;\n  line-height: 1.3;\n  padding: 6px 10px;\n}\n.trir-pill strong {\n  color: var(--ink);\n  font-variant-numeric: tabular-nums;\n}\n.trir-toolbar {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n  padding: 20px 0;\n}\n.trir-button {\n  align-items: center;\n  border: 1px solid transparent;\n  border-radius: 6px;\n  cursor: pointer;\n  display: inline-flex;\n  font-size: 15px;\n  font-weight: 650;\n  gap: 10px;\n  justify-content: center;\n  line-height: 1.1;\n  padding: 12px 18px;\n  text-decoration: none;\n  white-space: nowrap;\n}\n.trir-button:hover {\n  box-shadow: 0 2px 6px rgba(15, 23, 42, .12);\n}\n.trir-button-primary {\n  background: var(--accent);\n  color: #ffffff;\n}\n.trir-button-primary:hover,\n.trir-button-primary:active {\n  background: var(--accent-hover);\n}\n.trir-button-secondary {\n  background: var(--surface);\n  border-color: #64748b;\n  color: var(--ink);\n}\n.trir-button-icon {\n  height: 20px;\n  width: 20px;\n}\n.trir-workspace {\n  display: grid;\n  gap: 24px;\n  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);\n}\n.trir-panel,\n.trir-chart-card,\n.trir-table-card,\n.trir-education {\n  background: var(--surface);\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  box-shadow: 0 1px 2px rgba(15, 23, 42, .04);\n}\n.trir-panel,\n.trir-chart-card,\n.trir-table-card {\n  padding: 20px;\n}\n.trir-panel {\n  align-content: start;\n  display: grid;\n  gap: 18px;\n}\n.trir-section-heading {\n  font-size: 18px;\n  font-weight: 650;\n  line-height: 1.35;\n}\n.trir-section-intro {\n  font-size: 13px;\n  font-weight: 500;\n  margin: -8px 0 0;\n}\n.trir-fields {\n  display: grid;\n  gap: 16px;\n}\n.trir-field {\n  align-content: start;\n  display: grid;\n  gap: 8px;\n}\n.trir-label {\n  color: var(--ink);\n  font-size: 14px;\n  font-weight: 600;\n}\n.trir-input-wrap {\n  align-items: center;\n  display: flex;\n  position: relative;\n}\n.trir-input {\n  appearance: none;\n  background: #ffffff;\n  border: 1px solid #64748b;\n  border-radius: 6px;\n  color: var(--ink);\n  font-size: 15px;\n  font-variant-numeric: tabular-nums;\n  line-height: 1.25;\n  padding: 10px 44px 10px 12px;\n  width: 100%;\n}\n.trir-input:hover {\n  border-color: #64748b;\n}\n.trir-unit {\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 600;\n  pointer-events: none;\n  position: absolute;\n  right: 12px;\n}\n.trir-helper {\n  font-size: 13px;\n  font-weight: 500;\n  line-height: 1.45;\n  margin: 0;\n  min-height: 38px;\n}\n.trir-error {\n  color: #b91c1c;\n  display: none;\n  font-size: 13px;\n  font-weight: 600;\n  margin: 0;\n}\n.trir-field.trir-has-error .trir-input {\n  border-color: #b91c1c;\n}\n.trir-field.trir-has-error .trir-error {\n  display: block;\n}\n.trir-formula {\n  background: var(--tint);\n  border: 1px solid var(--border);\n  border-radius: 6px;\n  color: var(--ink);\n  font-size: 14px;\n  padding: 12px;\n}\n.trir-formula code {\n  color: var(--primary);\n  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;\n  font-size: 13px;\n}\n.trir-results {\n  align-content: start;\n  display: grid;\n  gap: 16px;\n}\n.trir-primary-result {\n  background: var(--tint);\n  border: 1px solid var(--border);\n  border-left: 4px solid var(--primary);\n  border-radius: 8px;\n  display: grid;\n  gap: 4px;\n  padding: 18px;\n}\n.trir-primary-result span {\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 600;\n}\n.trir-primary-result strong {\n  color: var(--ink);\n  font-size: 30px;\n  font-variant-numeric: tabular-nums;\n  font-weight: 700;\n  line-height: 1.15;\n}\n.trir-primary-result p {\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n  margin: 4px 0 0;\n}\n.trir-result-grid {\n  display: grid;\n  gap: 12px;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n}\n.trir-result-card {\n  border: 1px solid var(--border);\n  border-radius: 8px;\n  display: grid;\n  gap: 4px;\n  padding: 14px;\n}\n.trir-result-card span {\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 600;\n}\n.trir-result-card strong {\n  color: var(--ink);\n  font-size: 20px;\n  font-variant-numeric: tabular-nums;\n  font-weight: 700;\n}\n.trir-status {\n  align-items: center;\n  display: inline-flex;\n  font-size: 13px;\n  font-weight: 700;\n  gap: 8px;\n}\n.trir-status::before {\n  background: #64748b;\n  border-radius: 50%;\n  content: \"\";\n  height: 10px;\n  width: 10px;\n}\n.trir-status[data-band=\"low\"]::before {\n  background: var(--chart-2);\n}\n.trir-status[data-band=\"moderate\"]::before {\n  background: var(--chart-3);\n}\n.trir-status[data-band=\"high\"]::before {\n  background: var(--chart-4);\n}\n.trir-section {\n  margin-top: 24px;\n}\n.trir-chart-card,\n.trir-table-card {\n  display: grid;\n  gap: 16px;\n}\n.trir-chart-head {\n  display: grid;\n  gap: 4px;\n}\n.trir-chart-head p {\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 500;\n  margin: 0;\n}\n.trir-chart-cluster {\n  align-items: start;\n  display: grid;\n  gap: 24px;\n  grid-template-columns: minmax(0, 1.35fr) minmax(220px, .65fr);\n  margin: 0 auto;\n  max-width: 860px;\n  width: 100%;\n}\n.trir-plot-wrap {\n  display: grid;\n  gap: 12px;\n  justify-items: stretch;\n}\n.trir-chart-svg {\n  display: block;\n  height: auto;\n  max-height: 300px;\n  width: 100%;\n}\n.trir-chart-side {\n  align-self: stretch;\n  display: grid;\n  gap: 16px;\n}\n.trir-legend {\n  display: grid;\n  gap: 10px;\n}\n.trir-legend-row {\n  align-items: center;\n  display: grid;\n  font-size: 13px;\n  font-weight: 600;\n  gap: 8px 12px;\n  grid-template-columns: 12px minmax(80px, max-content) max-content;\n  justify-content: start;\n}\n.trir-swatch {\n  border-radius: 3px;\n  height: 12px;\n  width: 12px;\n}\n.trir-legend-value {\n  color: var(--ink);\n  font-variant-numeric: tabular-nums;\n}\n.trir-chart-summary {\n  border-collapse: collapse;\n  font-size: 13px;\n  width: 100%;\n}\n.trir-chart-summary th,\n.trir-chart-summary td {\n  border-bottom: 1px solid var(--border);\n  padding: 8px 6px;\n  text-align: left;\n}\n.trir-chart-summary th {\n  color: var(--muted);\n  font-weight: 650;\n}\n.trir-chart-summary td:last-child,\n.trir-chart-summary th:last-child {\n  font-variant-numeric: tabular-nums;\n  text-align: right;\n}\n.trir-caption,\n.trir-table-note {\n  background: var(--tint);\n  border: 1px solid var(--border);\n  border-radius: 6px;\n  font-size: 13px;\n  font-weight: 500;\n  margin-top: 16px;\n  padding: 10px 12px;\n}\n.trir-empty-state {\n  background: var(--tint);\n  border: 1px dashed #64748b;\n  border-radius: 6px;\n  color: var(--muted);\n  font-size: 13px;\n  font-weight: 600;\n  padding: 16px;\n  text-align: center;\n}\n.trir-hidden {\n  display: none !important;\n}\n.trir-safe-chart-stack .trir-chart-cluster {\n  grid-template-columns: minmax(0, 1fr);\n  row-gap: 24px;\n}\n.trir-safe-chart-stack .trir-chart-side {\n  margin-top: 0;\n}\n.trir-safe-chart-stack .trir-caption {\n  margin-top: 20px;\n}\n.trir-table-overflow {\n  max-width: 100%;\n  overflow-x: auto;\n  padding-bottom: 2px;\n}\n.trir-table {\n  border-collapse: collapse;\n  min-width: 620px;\n  width: 100%;\n}\n.trir-table th,\n.trir-table td {\n  border-bottom: 1px solid var(--border);\n  padding: 11px 12px;\n  text-align: left;\n  vertical-align: top;\n}\n.trir-table th {\n  background: #0f2747;\n  color: #ffffff;\n  font-size: 13px;\n  font-weight: 700;\n}\n.trir-table td {\n  color: var(--ink);\n  font-size: 14px;\n}\n.trir-table td:nth-child(n+2) {\n  font-variant-numeric: tabular-nums;\n}\n.trir-table tbody tr:hover {\n  background: var(--tint);\n}\n.trir-safe-table-stack .trir-table-overflow {\n  height: auto;\n  max-height: none;\n}\n.trir-safe-table-stack .trir-table-note {\n  margin-top: 20px;\n}\n.trir-education {\n  margin-top: 24px;\n  padding: 24px;\n}\n.trir-education-content {\n  display: grid;\n  gap: 24px;\n  max-width: 900px;\n}\n.trir-education section {\n  display: grid;\n  gap: 10px;\n}\n.trir-education h2 {\n  font-size: 20px;\n  font-weight: 700;\n}\n.trir-education h3 {\n  font-size: 18px;\n  font-weight: 650;\n}\n.trir-education p,\n.trir-education ul {\n  margin: 0;\n}\n.trir-education ul {\n  padding-left: 22px;\n}\n.trir-education a {\n  color: var(--primary);\n  font-weight: 600;\n  text-decoration-thickness: 1px;\n  text-underline-offset: 2px;\n}\n.trir-education a:hover {\n  text-decoration-thickness: 2px;\n}\n.trir-numeric {\n  font-variant-numeric: tabular-nums;\n}\n@media (max-width: 899px) {\n  .trir-workspace {\n    grid-template-columns: minmax(0, 1fr);\n  }\n}\n@media (max-width: 639px) {\n  .trir-shell {\n    padding: 16px;\n  }\n  .trir-toolbar {\n    align-items: stretch;\n    display: grid;\n    grid-template-columns: minmax(0, 1fr);\n  }\n  .trir-button {\n    width: 100%;\n  }\n  .trir-result-grid {\n    grid-template-columns: minmax(0, 1fr);\n  }\n  .trir-chart-cluster {\n    grid-template-columns: minmax(0, 1fr);\n    row-gap: 24px;\n  }\n  .trir-chart-side {\n    margin-top: 0;\n  }\n  .trir-panel,\n  .trir-chart-card,\n  .trir-table-card,\n  .trir-education {\n    padding: 16px;\n  }\n  .trir-caption,\n  .trir-table-note {\n    margin-top: 12px;\n  }\n}\n@media (max-width: 359px) {\n  .trir-shell {\n    padding: 12px;\n  }\n  .trir-panel,\n  .trir-chart-card,\n  .trir-table-card,\n  .trir-education {\n    padding: 12px;\n  }\n  .trir-legend-row {\n    grid-template-columns: 12px minmax(0, 1fr);\n  }\n  .trir-legend-value {\n    grid-column: 2;\n  }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"trir-calculator\" data-calculator-root\u003e\n  \u003cdiv class=\"trir-shell\"\u003e\n    \u003cheader class=\"trir-header\"\u003e\n      \u003ch2\u003eTotal Recordable Incident Rate Calculator\u003c\/h2\u003e\n      \u003cp\u003eCalculate TRIR from recordable cases and employee hours worked, then review the result against clear screening bands.\u003c\/p\u003e\n      \u003cdiv class=\"trir-pills\" aria-label=\"Live calculation summary\"\u003e\n        \u003cspan class=\"trir-pill\"\u003eTRIR \u003cstrong data-trir-pill-rate\u003e0.20\u003c\/strong\u003e\u003c\/span\u003e\n        \u003cspan class=\"trir-pill\"\u003eBand \u003cstrong data-trir-pill-band\u003eLow\u003c\/strong\u003e\u003c\/span\u003e\n        \u003cspan class=\"trir-pill\"\u003eCases \u003cstrong data-trir-pill-cases\u003e2\u003c\/strong\u003e\u003c\/span\u003e\n        \u003cspan class=\"trir-pill\"\u003eHours \u003cstrong data-trir-pill-hours\u003e2,000,000\u003c\/strong\u003e\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/header\u003e\n\n    \u003cdiv class=\"trir-toolbar\" aria-label=\"Calculator actions\"\u003e\n      \u003cbutton class=\"trir-button trir-button-primary\" type=\"button\" data-trir-download\u003e\n        \u003csvg class=\"trir-button-icon\" viewbox=\"0 0 24 24\" aria-hidden=\"true\" focusable=\"false\"\u003e\u003cpath fill=\"currentColor\" d=\"M5 20h14v-2H5v2Zm7-18a1 1 0 0 0-1 1v9.59L7.7 9.3 6.3 10.7l5 5a1 1 0 0 0 1.4 0l5-5-1.4-1.4-3.3 3.29V3a1 1 0 0 0-1-1Z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n        Download Excel\n      \u003c\/button\u003e\n      \u003cbutton class=\"trir-button trir-button-secondary\" type=\"button\" data-trir-reset\u003eReset\u003c\/button\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"trir-workspace\"\u003e\n      \u003csection class=\"trir-panel\" aria-labelledby=\"trir-inputs-title\"\u003e\n        \u003ch3 class=\"trir-section-heading\" id=\"trir-inputs-title\"\u003eInputs\u003c\/h3\u003e\n        \u003cp class=\"trir-section-intro\"\u003eUse a consistent reporting period, normally one calendar year.\u003c\/p\u003e\n        \u003cdiv class=\"trir-fields\"\u003e\n          \u003cdiv class=\"trir-field\" data-trir-field=\"hours\"\u003e\n            \u003clabel class=\"trir-label\" for=\"trir-hours\"\u003eHours worked\u003c\/label\u003e\n            \u003cdiv class=\"trir-input-wrap\"\u003e\n              \u003cinput class=\"trir-input\" id=\"trir-hours\" name=\"trir-hours\" type=\"text\" inputmode=\"decimal\" autocomplete=\"off\" value=\"2,000,000\" aria-describedby=\"trir-hours-help trir-hours-error\"\u003e\n              \u003cspan class=\"trir-unit\"\u003ehours\u003c\/span\u003e\n            \u003c\/div\u003e\n            \u003cp class=\"trir-helper\" id=\"trir-hours-help\"\u003eTotal hours worked by all employees during the selected period.\u003c\/p\u003e\n            \u003cp class=\"trir-error\" id=\"trir-hours-error\" role=\"alert\"\u003e\u003c\/p\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"trir-field\" data-trir-field=\"injuries\"\u003e\n            \u003clabel class=\"trir-label\" for=\"trir-injuries\"\u003eNumber of recordable cases\u003c\/label\u003e\n            \u003cdiv class=\"trir-input-wrap\"\u003e\n              \u003cinput class=\"trir-input\" id=\"trir-injuries\" name=\"trir-injuries\" type=\"text\" inputmode=\"numeric\" autocomplete=\"off\" value=\"2\" aria-describedby=\"trir-injuries-help trir-injuries-error\"\u003e\n              \u003cspan class=\"trir-unit\"\u003ecases\u003c\/span\u003e\n            \u003c\/div\u003e\n            \u003cp class=\"trir-helper\" id=\"trir-injuries-help\"\u003eCount OSHA-recordable work-related injuries and illnesses, not every first-aid event.\u003c\/p\u003e\n            \u003cp class=\"trir-error\" id=\"trir-injuries-error\" role=\"alert\"\u003e\u003c\/p\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"trir-formula\"\u003e\n\u003cstrong\u003eFormula:\u003c\/strong\u003e \u003ccode\u003eTRIR = recordable cases × 200,000 ÷ hours worked\u003c\/code\u003e\n\u003c\/div\u003e\n      \u003c\/section\u003e\n\n      \u003csection class=\"trir-panel trir-results\" aria-labelledby=\"trir-results-title\"\u003e\n        \u003ch3 class=\"trir-section-heading\" id=\"trir-results-title\"\u003eLive results\u003c\/h3\u003e\n        \u003cdiv class=\"trir-primary-result\" aria-live=\"polite\" aria-atomic=\"true\"\u003e\n          \u003cspan\u003eTotal recordable incident rate\u003c\/span\u003e\n          \u003cstrong data-trir-primary\u003e0.20\u003c\/strong\u003e\n          \u003cp data-trir-primary-copy\u003eLow screening band: below 3.00.\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"trir-result-grid\"\u003e\n          \u003cdiv class=\"trir-result-card\"\u003e\n            \u003cspan\u003eScreening band\u003c\/span\u003e\n            \u003cstrong class=\"trir-status\" data-trir-band data-band=\"low\"\u003eLow\u003c\/strong\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"trir-result-card\"\u003e\n            \u003cspan\u003eFull-time equivalents\u003c\/span\u003e\n            \u003cstrong data-trir-fte\u003e1,000.00\u003c\/strong\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"trir-result-card\"\u003e\n            \u003cspan\u003eHours per recordable case\u003c\/span\u003e\n            \u003cstrong data-trir-hours-per-case\u003e1,000,000\u003c\/strong\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"trir-result-card\"\u003e\n            \u003cspan\u003eRate numerator\u003c\/span\u003e\n            \u003cstrong data-trir-numerator\u003e400,000\u003c\/strong\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n        \u003cp class=\"trir-note\"\u003eThe screening band is an interpretive aid, not an OSHA compliance determination or an industry benchmark.\u003c\/p\u003e\n      \u003c\/section\u003e\n    \u003c\/div\u003e\n\n    \u003csection class=\"trir-section trir-chart-card\" data-trir-chart-card aria-labelledby=\"trir-chart-title\"\u003e\n      \u003cdiv class=\"trir-chart-head\"\u003e\n        \u003ch3 class=\"trir-section-heading\" id=\"trir-chart-title\"\u003eTRIR and screening thresholds\u003c\/h3\u003e\n        \u003cp data-trir-chart-interpretation\u003eYour current rate is well below the 3.00 boundary.\u003c\/p\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"trir-empty-state trir-hidden\" data-trir-chart-empty\u003eEnter valid values above to see the comparison chart.\u003c\/div\u003e\n      \u003cdiv class=\"trir-chart-cluster\" data-trir-chart-cluster\u003e\n        \u003cdiv class=\"trir-plot-wrap\" data-trir-plot-wrap\u003e\n          \u003csvg class=\"trir-chart-svg\" data-trir-chart-svg viewbox=\"0 0 640 300\" role=\"img\" aria-labelledby=\"trir-chart-svg-title trir-chart-svg-desc\"\u003e\n            \u003ctitle id=\"trir-chart-svg-title\"\u003eTRIR comparison bar chart\u003c\/title\u003e\n            \u003cdesc id=\"trir-chart-svg-desc\" data-trir-chart-desc\u003eCurrent TRIR 0.20, low threshold 3.00, high threshold 8.00.\u003c\/desc\u003e\n          \u003c\/svg\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"trir-chart-side\"\u003e\n          \u003cdiv class=\"trir-legend\" data-trir-legend aria-label=\"Chart legend\"\u003e\u003c\/div\u003e\n          \u003ctable class=\"trir-chart-summary\" aria-label=\"Exact chart values\"\u003e\n            \u003cthead\u003e\u003ctr\u003e\n\u003cth\u003eMeasure\u003c\/th\u003e\n\u003cth\u003eValue\u003c\/th\u003e\n\u003c\/tr\u003e\u003c\/thead\u003e\n            \u003ctbody data-trir-chart-summary-body\u003e\u003c\/tbody\u003e\n          \u003c\/table\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"trir-caption\" data-trir-caption\u003eTRIR is normalized to 200,000 hours, the equivalent of 100 full-time employees working 40 hours per week for 50 weeks.\u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"trir-section trir-table-card\" data-trir-table-card aria-labelledby=\"trir-table-title\"\u003e\n      \u003ch3 class=\"trir-section-heading\" id=\"trir-table-title\"\u003eCalculation detail\u003c\/h3\u003e\n      \u003cdiv class=\"trir-table-overflow\" data-trir-table-overflow\u003e\n        \u003ctable class=\"trir-table\"\u003e\n          \u003cthead\u003e\n            \u003ctr\u003e\n\u003cth\u003eStep\u003c\/th\u003e\n\u003cth\u003eExpression\u003c\/th\u003e\n\u003cth\u003eValue\u003c\/th\u003e\n\u003cth\u003eMeaning\u003c\/th\u003e\n\u003c\/tr\u003e\n          \u003c\/thead\u003e\n          \u003ctbody data-trir-detail-body\u003e\u003c\/tbody\u003e\n        \u003c\/table\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"trir-table-note\" data-trir-table-note\u003eAll rows use the same unrounded model values. Display rounding is applied only after the final calculation.\u003c\/div\u003e\n    \u003c\/section\u003e\n\n    \u003csection class=\"trir-education\" aria-labelledby=\"trir-education-title\"\u003e\n      \u003cdiv class=\"trir-education-content\"\u003e\n        \u003csection\u003e\n          \u003ch2 id=\"trir-education-title\"\u003eWhat does this TRIR calculator estimate?\u003c\/h2\u003e\n          \u003cp\u003eThe total recordable incident rate, commonly shortened to TRIR, expresses the number of OSHA-recordable injury and illness cases per 100 full-time-equivalent workers. The calculator standardizes organizations of different sizes by multiplying the recordable case count by 200,000 and dividing by total employee hours worked. The 200,000-hour base represents 100 employees working 40 hours per week for 50 weeks. This makes the rate more comparable than a raw case count, although comparisons should still use a similar industry, workforce profile, and reporting period.\u003c\/p\u003e\n          \u003cp\u003eThe calculator also shows full-time-equivalent workers, hours per recordable case, the calculation numerator, a screening classification, and a threshold comparison chart. It is designed for internal safety analysis and planning. It does not determine whether a case is legally recordable and does not replace review of the \u003ca href=\"https:\/\/www.osha.gov\/recordkeeping\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eOSHA recordkeeping requirements\u003c\/a\u003e.\u003c\/p\u003e\n        \u003c\/section\u003e\n\n        \u003csection\u003e\n          \u003ch3\u003eHow should hours worked be entered?\u003c\/h3\u003e\n          \u003cp\u003eEnter the total hours actually worked by all employees during the reporting period. For an annual calculation, payroll and timekeeping records are usually the best source. Include regular and overtime hours worked. Do not substitute paid hours automatically if those totals include vacation, holidays, sick leave, or other non-work time. A larger hours denominator lowers TRIR when the recordable case count is unchanged, while fewer hours increase it.\u003c\/p\u003e\n          \u003cp\u003eHours worked are required and must be greater than zero. Commas and spaces are accepted. A common mistake is entering the average weekly hours for one employee instead of the organization-wide total. Another is mixing a full-year injury count with only a partial-year hours total. Keep the period consistent across both inputs.\u003c\/p\u003e\n        \u003c\/section\u003e\n\n        \u003csection\u003e\n          \u003ch3\u003eWhich incidents belong in the recordable case count?\u003c\/h3\u003e\n          \u003cp\u003eEnter the number of work-related cases that meet applicable recording criteria. General criteria include death, days away from work, restricted work or job transfer, medical treatment beyond first aid, loss of consciousness, or a significant diagnosis by a physician or other licensed health care professional. OSHA provides the detailed criteria in \u003ca href=\"https:\/\/www.osha.gov\/laws-regs\/regulations\/standardnumber\/1904\/1904.7\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e29 CFR 1904.7\u003c\/a\u003e. The count is required, must be a whole number, and may be zero.\u003c\/p\u003e\n          \u003cp\u003eHigher case counts increase TRIR in direct proportion. Doubling cases while holding hours constant doubles the rate. Do not include non-recordable first-aid-only events merely to make the calculation more conservative, and do not omit a recordable case because it appears minor. When classification is uncertain, consult qualified safety or legal professionals and the controlling regulation.\u003c\/p\u003e\n        \u003c\/section\u003e\n\n        \u003csection\u003e\n          \u003ch3\u003eHow should each result be interpreted?\u003c\/h3\u003e\n          \u003cp\u003e\u003cstrong\u003eTRIR\u003c\/strong\u003e is the primary output. A value of 3.50 means 3.5 recordable cases per 100 full-time-equivalent workers for the period. Zero means no recordable cases were entered; it does not prove that every hazard is controlled. A high rate may signal the need for deeper review, but a small organization can experience large year-to-year swings from a single case because its hours denominator is smaller.\u003c\/p\u003e\n          \u003cp\u003e\u003cstrong\u003eScreening band\u003c\/strong\u003e labels values below 3 as low, values from 3 through 8 as moderate, and values above 8 as high. These are simple interpretive bands rather than regulatory limits. For meaningful benchmarking, use current industry-specific data from the \u003ca href=\"https:\/\/www.bls.gov\/iif\/overview\/compute-nonfatal-incidence-rates.htm\" target=\"_blank\" rel=\"noopener noreferrer\"\u003eBureau of Labor Statistics incidence-rate guidance\u003c\/a\u003e and compare like with like.\u003c\/p\u003e\n          \u003cp\u003e\u003cstrong\u003eFull-time equivalents\u003c\/strong\u003e divides hours worked by 2,000, which is 40 hours per week for 50 weeks. It is a normalization aid, not necessarily the actual headcount. \u003cstrong\u003eHours per recordable case\u003c\/strong\u003e divides total hours by the number of cases and is unavailable when there are no cases. \u003cstrong\u003eRate numerator\u003c\/strong\u003e is the case count multiplied by 200,000; it is shown to make the formula auditable.\u003c\/p\u003e\n        \u003c\/section\u003e\n\n        \u003csection\u003e\n          \u003ch3\u003eHow do the chart and table support review?\u003c\/h3\u003e\n          \u003cp\u003eThe bar chart compares the current TRIR with the 3.00 and 8.00 screening boundaries. The exact figures appear in the adjacent legend and data table, so the chart is never the sole source of information. The calculation-detail table then cross-foots the case count, standardization factor, numerator, hours denominator, and final rate. Changing either input updates every result, chart mark, legend value, table row, accessible summary, and Excel workbook from one calculation model.\u003c\/p\u003e\n          \u003cp\u003eThe Excel export captures the current state at the moment of download. It includes summary, input, breakdown, and scenario-check sheets. Use the exported workbook for documentation or review, but retain the underlying OSHA log and source records as required.\u003c\/p\u003e\n        \u003c\/section\u003e\n\n        \u003csection\u003e\n          \u003ch3\u003eWhat are the main limitations and common mistakes?\u003c\/h3\u003e\n          \u003cul\u003e\n            \u003cli\u003eTRIR is a lagging indicator. It summarizes past recorded outcomes and does not measure every near miss, unsafe condition, or preventive control.\u003c\/li\u003e\n            \u003cli\u003eRates can be volatile for small employers or short periods. Consider multi-year trends alongside the latest annual value.\u003c\/li\u003e\n            \u003cli\u003eIndustry mix matters. Comparing a construction operation with a low-hazard office business can be misleading.\u003c\/li\u003e\n            \u003cli\u003eCase classification errors directly distort the numerator. Use the official criteria rather than informal labels.\u003c\/li\u003e\n            \u003cli\u003eTRIR is separate from severe-event reporting. Work-related fatalities generally must be reported within 8 hours, while inpatient hospitalizations, amputations, and eye losses generally have a 24-hour reporting window; see OSHA's \u003ca href=\"https:\/\/www.osha.gov\/report\" target=\"_blank\" rel=\"noopener noreferrer\"\u003esevere injury reporting page\u003c\/a\u003e for current rules and exceptions.\u003c\/li\u003e\n          \u003c\/ul\u003e\n          \u003cp\u003eUse TRIR with leading indicators such as hazard observations, corrective-action closure, training completion, safety audits, near-miss reporting, and exposure hours. A balanced safety dashboard helps prevent overreliance on one rate and supports more practical decisions.\u003c\/p\u003e\n        \u003c\/section\u003e\n      \u003c\/div\u003e\n    \u003c\/section\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e","brand":"FinancialModelsLab","offers":[{"title":"Default Title","offer_id":49909483307251,"sku":"trir","price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6191\/2762\/files\/trir.webp?v=1783935424","url":"https:\/\/financialmodelslab.com\/products\/trir","provider":"Financial Models Lab","version":"1.0","type":"link"}