← All datasets

One-time snapshot

OSHA Workplace Injury & Illness 2016–2023

Establishment-level OSHA records with reported injury counts and calculated rates.

Snapshot coverage

Records: 2,378,072 establishment-year rows

Coverage: 2016–2023

Format: CSV + Parquet

Package uploaded: 2026-03-31

Listing reviewed: 2026-09-19

The upload and review dates do not extend the source coverage. This is a dated snapshot; future updates are not included.

Get this snapshot

$79one time

CSV and Parquet files for the coverage described here. Review the limitations and sample before purchasing.

Buy dated snapshot

Commercial license terms

View 1,000-row sample

New annual update subscriptions are unavailable. Existing customers can use their purchase download links or contact support.

Known limitations

  • zip3 is missing throughout this snapshot. Use other location fields with their documented limitations.
  • TCIR and DART contain extreme outliers, including maxima of 4,000,000 and 2,000,000. Review reported hours and flag implausible rates before comparing establishments.
  • These are establishment-year records, not individual injuries. The snapshot does not extend beyond 2023.
  • Year, establishment name, street address, city and state are not a guaranteed unique establishment key: that combination has 334 excess duplicate rows, and eight rows have missing key fields. Do not silently deduplicate or interpret these fields as a stable establishment identifier.

Files in this snapshot

Row counts are per table and should not be added as independent events. Expand a file to see its delivered Parquet field names and types.

osha_injuries.parquet — 2,378,072 rows · 26 fields
FieldType
survey_yearint64
estab_namestring
street_addressstring
citystring
statestring
zip3null
naics_codestring
industry_descriptionstring
size_classstring
annual_average_employeesint64
total_hours_workedint64
no_injuries_illnessesint64
total_deathsint64
total_dafw_casesint64
total_djtr_casesint64
total_other_casesint64
total_dafw_daysint64
total_djtr_daysint64
total_injuriesint64
total_skin_disordersint64
total_resp_conditionsint64
total_poisoningsint64
total_hearing_lossint64
total_other_illnessesint64
tcir_ratedouble
dart_ratedouble

Inspect the public CSV

import pandas as pd

df = pd.read_csv(
    "https://huggingface.co/datasets/claritystorm/osha-workplace-injuries/resolve/main/sample_1000.csv"
)
print(df.shape)
print(df.columns.tolist())
print(df.head())

This CSV is a sample, not the full package. It does not establish complete historical coverage or represent every field’s missingness. License details are on the Hugging Face card.

Source: government source portal · Dataset changelog