Restaurant kitchen: food safety and flow Live model

You run the kitchen of a busy restaurant: a walk-in cooler, an ice-bath sink, a small blast chiller, a steam table and a line of cooks. Hot food must pass through the danger zone fast, cold food must stay cold, and tickets keep coming. This is an operations simulator — it is not a HACCP plan or legal advice.

What you will learn

Simulator

Time 0 min
Cooling time margin 360 min · Batch core temperature 3.0 °C · Stored product in walk-in 3.0 °C · Ticket time 0 min · Hot-held food 58.2 °CWalk-in🚪 3.0 °C✓ 📦 3.0 °C🧊Ice bath❄Blast⏱ Margin 360 min🗑 Discarded 0 kg‖‖‖‖‖‖🧾 Cook stations: 0 · 0 min♨ Steam table 58.2 °C (≥ 57 °C)
  • Cook working a ticket
  • Cook free
  • Cook tied up cooling food
  • Hot (≥ 57 °C)
  • Food in the danger zone (5–57 °C)
  • Food at 5 °C or below
  • Ticket waiting

Controls

Splits every batch still cooling into 5 cm hotel pans (about 1 cook-minute per kg).

Stir the batch in ice water (up to 25 kg). Stirring and re-icing take half a cook off the line.

Forced −5 °C air for up to 40 kg; its heat goes outside, not into the walk-in.

Each cook works one ticket at a time (12 min each).

Pull mise en place in planned trips and keep the strip curtain closed: fewer, smaller door openings.

Cooling air must be colder than 5 °C, or food cooled in the walk-in never gets there.

Food in the wells runs below the setpoint, more so when lids open often during a rush.

Throws out every batch that missed a cooling limit — or, if none did, the one with the most danger-zone time.

Indicators

Cooling time margin
360min
normal
Stored product in walk-in
3.0°C
normal
Ticket time
0min
normal
Hot-held food
58.2°C
warning
Batch core temperature3.0 °C
Walk-in air3.0 °C
Food out of compliance0 kg
Food discarded0 kg
Time in danger zone0 min
C. perfringens growth potential0.0 log
Stored product above 5 °C0 min
Tickets in the kitchen0
Cooks on shift6
Walk-in compressor load0.00 kW
Door infiltration load0.00 kW
Heat from hot batches0.00 kW

Trend

Cooling time margin: — min360-120

Crisis scenarios

Level 1 · A big batch of chili after service

Dinner service is over. A 24 kg pot of thick chili comes off the stove at 70 °C and has to be cooled for tomorrow. The usual habit is to slide the pot into the walk-in and go home. Cool it within the Food Code limits, keep its time in the danger zone short, and do not throw it away.

  • No food out of compliance at the end
  • Nothing discarded
  • Batch spends ≤ 100 min in the danger zone (5–57 °C)
  • Stored product never above 5 °C

Level 2 · Walk-in compressor fault mid-service

It is a busy evening and the walk-in compressor starts failing: only a tenth of its capacity is left until the technician arrives in about five and a half hours. An hour later a 15 kg pot of thick sauce comes off the stove and has to be cooled. Keep the stored food at 5 °C or below and cool the sauce on time.

  • Stored product never above 5 °C
  • No food out of compliance at the end
  • Nothing discarded

Level 3 · Dinner rush on the hot line

Four cooks handle the early evening easily. Then the rush hits: tickets more than double for three and a half hours. Keep ticket times short and the steam-table food hot, without overstaffing or cooking the held food to death.

  • Average ticket time ≤ 15 min during the rush
  • Hot-held food never below 57 °C
  • Average staffing ≤ 9 cooks
  • Average hot-held temperature ≤ 75 °C (quality)

Basis — the model behind the numbers

Every relation the simulator uses, with its source. Constants marked as assumptions are illustrative calibrations.

