QEHSQEHS

Composer templates / Incidents & near-misses

OSHA recordable incidents

Incident + injury capture mapped to OSHA 300 / 300A / 301. Case classification guard tree, restricted-duty workflow, electronic-submission reminder.

OSHAUSregulatory

What this template does

  • Geolocated incident capture
  • 300-log auto-classification
  • Restricted-duty day counter
  • OSHA ITA reminder cron

Field inventory, 34 fields

Every field block is configurable in the Composer, add, remove, or re-order without code.

17

Core capture fields

9

Classification + metadata

8

Workflow + action fields

Workflow, 6 states

Each state has configurable entry conditions, auto-actions, and permission sets.

  1. Draft
  2. Submitted
  3. Under review
  4. In progress
  5. Pending approval
  6. Closed

Why teams choose this template

OSHA's 300-log requirements feel deceptively simple until your first audit. The 300 form is short. The 300A summary is short. The 301 supplementary record is short. The trouble is everything that sits between an incident happening and the right number landing in the right cell — case classification, restricted-duty day counting, recordable-vs-first-aid judgement, and the electronic-submission deadline that creeps up every March 2nd.

This template is the version of the OSHA recordable workflow we wish we'd had when we ran an EHS function ourselves.

What's actually in the box

The 34-field capture form is mapped one-to-one against the 300 column set. Date of injury, body-part affected, days away from work, days on restricted duty or job transfer, classification (death / days away / restricted or transfer / other recordable), establishment, supervisor, witnesses — every field you'd reach for at 7am the morning after an incident is in here, in the order an investigator would ask for it.

What's not in the form is just as deliberate. We don't ask the reporter to classify the case as "recordable" or "not recordable" at the point of capture. That's a judgement call governed by the OSHA recordability guard tree — the rules in 29 CFR 1904.7. The template's workflow runs that tree automatically against the captured fields and proposes a classification with the rationale ("Days away from work ≥ 1 day → recordable as days_away under 1904.7(a)(3)"). A trained safety lead reviews + accepts the proposal in one click. The 300-log entry is generated on accept, not on capture, so a reporter who didn't know the rules can't accidentally exclude a recordable case.

The restricted-duty day counter that won't go stale

If you've ever managed a restricted-duty case, you know the day count is where most spreadsheets quietly drift out of compliance. A worker returns on light duty Tuesday. They're cleared by occupational health on the 8th day. Someone closes the case on the 12th. The spreadsheet still shows 12 days of restricted duty. The 300A summary submitted in March is wrong.

This template treats the restricted-duty period as a workflow state with explicit entry and exit transitions. The day count is computed from the transition history, not entered by hand. When occupational health flips the worker back to full duty, the count freezes — automatically, with an audit trail showing who made the change and when. The 300A summary numbers are computed from the live ledger, so they cannot drift from the underlying transitions.

Electronic submission you don't have to remember

OSHA's Injury Tracking Application (ITA) opens for submissions on January 2nd. Most multi-establishment employers in covered industries must submit their 300A by March 2nd. Miss the deadline and the citation is a public-record matter.

The template ships with an OSHA-ITA reminder cron preconfigured: tenants flagged with at least one establishment in OSHA scope (locations marked `regulatoryFramework = 'OSHA'`) receive an in-app reminder at 60, 30, 14, and 3 days before the March 2nd cutoff. The summary report is generated on-demand from the live ledger — no separate "year-end roll-up" step required.

The template doesn't auto-submit (regulator auto-submission is a deferred Wave 5 capability). It produces the CSV in the exact column order the ITA expects, ready to upload.

What you'll configure in the first hour

Five things are tenant-specific, and the template surfaces them in the install wizard:

  • Which of your locations are in OSHA scope. The defaults assume US locations; uncheck any that aren't.
  • Your establishment list and the NAICS code per establishment (drives ITA bucketing).
  • The role assignments — who approves classification, who reviews the 300A summary, who has read access to incident details.
  • Your in-house terminology for body-part categories (we ship the OSHA canonical list, but most tenants extend it).
  • Your reporter-anonymity policy — the template defaults to attributed reporting, but the field can be hidden via the Composer.

After that, install completes and the workflow is live. Most tenants are reporting their first incident in under thirty minutes from sign-up.

Why teams pick this over building it themselves

The recordkeeping standard is stable — 1904 hasn't changed materially since 2015. The work of mapping it correctly into a system is not interesting. It's high-stakes (regulator penalties for getting it wrong) and low-leverage (every EHS team in the US does the same mapping). Buying a template that's already mapped, audited, and updated with the regulator's annual ITA tweaks frees your team to work on the things that actually move your injury rate down — not the things that document it.

The template is fully editable. The Composer gives you the field list, the workflow, and the guard tree as configurable blocks — fork it, hide fields, add custom severity categories, layer in your incident-investigation form. The OSHA mapping stays intact because it's enforced at the guard layer, not the field layer. You can change everything around the mapping without breaking the mapping itself.

Industries that use this template

All industriesmanufacturingconstructionlogisticshealthcare

Ready to install?

OSHA recordable incidents, live in your tenant in minutes.

Sign up free, install the template, and configure it to your program. No code, no IT ticket.