HSE-407 · Lesson 9 of 12 · 20 min

Data quality and recordkeeping

Every indicator in Harrowgate Foods Inc.'s new framework depended on data that someone had to record. Nina's recalculation of the injury rate in Lesson 2 had already shown what happens when records are kept differently at each site. As the new leading indicators came in, she found similar problems with inspection findings, verification checks and near-miss reports. A dashboard built on unreliable data is worse than no dashboard, because it gives false confidence. This lesson covers the legal records that the company must keep, the qualities that make data trustworthy, and the checks that Harrowgate Foods Inc. put in place.

In the US, the legal records are set by OSHA's recordkeeping rule, 29 CFR Part 1904. Employers covered by the rule must record each recordable case on the OSHA 300 log within seven calendar days of learning of it, complete an OSHA 301 incident report or an equivalent form for each case, and complete a 300A annual summary at the end of each year. The 300A must be certified by a company executive and posted at each establishment from February 1 to April 30. The records must be kept for five years after the end of the year they cover. Separately, employers must report to OSHA any work-related fatality within eight hours, and any in-patient hospitalization, amputation or loss of an eye within 24 hours.

OSHA's injury tracking application adds an electronic duty. Establishments with 250 or more employees in industries covered by the rule, and those with 20 to 249 employees in designated industries, must submit their 300A data each year. Establishments with 100 or more employees in a second list of designated industries must also submit their 300 log and 301 data. Food manufacturing, including bakeries, is on that second list, so the Gainesville plant submits all three forms. The deadline is March 2 for the previous year's data; the most recent submission window opened on January 2, 2026. The company checks each establishment's size and industry code against the rule's appendices every year.

A flow diagram from an event on the floor to a supervisor report, then to the company register, with branches to the OSHA 300 log within seven days, the 301 incident report, a report to OSHA within eight or 24 hours for severe cases, the 300A annual summary and electronic submission, and finally the rates and dashboards. Check points marked with ticks show where classification is reviewed and records are reconciled.
One reported event feeds several OSHA records and the company dashboard, which must be reconciled.

What makes data trustworthy

Data quality is usually described by a handful of dimensions. Nina used five and gave each a concrete test:

  • Completeness: every event that should be recorded is recorded, and every record has the required fields. Test: compare the register with first aid logs, clinic visits and claims.
  • Accuracy: recorded values are correct, such as the classification, date and body part. Test: re-check a random sample of records against source documents.
  • Timeliness: records are entered soon enough to act on and to meet legal deadlines. Test: measure the delay between event date and entry date.
  • Consistency: the same thing is recorded the same way at every site and over time. Test: compare classification of similar events across sites.
  • Validity: values follow the defined rules, such as a classification from the agreed list and dates in the right format. Test: automatic checks when data are entered.

A sixth quality, which Nina called traceability, ran through all of them: every number in a report should be traceable back to the records it came from. When Margaret Doyle asked why the McDonough rate had risen in one quarter, Nina could list the cases behind it and show which ones were new.

Common problems

The first quality checks across the three sites found the same problems again and again:

  • Injuries entered days or weeks after they happened, often when a claim arrived, which meant they had been missed at the time.
  • Classifications left blank or changed without a record of why.
  • The same event entered twice, once by a supervisor and once by the first aid attendant, with slightly different details.
  • Agency workers recorded under the agency's name, so their injuries did not appear in site figures.
  • Near misses recorded only when the reporter filled in the form personally, so verbal reports to supervisors were lost.
  • Hours for a month missing because the payroll export failed, which made the rate for that month impossible to calculate and the rolling rate wrong.

None of these problems was dramatic, but each one moved the numbers. Nina wrote a set of automatic checks that ran every week against the register and flagged records for review. The script below runs the main checks on a sample of January records.

