Saturday night, 9:30 PM, the kitchen has 18 open tickets and the chef yells "stop." Keep accepting new QR orders and the pasta is delayed 35 minutes — and that customer leaves a 1-star Google review. The fix is order throttling.
What Is a Queue Depth Threshold?
Every kitchen has a ceiling on concurrent open tickets it can execute well. thMenu's KDS counts open orders; once you cross the threshold (e.g. 15 tickets) the QR menu shows "We're busy right now — please try again in 5 minutes." The customer keeps their cart, they just wait.
The threshold is dynamic: 12 at lunch, 18 at dinner. If the pizza station is the bottleneck, category-level throttling can pause pizza orders while salads keep flowing.
A Roman Example: Fila Virtuale
In Trastevere, Da Enzo trattoria has used a virtual queue since 2023. The customer sees "current wait is 12 minutes, your order will be taken at 8:45 PM" and confirms — frustration disappears because the expectation was set upfront.
In the US, DoorDash exposes the same idea as a "pause new orders" feature. When kitchen prep time exceeds 35 minutes, the restaurant can pause inbound orders for 15 minutes — refund rates drop and CSAT climbs.
Technical and UX Implementation
Backend: the KDS keeps live open-ticket counts in redis/D1. POST /api/orders checks the count; if the threshold is exceeded the endpoint returns 429 Too Many Requests with a Retry-After: 300 header. The client shows a modal with a 5-minute countdown and auto-retries when it expires.
UX golden rule: don't hide the wait — celebrate it. "We're busy because everything is cooked fresh" reframes positively. The cart is preserved; if the customer closes the screen and returns later, the same cart resumes.
FAQ
Doesn't throttling lose revenue? No — a 1-star review from a botched order is more expensive than a 5-minute wait. Quality protects long-term revenue.
What threshold should I pick? 3-5 active tickets per station. A 5-station kitchen comfortably runs at 18-25 open tickets.
What if the customer leaves? The cart persists 24 hours; they resume on return. No Stripe pre-auth — payment is captured only when the order is accepted.
Found this helpful? Share it.
Related articles
Why Digital Menus Increase Restaurant Revenue by Up to 30%
Studies show restaurants using digital QR menus see measurable increases in aver…
When a Customer Downgrades, What Happens to Old Features? — The Silent Feature-Drift Problem in SaaS
Most SaaS apps run a single line of code when a customer downgrades — but old fe…
JWT alg-confusion attack — why Supabase's HS256 → RS256/JWKS migration breaks legacy verifiers
Verifiers that never decode the JWT header are wide open to `alg=none` and alg-c…