One-time snapshot
OSHA Workplace Injury & Illness 2016–2023
Establishment-level OSHA records with reported injury counts and calculated rates.
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.
$79one time
CSV and Parquet files for the coverage described here. Review the limitations and sample before purchasing.
Buy dated snapshotView 1,000-row sampleNew 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
| Field | Type |
|---|---|
| survey_year | int64 |
| estab_name | string |
| street_address | string |
| city | string |
| state | string |
| zip3 | null |
| naics_code | string |
| industry_description | string |
| size_class | string |
| annual_average_employees | int64 |
| total_hours_worked | int64 |
| no_injuries_illnesses | int64 |
| total_deaths | int64 |
| total_dafw_cases | int64 |
| total_djtr_cases | int64 |
| total_other_cases | int64 |
| total_dafw_days | int64 |
| total_djtr_days | int64 |
| total_injuries | int64 |
| total_skin_disorders | int64 |
| total_resp_conditions | int64 |
| total_poisonings | int64 |
| total_hearing_loss | int64 |
| total_other_illnesses | int64 |
| tcir_rate | double |
| dart_rate | double |
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