# Data quality checks on an incident register
from datetime import date
register = [
    # id, site, event date, entered date, classification, body part, claim filed
    (101, "main", date(2027, 1, 4),  date(2027, 1, 4),  "first aid",  "hand",  False),
    (102, "main", date(2027, 1, 9),  date(2027, 1, 23), "recordable", "wrist", True),
    (103, "dist", date(2027, 1, 12), date(2027, 1, 12), "",           "foot",  True),
    (104, "dist", date(2027, 1, 12), date(2027, 1, 13), "first aid",  "foot",  True),
    (105, "main", date(2027, 1, 18), date(2027, 1, 18), "near miss",  "",      False),
    (106, "sauce",date(2027, 1, 20), date(2027, 1, 21), "first aid",  "eye",   True),
    (107, "main", date(2027, 1, 27), date(2027, 1, 27), "recordable", "",      True),
]
hours = {"main": 71_500, "dist": 19_800, "sauce": None}
problems = []
seen = {}
for rid, site, ev, ent, cls, part, claim in register:
    if not cls:
        problems.append((rid, "no classification"))
    if cls in ("first aid", "recordable") and not part:
        problems.append((rid, "injury with no body part"))
    if (ent - ev).days > 7:
        problems.append((rid, f"entered {(ent - ev).days} days after the event"))
    if claim and cls == "first aid":
        problems.append((rid, "claim filed but classed as first aid: review"))
    key = (site, ev, part)
    if part and key in seen:
        problems.append((rid, f"possible duplicate of {seen[key]}"))
    seen.setdefault(key, rid)
for site, h in hours.items():
    if h is None:
        problems.append((site, "hours missing for the month"))
for who, issue in problems:
    print(f"{str(who):<6} {issue}")
print(f"{len(problems)} issues in {len(register)} records")
Output
102    entered 14 days after the event
103    no classification
104    claim filed but classed as first aid: review
104    possible duplicate of 103
106    claim filed but classed as first aid: review
107    injury with no body part
sauce  hours missing for the month
7 issues in 7 records

Every record in the sample raised at least one question, though not every question meant an error. Record 102 had been entered two weeks late, when the worker's claim arrived. Records 103 and 104 described the same foot injury on the same day at McDonough, one entered by the supervisor without a classification and one by the first aid attendant. Records 104 and 106 had claims filed but were classed as first aid, which can be correct, because a clinic visit alone does not make a case recordable, but needs review. The sauces plant's hours for January were missing. The site safety leads reviewed every flag each week, corrected the records and noted why.

Classification review

Classification is the step where most judgment is needed and where pressure, as Lesson 3 described, can act. Harrowgate Foods Inc. separated the people who classify cases from the people whose performance the numbers reflect. Supervisors record the event and the treatment. The site safety lead proposes a classification within two days, using a written guide with worked examples and OSHA's published interpretations of the recordkeeping rule. Nina reviews a sample each month across all three sites, and any change to a classification after it is entered requires a recorded reason. Disputed cases go to Elena, and her decisions are added to the guide.

Reconciliation

Once a quarter, each site reconciles its records. The safety lead compares the 300 log with the workers' compensation claims listing, the first aid logs, the 301 reports and the investigation tracker. Any injury that appears in one but not another is explained. Temporary workers supervised by the company are checked against staffing agency records to make sure their cases are on the company's log. The reconciliation is signed by the site manager, so that the person accountable for the site's results also vouches for the records, and the annual review feeds the executive's certification of the 300A.

Worked problem

Tracing a missing case

Show solution
  1. The first quarterly reconciliation at McDonough found a claim for a shoulder injury to an agency worker in November that did not appear in the register.
  2. The supervisor recalled the event: the worker had strained his shoulder pulling a stuck pallet and had gone home early. No form was completed because the supervisor believed the agency would handle it.
  3. The agency's records showed that the worker had seen a physiotherapist three times, which is medical treatment beyond first aid, and had been on modified duties for a week.
  4. The case was entered on the 300 log as a restricted work case, the November rate was corrected, and the site's induction was changed so that temporary workers and supervisors knew that all injuries are reported to Harrowgate Foods Inc. first.

Answer: Reconciliation found a case that every other check had missed, corrected the rate and fixed the cause, which was confusion over who reports agency injuries.

Data for leading indicators

Leading indicators raised their own data questions. A verification checklist completed on paper and typed in later could be entered weeks late, or not at all. The company moved verifications and inspections to a simple mobile form that recorded the time and place automatically. Nina also watched for signs that data were being made up rather than collected: verification forms all completed in the same five minutes at the end of a shift, or pass rates of exactly 100 percent for months at a time. When she found both at one site, the explanation was a supervisor who had been told to complete twenty verifications a week and had no time to do them properly. The target was reduced, and the supervisor was given time.

