Quick-service restaurants

Restaurant demand forecasting in 15-minute slots

By Data Department

For two national quick-service restaurant chains, Data Department tested its demand forecasting approach on their own data. The first forecast sales per store, per product, in 15-minute slots, with an average error of about 1.1 items. The second, a store-level stock and demand forecast, beat the existing baseline by about 19%.

The decision

A quick-service restaurant makes small decisions all day. How many people should be on shift at 12:15? How many portions should the kitchen prepare before the lunch rush? How much stock should arrive on Thursday? Each one is a trade-off between waiting customers and wasted food.

Daily or weekly forecasts are too coarse for these decisions. Lunch demand can rise and fall within an hour. Both chains wanted to know whether machine learning could forecast demand at the level where staffing, production and stock decisions are actually made.

What we built

We ran two separate projects, one with each chain.

Chain A: intraday forecasting Chain B: stock and demand forecasting
Decision supported Staffing, production and waste Store-level stock and demand
Granularity Per store, per product, per 15-minute slot Per store, per product
Scope Every product in every store 10 restaurants, 574 products
Outcome ~1.1 items average error ~19% better than existing baseline

Chain A. We forecast sales for every product in every store in 15-minute slots. Sales history was combined with weather, public holidays and search-trend signals. These external signals help explain demand shifts that sales history alone cannot see, such as a sudden rainy afternoon or a holiday weekend.

Chain B. We built a store-level stock and demand forecast on 10 restaurants and 574 products, and compared it directly with the method the chain already used.

Results

  • Chain A: average forecast error of ~1.1 items per product, per store, per 15-minute slot.
  • Chain B: ~19% better than the existing baseline across 10 restaurants and 574 products.

An error of about one item per product per slot is small enough to plan kitchen preparation and shift levels in practical terms.

Lessons

Forecast at the level of the decision. A shift manager does not staff by the week. Forecasting in 15-minute slots made the output directly usable for staffing and production.

External signals earn their place. Weather, holidays and search trends carry information that sales history does not. They are cheap to obtain and they help most on unusual days, when planners need help most.

Always compare with the current method. A forecast is only useful if it is better than what the business already does. Chain B's ~19% improvement was measured against its own baseline, not an artificial benchmark.

Test on the client's own data. Results on generic benchmarks say little about a specific chain. Working with each chain's own sales history showed what the approach could do where the decisions are actually made. We use the same logic in our demand forecasting and inventory optimisation work across retail and e-commerce.

Frequently asked questions

What does "~1.1 items average error" mean?

On average, the forecast for one product, in one store, in one 15-minute slot, was about 1.1 items away from actual sales. That level of precision is useful for setting kitchen preparation and shift levels.

Why use weather and search trends in a restaurant forecast?

Weather, holidays and search trends change how many people eat out and what they order. Adding these signals helps the model anticipate demand changes that past sales alone would miss.

Not sure where AI would pay off? Ask us.

Book a free 30-minute AI opportunity review. A senior consultant looks at the decision you want to improve and tells you honestly whether AI fits, what data it needs and what a first step would look like. We reply within two working days.

Get a free AI opportunity review
Free AI assessment