Kitchen Dash
One shift board for a working kitchen: today's prep, covers, the 86 board and real ticket times at the pass. Pass and covers log Shift report from real timestamps
1Where the data comes from
All of it comes from you. Kitchen Dash makes no network request for data of any kind: no live booking feed, no point-of-sale integration, no supplier catalogue, no weather. It has no route to any of those, so it makes no claim about them. What it holds is the timestamps and counts you enter during a shift, stored in this browser and — when you are signed in and sync is on — copied to your account.
That is also why there is no sample data anywhere in this app. A plausible-looking demo service would be indistinguishable from a real one three screens later, and every number beside it would inherit the doubt.
2Ticket time
bumped_at − fired_at, in whole seconds, for tickets that have both. Nothing else. A ticket still on the board has no ticket time and is never counted as a fast one; it is counted separately as an open ticket, and the median line tells you how many were open when it was worked out.
The median is the middle value of the bumped tickets. The 90th percentile is the nearest-rank value — the time at or under which nine in ten of your bumped tickets left. With fewer than ten bumped tickets the 90th percentile is still shown, because it is still the arithmetic of what you recorded, but the count it was drawn from is printed beside it so you can judge it.
3Covers
The sum of the parties you logged, excluding anything marked no-show — a no-show is recorded so the day makes sense afterwards, not counted as a person who ate. The hourly picture buckets each party by the hour of the time you seated it. Hours with no entry are left out of the chart entirely rather than drawn as zero, because an hour you did not log is not an hour with no guests, and drawing it as zero would say it was.
4Prep
Done over total, per station, counted from the checkbox and the moment it was ticked. Where a task carries a par and an on-hand figure, the quantity to make is par − on hand, floored at zero; where either is missing the app shows the task without a computed quantity rather than assuming one of them is zero.
5The two kinds of blank
A blank in this app is always one of two things, and they never share a sentence. Nothing recorded means the service genuinely holds no such entry — no ticket has been bumped, no cover has been logged. That is knowledge: it tells you to stop looking. Could not be read means something that should have been there was not — a saved day whose record is missing from this browser, or an account copy that did not come back. That is the absence of knowledge: it tells you to retry, or to look on the machine that has it.
On screen the first is grey and dashed, the second is outlined in the accent colour. In every CSV the first writes none recorded and the second leaves the value empty and fills a note column with the reason.
6What this app will not do
It will not predict tonight’s covers, score your service, or infer a number it was not given. If you logged no covers between seven and eight, it does not divide the evening’s total across the hours to fill the gap. There is no model in here and nothing on this page was generated — every figure is arithmetic on entries you can see and delete.