Hours are data too

The denominator of every rate needs the same care as the numerator. Hours at Harrowgate Foods Inc. now come from a single monthly export from the timekeeping system, prepared by payroll by the fifth working day of the following month. The export separates employee hours from agency hours and records overtime. Agency hours come from the agencies' invoices, which are checked against the gate badge records, because an invoice can include hours billed for travel or training off site. Nina keeps a log of any correction to past hours, with the reason, so that a rate that changes after it was first reported can be explained.

She also added a simple test: if a site's hours for a month differ from the average of the previous three months by more than 15 percent, the figure is queried before it is used. The test caught the failed export at Athens and, later, a month in which McDonough's agency hours had been entered twice.

Privacy and access

Injury records contain personal health information, and workers will only report injuries freely if they trust how that information is used. OSHA's rule recognizes this through privacy concern cases, such as sexual assaults, mental illnesses and certain infectious diseases, for which the employee's name is not entered on the 300 log, and any employee who asks for a different illness case to be treated this way can have the name withheld. Harrowgate Foods Inc. goes further: it limits access to the register to the people who need it, removes names from all reports and dashboards, and never reports a group so small that individuals could be identified. Requests for records from outside the company go through Aisha Grant, the company lawyer, except for the access that employees, former employees and their representatives are entitled to under the rule.

Who owns the data

Each data set in the framework now has a named owner, who is responsible for its definition and quality, and a steward at each site, who makes sure it is collected and entered properly. Nina owns the register and the hours. Luis owns the specialist inspection register and the ammonia data. Each site safety lead is the steward for inspections, verifications and near-miss reports at that site. When a number looks wrong, everyone knows whom to ask, and the owner is expected to answer within a week with either a correction or an explanation.

Common mistakes

  • MistakeCalculating rates from records that have never been checked.

    InsteadRun regular completeness, accuracy, timeliness, consistency and validity checks.

  • MistakeLetting the people judged by the numbers classify their own cases.

    InsteadSeparate recording from classification and review a sample centrally.

  • MistakeKeeping legal reports, claims and the company register separately.

    InsteadReconcile them every quarter and explain differences.

  • MistakeRecording agency workers' injuries under the agency only.

    InsteadRecord every injury on site in the company's own records.

  • MistakeAccepting perfect verification results without question.

    InsteadLook for signs of data made up to meet a target, and fix the cause.

Summary and key terms

  • OSHA's rule requires the 300 log within seven days, 301 reports, the 300A certified and posted from February 1 to April 30, five-year retention and, for many establishments, electronic submission by March 2.
  • Data quality has five main dimensions: completeness, accuracy, timeliness, consistency and validity, plus traceability.
  • Automatic weekly checks flag late, blank, duplicate and doubtful records for review.
  • Classification should be done by people independent of the results, with a guide and central sampling.
  • Quarterly reconciliation of the register with claims, first aid logs and investigations finds missing cases.
  • Leading indicator data need the same discipline, including checks for made-up results.
Completeness
The extent to which every event that should be recorded is recorded with all required fields.
Timeliness
How soon after an event the record is entered.
Traceability
The ability to trace every reported number back to the records it came from.
Reconciliation
Comparing related records, such as the register and claims, and explaining differences.
Classification review
An independent check that cases have been classified correctly against the agreed rules.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. When must a recordable case be entered on the OSHA 300 log, and how long are records kept?

    Show answer

    Within seven calendar days of learning of it; records are kept for five years after the year they cover.

  2. Name the five data quality dimensions Nina tested.

    Show answer

    Completeness, accuracy, timeliness, consistency and validity.

  3. Why is a claim on a case classed as first aid flagged for review rather than treated as an error?

    Show answer

    A clinic visit alone does not make a case recordable, so the classification may be correct but needs checking.

  4. Who signs the quarterly reconciliation, and why?

    Show answer

    The site manager, so that the person accountable for the results also vouches for the records.

  5. What two signs suggested made-up verification data?

    Show answer

    Forms all completed in the same few minutes at the end of a shift, and pass rates of exactly 100 percent for months.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz