A kimchi HACCP plan rests on three things: the fermentation bringing the pH down, the cold that holds it there, and the allergens most recipes carry. Kimchi is kept refrigerated from the jar to the store shelf, and FDA's acidified food rule leaves refrigerated foods out, so there's no FDA process filing. That puts the weight on the plan itself. Raw napa cabbage, scallions and garlic can carry pathogens, and kimchi has no cook step to destroy them, so the fermentation's drop in pH is the control: the batch reaches the pH your process sets before it's packed and chilled, and stays cold after. And traditional kimchi uses fish sauce and salted shrimp, two major allergens, fish and crustacean shellfish, that go on the label by name; a vegan version made in the same kitchen needs the right label on the right jar. In the example below, a Portland ferment maker writes its napa cabbage kimchi plan with three critical control points.
The short version
- Refrigerated kimchi is outside FDA's acidified food rule.
- No cook step: the fermentation's pH drop is the control for pathogens on raw vegetables.
- CCP 1: the batch reaches its pH limit before packing.
- CCP 2: cold holding from packing to the store.
- CCP 3: fish and shrimp declared, and the vegan jar labeled as vegan.
- The hazard analysis is written, whatever it finds.
- TaroStack keeps each batch's pH readings on its batch record, with its lot. More below.
The rules
| Rule | Where |
|---|---|
| Refrigerated foods | Excluded from the acidified food rule (21 CFR 114.3(b)) |
| Hazard analysis | Biological, chemical including allergens, and physical hazards, written regardless of outcome (21 CFR 117.130) |
| Preventive controls | Process controls such as acidifying and refrigerating, and CCPs if there are any (21 CFR 117.135) |
| Allergens | Fish and crustacean shellfish are major food allergens (21 U.S.C. 321(qq)) |
A qualified facility follows modified requirements, and grocery buyers often ask for a plan anyway. The costs of a kimchi line are in kimchi business plan, and the drink side in kombucha HACCP plan. This is general information, not legal advice.
An example: the hazard analysis
Brightwater Ferments, a made-up fermented food and drink maker in Portland, Oregon, sells 16 oz jars of napa cabbage kimchi, made with fish sauce and salted shrimp, and a vegan kimchi, to grocers and at markets:
| Step | Hazard | Reasonably likely? | Control | CCP? |
|---|---|---|---|---|
| Receiving produce | Pathogens on cabbage, scallions, garlic | Yes | Fermentation to the pH limit at CCP 1 | No |
| Salting and rinsing | Contamination from equipment | No | Sanitation SOP | No |
| Mixing paste | Fish and shrimp in the wrong batch | Yes | Vegan batches made first after cleaning; labeled at CCP 3 | No |
| Fermenting | Pathogens surviving if the pH doesn't drop | Yes | Ferment to the pH limit before chilling | CCP 1 |
| Packing and labeling | Fish and shrimp undeclared; vegan label on a regular jar | Yes | Label checked against the batch | CCP 3 |
| Cold storage and delivery | Growth of pathogens | Yes | 41°F or below | CCP 2 |
The plan
| CCP | Critical limit | Monitoring | Corrective action | Verification |
|---|---|---|---|---|
| CCP 1 Fermentation pH | pH at or below the process's limit before packing (example: 4.2 within 5 days) | Calibrated pH meter, three samples from each crock, daily | Keep fermenting and re-test; if not reached in time, hold and discard; find the cause | Meter calibrated before each use; records reviewed weekly |
| CCP 2 Cold holding | 41°F or below from packing to delivery | Walk-in and van thermometers, twice a day and each delivery | Hold and assess warm jars; fix the cooler | Thermometers checked monthly |
| CCP 3 Allergen label | Every jar's label matches its batch: fish and shrimp declared, vegan only on vegan batches | Check a jar from each case against the batch record | Hold, relabel, find the cause | Weekly review of label checks |
The pH limit and time are an example; the real ones come from your own process and its support.
A week of records
| Date | Lot | CCP | Reading | Limit | OK? | Action |
|---|---|---|---|---|---|---|
| Oct 5 | KC-1001 | Fermentation pH | 4.1 | 4.2 or below | Yes | Packed |
| Oct 5 | KC-1001 | Allergen label | Correct | Matches batch | Yes | |
| Oct 6 | KV-1002 | Fermentation pH | 4.4 | 4.2 or below | No | Day 4 of 5; kept fermenting, 4.1 on day 5 |
| Oct 7 | KC-1001 | Cold holding | 38°F | 41°F or below | Yes | |
| Oct 8 | KV-1002 | Allergen label | Wrong | Matches batch | No | Two cases of regular labels on vegan jars; relabeled, label rolls stored apart |
How fish and shrimp are declared is in food allergen labeling requirements.
Get the worksheet
Download the kimchi HACCP plan worksheet. Four sheets: the hazard analysis, the HACCP plan with a place to sign, a monitoring log that checks each reading against its limits, and a read-me. It's a worksheet to organize your own plan, not a plan to copy. It's an ordinary Excel file with no macros, and it works in Google Sheets, LibreOffice and Numbers.
Where this stops working
Every crock has daily pH readings, two recipes share a kitchen, and the grocer wants to know which jars to pull if a batch went out under the wrong label.
How TaroStack does it
TaroStack keeps each batch's readings and its lot together.
Readings on the batch. Fields of your own on the batch record hold each day's pH and the label check, and printable batch-record forms carry a sign-off.
Held until it's ready. A batch can be held, kept out of what's available to sell, until it reaches its pH and is released.
Where it went. Each grocer's order records the lots it got, so one recall report shows every store a batch reached.
| The job | Clipboard | In TaroStack |
|---|---|---|
| Each crock's pH | A sheet on the wall | Fields on the batch record |
| A batch still fermenting | A note on the crock | A hold until released |
| Which stores got a batch | Invoices | One recall report |
| Fish sauce lot in a batch | Not recorded | Lots on the batch |
Recipes, batches, lots and recalls are on every plan, from $49 a month. The first 30 days are free, with no credit card. If you'd like a hand setting up, ask, and we'll do it with you.
