Skip to content

Food safety plans and HACCP on dairies

HACCP (Hazard Analysis and Critical Control Points) is a systematic way to control food safety hazards by finding the points in a process where a hazard can be prevented, eliminated or reduced to a safe level, and controlling those points. It is built on seven principles (NACMCF 1998; Codex):

  1. Conduct a hazard analysis: list biological, chemical and physical hazards at each step.
  2. Determine critical control points (CCPs): steps where control is essential.
  3. Set critical limits for each CCP.
  4. Monitor each CCP.
  5. Set corrective actions for when monitoring shows a limit was missed.
  6. Verify that the system works (record review, testing, audits).
  7. Keep records and documentation.

On a dairy farm, HACCP is usually applied in a simplified on-farm food safety plan rather than a formal regulated HACCP plan. The PMO regulates the farm through permits and inspections. The PMO’s HACCP option (Appendix K, the NCIMS voluntary HACCP Program) applies only to milk plants, receiving stations and transfer stations that choose it, where regulatory audits replace routine inspections; it does not cover dairy farms. Processors, cooperatives and buyer programs may ask farms for a written food safety plan.

Typical on-farm hazards and controls:

Hazard Example control point Example critical limit / control
Drug residues in milk or meat Treated-cow identification and milk diversion; cull-cow release Cow stays out of the tank and is not sold until withdrawal end
Bacterial growth in raw milk Milk cooling Bulk tank at or below the PMO cooling limit
Aflatoxin M1 Feed ingredient testing (corn, cottonseed) Feed below the level that keeps milk under the FDA action level; see aflatoxin M1
Chemical contamination Cleaning-chemical storage and CIP rinse Final rinse complete; chemicals stored away from milk
Physical hazards Filters, milk-line integrity Filter changed each milking; filter inspected

Team roles commonly named in the plan: the herd veterinarian (drug protocols, withdrawal, residue avoidance), a QA lead (monitoring review, corrective and preventive actions), and the milking and herd managers (daily monitoring).

Partly. DC305 holds evidence for the drug-residue CCP:

  • Treatment events and withhold-date items show which cows were in withhold and when (see withdrawal times).
  • Exit events (SOLD) can be checked against meat-withhold dates.

Event and item names vary by herd: see the herd’s private dc305-vocab mapping.

Not in DC305: the written hazard analysis, CCP monitoring logs (tank temperatures, filter checks), feed mycotoxin test results, corrective-action records and verification reviews. These live in the food safety binder, temperature loggers, lab reports and the milk buyer’s portal.

Herd context: US Grade A dairies; industry practice and PMO requirements as of 2026.

  • Monitoring frequency: tank temperature continuously or at each pickup; treated-cow checks at every milking; feed mycotoxin testing on each new lot of at-risk ingredients, or on a set schedule in high-risk years.
  • Record review: monitoring logs reviewed and signed at least weekly to monthly by the responsible person.
  • Plan review: the whole plan reviewed at least annually and whenever the process changes (new parlor, new drugs, new feed source).
  • Corrective actions: every missed critical limit has a recorded corrective action, and the root cause is addressed.

Requirements change; confirm the current version with the program or regulator. This page is not legal advice.

  • Too many CCPs. Calling every good practice a CCP buries the few that really control a hazard.
  • Critical limits that can’t be measured (“milk is cold enough”).
  • Monitoring with no records, or records filled in after the fact.
  • No corrective action written when a limit is missed, or no follow-up on the cause.
  • Plan not updated after changing parlor, drugs, feed suppliers or staff.
  • No verification: nobody reviews the logs or tests the system.
  • Plan in a language the people doing the monitoring don’t read.