Feast AnalyticsHow to Forecast Restaurant Sales for the Month Ahead

How to Forecast Restaurant Sales for the Month Ahead

Build a restaurant sales forecast by daypart, using expected orders and check size. Adjust for trading days, seasonality and known changes.

Forecast next month's restaurant sales from your own sales history, adjusted for seasonality and the days you will actually be open. Estimate a Tuesday lunch from comparable Tuesday lunches, not from an average that also includes Friday dinner. Multiply expected orders by expected net sales per order, then add the upcoming dayparts.

Keeping orders separate from spending matters. A menu price rise can increase sales without bringing in another order; a month with more Friday dinners can beat the previous month without any individual dinner getting busier. Those are different reasons to change a forecast. A revenue target is different again: it belongs in your restaurant marketing strategy, not in the forecast unless the expected business supports it.

You can work through this in a spreadsheet or have your AI help with the calculations. Feast's free Restaurant Data Connector gives your AI access to available data from your connected POS, so you do not have to keep exporting and uploading spreadsheets. Start with the history you have, then give the AI the dates, dayparts and known changes you want it to use.

Choose the period and the sales you are forecasting

Start with the next month or a defined set of upcoming weeks. Use actual trading dates rather than multiplying a typical day by every day on the calendar.

Use net restaurant sales after discounts and refunds, with customer taxes and employee tips kept separate according to your records. Keep the same definition when you later compare the forecast with actual sales. A delivery payout after platform fees is not the same measure as the restaurant's sales before those expenses.

Split the forecast where customer behavior is meaningfully different: lunch and dinner, weekdays and weekends, or dine-in and delivery. Keep the pieces mutually exclusive so one order is never counted twice.

If you use orders, pair them with sales per order. If you use covers for dine-in, pair them with sales per cover and forecast delivery separately. A table of guests and its single check are different units.

Compare the same daypart on similar days

Pull sales and completed-order counts from recent comparable dayparts. Several ordinary Tuesday lunches are a better starting point for next Tuesday lunch than your average across Friday nights, holidays and days you were closed.

A simple starting estimate is the average number of completed orders across those comparable dayparts. Calculate sales per order from those same dates: total net sales divided by total completed orders.

Here is a hypothetical baseline using four comparable Tuesday lunches. This illustrates the method, not a rule that every restaurant should use four observations.

Tuesday-lunch estimateCalculationResult
Orders across the four lunches48 + 52 + 50 + 50200 orders
Expected orders next Tuesday200 orders ÷ 4 lunches50 orders
Net sales per order$4,400 combined sales ÷ 200 orders$22
Next Tuesday's lunch forecast50 orders × $22$1,100

Dividing the combined sales by combined orders gives busier lunches the appropriate weight instead of averaging each day's average check equally. The final line is the starting forecast before any known changes.

Then check whether recent weeks represent the season you are forecasting. If summer tourism is ending or students are returning to town, carrying the last few weeks forward can give you the wrong answer.

Look at the month you are forecasting in last year's records. Match weekdays and dayparts, and line up holidays or local events by when they happen, not just their calendar date. For a strongly seasonal restaurant, the average orders in those equivalent dayparts can be a better starting point than the most recent weeks. Use current prices and order mix when estimating what those orders will spend. Forecasting: Principles and Practice describes using the corresponding past season as a simple forecast.

Check that starting point against recent trading. Changed opening hours, a larger dining room or a lasting change in demand may make last year's level misleading. Choose a baseline that reflects those differences, and do not add a second seasonal increase if you already selected history from the right season. Without a full year of records, you can still make a useful starting estimate from comparable recent dayparts; you just have less evidence for an annual seasonal pattern.

Mark unusual events rather than quietly deleting weak days. A one-off closure may be irrelevant to a normal day's forecast; frequent weather disruption may be part of the business you need to expect. Keep the original history and note why an event is or is not representative.

If the restaurant is new, use the limited trading history, reservations, capacity and other available evidence to make a provisional estimate. Keep the uncertainty visible and replace assumptions with actual results as they arrive.

Give your AI the data and the forecasting instructions

Ask your AI to show the history it used, not just produce a monthly total. Once your POS is connected through Feast, start with an instruction like this:

Forecast next month's sales using my restaurant's available sales history. First tell me which dates, locations and sales fields you can access. Compare matching weekdays and dayparts, and use the equivalent season last year where that history is available. Keep expected orders separate from sales per order. Ask me about closures, changed hours, menu prices and events that are not in the data. Show the forecast by daypart and for the whole month, explain each adjustment, and keep the revenue I want separate from the sales the evidence supports. If a field or period is missing, tell me rather than filling it in.

Check the dates and sales definition it reports before relying on the result. The AI cannot account for a planned closure you have not told it about, and a missing sales date is not necessarily a day with no sales.

