Kaya toast counter · a simulated breakfast rush

Kopi Counter Simulator

A busy breakfast rush, simulated minute by minute.

Today–typical takeaway wait after paying
With all three fixes–the three switches below, all on

Turn the fixes on, one at a time:

A simulation: station times, prices and customer numbers are estimates, not the operator's data. Use it to compare fixes, not to predict one outlet's exact wait. Simulated numbers are the median of 20 mornings; the counter replays the most typical one.

08:00 drag to scrub
Simulated breakfast rush at a kaya toast counter · station times are estimates, not the operator's data · median of 20 mornings
Takeaway customer Dine-in customer Waiting longer than promised Item being made (empty = free) +12 items waiting at a station

Every order this morning: how long it waited

Every order so far: minutes waited after paying

Takeaway order Dine-in order What was promised Target wait Now

Change the morningthe rush, the crew, and all five fixes
1

Set the morning

Start from:
When it gets busy
Crew on shift
More settings: customers, seats, menu, crew experience
No seat free: 7 in 10 switch to takeaway, the rest leave
About 5 min on the griddle vs 3 for kaya toast
2

Tick the fixes to try

Today: the cashier says to everyone, and dine-in trays go first.
Where the time and money gobusy stations and lost sales

Where the work piles up

How much of the rush each station was busy. Above 85%, work arrives faster than it gets done and the queue keeps growing.

Where the sales went

Every customer who walked up, valued at what they meant to order. Prices are estimates: kaya toast set $6.20, French toast set $7.20, toast + drink $4.60, drink $2.30, add-on $2.00.

Not counted: customers who never return after a bad morning, or who read the reviews and go elsewhere. That loss is real but can't be simulated honestly.

How this works1,084 Google reviews and the model behind the counter
Why this matters · what customers write

1,084 Google reviews, ten outlets, one pattern

Newest reviews (up to 150 per outlet) from the three best-rated busy outlets, the four lowest-rated, and three in one new town, pulled 25 Sep 2026. Coded against a fixed list of reasons; an independent second coder agreed on 89% of labels (50-review check). Brackets are 95% intervals.

Top complaints, share of reviews

Same menu, different execution

Reviews mentioningBest 3Lowest 4
Staff attitude (complaint)13% [10–17]31% [27–35]
Slow service (complaint)9% [6–12]14% [11–18]
Food quality (complaint)13% [10–17]15% [12–18]
Food taste (praise)46% [41–52]15% [12–19]
Reviews read345486

Complaints about the food itself are no different. What differs is the experience of getting it.

Wait time and the rating

Reviewer's wait (Google field)Avg ★n
No wait3.5586
Up to 10 min3.7473
10–30 min2.8121
30 min or more1.867
2.51★takeaway reviewers (n=90) vs 3.19★ dine-in (n=388)
1 / 1,369reviews with a reply from the operator
How the simulator works

Customers arrive at random at the chosen rate: the rush rate during the rush, the quiet rate otherwise, for the first four hours after opening. A customer who sees more than 6 people in the line to pay may walk away, and the longer the line, the likelier (4% more per extra person, up to 60%). Each order splits into a drink and food items that queue for crew and equipment (toaster 4 slices, griddle 4 slots, egg bath 12). The drink goes to the drinks pickup, food is packed for the food pickup, and an order counts as done only when both are out. Dine-in customers hold a seat for about 25 minutes, and the table is cleared before it is reused.

The live promise looks at the last hour of finished orders of the same kind, learns how the wait grows with the work already queued, and quotes a time that would have been right for 8 (or 9) in 10 of them. Food-quality risk is measured two ways: the drink is ready 5 or more minutes before the food, or cooked food waits 3 or more minutes to be packed. Estimated crew minutes per item (fastest / typical / slowest): cashier 0.5/1/2, drink 0.5/0.8/1.5, kaya toast by hand (scrape, spread, butter, cut) 0.6/0.9/1.3, French toast by hand 1.2/1.6/2.4, eggs 0.2/0.3/0.4, pack 0.5/1/1.5, clearing a table 0.5/1/1.5. Cooking time on the equipment: toast 2/3/4, griddle 4/5/7, eggs 6/7/8. Crew times are multiplied by the new-crew slowdown. The kitchen's hands-on times are set so a busy morning's typical takeaway wait lands near the median wait reviewers report (30 minutes, 65 reviews that state one). The engine matches the textbook queueing formula (Erlang C) to within 0.3% in its tests. Two weeks of the outlet's till, order-ready screen and roster data would replace these estimates with measured values.