Newton’s law of cooling: the gap to the cooling medium shrinks exponentially.
T(t+Δt) = T_env + (T − T_env) · e^(−Δt/τ)[6][3]
The time constant grows with food depth and falls with a better cooling medium (ice water, forced cold air).
τ = ρc · L_c / U, 1/U = 1/h + L_c/(3k); L_c: pot 6 cm, 5-cm pans 2.5 cm; h: walk-in 20, ice bath 100, blast 50 W/m²K[6][3][4][5]Assumption: depths, heat-transfer coefficients, walk-in size, door and compressor loads, and cook times are illustrative values for a mid-size restaurant. The Biot correction is a first-order approximation and is rough for deep pots.
FDA Food Code two-stage cooling: 57 → 21 °C within 2 h, and to 5 °C within 6 h in total.
57 °C → 21 °C within 120 min; 57 °C → 5 °C within 360 min; else out of compliance → discard[1][2]
Holding limits and time-temperature abuse.
cold holding ≤ 5 °C; hot holding ≥ 57 °C; abuse = Σ Δt while 5 °C < T < 57 °C[1]
The Food Code cooling curve is itself close to a Newton curve with a time constant of about 1.9 h.
Food Code profile ≈ log10(T − 2.8 °C) falling 0.2312 per h ⇔ τ ≈ 1.9 h[3]
Growth potential of Clostridium perfringens, the classic hazard of slow cooling (cardinal temperature model).
μ(T) = μopt·(T−Tmax)(T−Tmin)² / {(Topt−Tmin)[(Topt−Tmin)(T−Topt) − (Topt−Tmax)(Topt+Tmin−2T)]}; growth = Σ μ/ln10 · Δt [log10][8][7]Indicator only: parameters fitted for cooked chicken, lag phase ignored, so it overstates growth. It is not a safety verdict.
Walk-in heat balance: walls, door openings, hot batches and stored product against the compressor.
n_door ~ Poisson(rate·Δt); C_air·dT/dt = UA·(T_kitchen − T) + n_door·E_door·(T_kitchen − T)/Δt + Q_batches + UA_p·(T_product − T) − Q_comp[9][6]Assumption: depths, heat-transfer coefficients, walk-in size, door and compressor loads, and cook times are illustrative values for a mid-size restaurant. The Biot correction is a first-order approximation and is rough for deep pots.
Ticket queue and Little’s law.
tickets ~ Poisson(λΔt); each station: one ticket, 12 cook-min (M/D/c); W = L / X, L = waiting + on stations, X = cook-min delivered in the last 30 min ÷ 12 per h (≥ 1/h; warm-up: opening steady state)[11][10]
Hot holding in the steam table.
T_hot → (setpoint − 0.2 °C × tickets served per h), τ = 30 min[1]Assumption: depths, heat-transfer coefficients, walk-in size, door and compressor loads, and cook times are illustrative values for a mid-size restaurant. The Biot correction is a first-order approximation and is rough for deep pots.
Other operating constants used by the model.
ρc = 3.9 MJ/m³K, c = 3.9 kJ/kgK · k: stock 1.2, thick sauce 0.5 W/mK, ×2 when stirred in ice · ice bath 0 °C, ≤25 kg · blast chiller −5 °C air, ≤40 kg · walk-in: air node 0.4 MJ/K, 300 kg stored product (3.6 kJ/kgK, 60 W/K to air), walls 10 W/K, compressor 3 kW · door openings 10/h + 0.8 per ticket/h, 2.7 kJ/K each; discipline: 40 % of openings, half the exchange (strip curtain) · ticket 12 cook-min · portioning 1 cook-min/kg · ice-bath stirring 0.5 cook per batch · throughput window 30 min (a station counts only when fully staffed) · kitchen 30 °CAssumption: depths, heat-transfer coefficients, walk-in size, door and compressor loads, and cook times are illustrative values for a mid-size restaurant. The Biot correction is a first-order approximation and is rough for deep pots.

Randomness: a seeded mulberry32 generator; distributions used — uniform, exponential (inverse CDF), normal (Box–Muller), Poisson (Knuth). The seed is shown and shareable.

Sources

  1. FDA Food Code 2022 — §3-501.14 Cooling, §3-501.15 Cooling Methods, §3-501.16 Hot and Cold Holding, §3-501.19 Time as a Public Health Control — U.S. Food and Drug Administration, 2022
  2. Cooling Cooked Time/Temperature Control for Safety Foods and the FDA Food Code: for Food Employees — U.S. Food and Drug Administration, 2024
  3. D. W. Schaffner et al. — Quantitative Data Analysis To Determine Best Food Cooling Practices in U.S. Restaurants (Food Code profile ≡ log10 ΔT slope 0.2312 h⁻¹ at 2.8 °C driving force; food deeper than 7.6 cm twice as likely to cool too slowly) — Journal of Food Protection 78(4):778–783, 2015
  4. N. Koreen, W. C. Baldwin, D. W. Schaffner — Cooling Uncovered Foods at a Depth of ∼5.1 cm (2 in.) or Less Poses Little Risk of Pathogen Growth — Journal of Food Protection 87(10), 2024
  5. FSAI Guidance Note No. 15 — Cook-chill Systems in the Food Service Sector (Revision 2), §2.6: start chilling within 30 min of cooking and reach ≤3 °C at the centre within 150 min of cooking; limit loads to e.g. ≤2.5 kg and ≤100 mm thick — Food Safety Authority of Ireland, 2018
  6. F. P. Incropera et al. — Fundamentals of Heat and Mass Transfer: lumped capacitance, Biot number, one-term transient conduction solution — Wiley, 2011
  7. L. Huang, C. Li — Growth of Clostridium perfringens in cooked chicken during cooling: one-step dynamic inverse analysis (Tmin 14.8 °C, Topt 42.9 °C, Tmax 50.5 °C, μopt 5.25 h⁻¹) — Food Microbiology 85, 2020
  8. L. Rosso, J. R. Lobry, J. P. Flandrois — An unexpected correlation between cardinal temperatures of microbial growth highlighted by a new model (CTMI) — Journal of Theoretical Biology 162:447–463, 1993
  9. ASHRAE Handbook — Refrigeration, ch. 24 Refrigerated-Facility Loads (door infiltration, product load, strip curtains) — ASHRAE, 2022
  10. J. D. C. Little — A Proof for the Queuing Formula L = λW — Operations Research 9(3), 1961
  11. D. Gross, C. M. Harris — Fundamentals of Queueing Theory (M/M/c) — Wiley, 2008

Who does this for a living

Educational model — not for operational decisions. Real sites calibrate every constant to their own equipment and data.