Feast's Revenue Analyzer also provides a built-in forecasting model. When that model's output is available to your authorized AI connection, ask your AI to use it and explain the forecast, rather than recreate the calculation from scratch. The free connector supplies the data connection; access to the Revenue Analyzer is separate.

Build the total from orders and average order size

For each upcoming daypart, multiply expected completed orders by expected net sales per order. Add those forecasts to get the period total.

Daypart sales forecast = expected completed orders × expected net sales per order.

Here is a hypothetical restaurant forecasting four weeks. It opens for lunch and dinner on six days each week. That means four weeks × six trading days = 24 lunches and 24 dinners. The table summarizes the daily estimates; it does not assume that every Tuesday and Saturday will be equally busy.

DaypartExpected orders × net sales per orderSales forecast
Lunch1,200 orders × $22$26,400
Dinner2,040 orders × $32$65,280
Total: 3,240 orders$26,400 + $65,280$91,680

The restaurant now has an explanation for the sales number: expected lunch and dinner business, at the prices and order mix used in the estimate. It can also see whether the forecast asks the kitchen to serve more than it can handle.

Check demand and capacity separately. Empty seats do not establish demand, and strong reservations do not mean every table will arrive. Use your own booking-to-arrival history when reservations inform the estimate. Add expected walk-ins only if they are not already included in the completed-order baseline.

Adjust for known changes without counting them twice

Change the forecast when you have relevant information the historical starting point does not contain. Planned closures, confirmed events, changed opening hours and a new menu price can all matter. The forecasting textbook recommends making adjustments for significant additional information.

Suppose the hypothetical restaurant will close one lunch for repairs. Remove the sales that lunch would otherwise have contributed:

Closure adjustmentCalculationResult
Original forecastLunch and dinner combined$91,680
Sales removed50 lunch orders × $22−$1,100
Revised forecast$91,680 − $1,100$90,580

A private event that replaces regular dinner should replace that dinner's expected sales, not sit on top of them. A price rise should change the affected items' expected order value; it does not justify increasing every check by the full percentage when only part of the menu changes.

Keep an untested campaign separate. “We hope this ad adds orders” is a scenario to explore, not evidence that those orders belong in the most likely forecast. If a repeated campaign has usable history, include a restrained assumption that reflects that evidence and the current capacity.

Show how much the answer depends on uncertain orders

A single forecast is useful, but the business also needs to know what happens if demand is weaker or stronger. Start with the errors in forecasts you have already made. If comparable dayparts have repeatedly missed by similar amounts, use that experience when deciding how much room to allow.

Until you have enough forecast history, show a clearly labeled what-if calculation. These hypothetical cases keep the same order mix and prices:

What if orders change?CalculationSales
10% fewer orders$90,580 × 0.90$81,522
Orders match the forecast$90,580 × 1.00$90,580
10% more orders$90,580 × 1.10$99,638

This is not a statistically validated prediction interval or a recommended range for every restaurant.

Use the lower case to consider purchases, staffing commitments and cash needs you cannot easily reverse. Use the higher case to check whether the team could serve the extra demand. Keep your best estimate between those cases honest; do not raise it simply because the lower result is uncomfortable.

Save the forecast, then learn from the result

Save the forecast before the trading period begins. As actual sales arrive, compare them with that saved version before updating the weeks ahead.

When a daypart misses its forecast, compare its order count and sales per order separately. If orders were close to the estimate but sales were lower, check discounts and the items or party sizes represented in those orders before lowering your demand estimate. If sales per order held but fewer orders arrived, check the opening hours, bookings and conditions on that date. Change the assumption that was wrong; do not reduce both automatically.

You can check a proposed forecasting method against earlier periods too. Pretend you are standing at the earlier start date, use only information available then, and compare the estimate with what happened afterward. A method should earn its complexity by beating a simple estimate from comparable dayparts. Forecasting: Principles and Practice explains why accuracy must be tested on data the forecast did not already know.

Keep the revenue goal beside the forecast

If your forecast is below the revenue you want, the difference calls for a plan. It does not call for editing the forecast until it matches the goal. Forecasting estimates what is likely; planning chooses what to do about it. Hyndman and Athanasopoulos distinguish those jobs explicitly.

Prioritize the dayparts where you can sell more, then choose a supported way to bring in that business. The guide to getting more customers on slow nights covers one such opportunity. The restaurant marketing-budget guide turns a sales goal into additional business and a budget without pretending the goal is already a forecast.

Feast's Revenue Analyzer gives you a forecasting tool and a revenue calculator built around your restaurant. Use the forecast to understand the business you expect, then explore the additional orders and marketing investment behind the revenue you want. With an authorized AI connection and access to the relevant tools, you can ask follow-up questions and build your own analyses around those numbers. See how Feast's Revenue Analyzer can help you forecast sales and plan for growth.