The menu
Menu holds categories and items. Each item needs a name, a price, and the category it sits in.
Keep categories close to how guests think — starters, mains, drinks — rather than how the kitchen is organised. The menu is read by guests on the public menu and by staff under pressure; both benefit from the obvious arrangement.
Stock items come next
Stock holds what you buy: ingredients, with their purchase unit and cost. This is the foundation of everything below, so record real costs and keep them current. A chicken price from eighteen months ago makes every dish containing chicken look more profitable than it is.
Recipes are where the value is
Recipes link a menu item to the stock items it consumes, and how much of each. Two things then happen automatically:
Food cost. The system knows what a dish costs to make, so it can tell you the margin on it. This is the single most useful number in a restaurant, and the one most often guessed at.
Stock depletion. Selling the dish reduces the ingredients, so stock reflects what has actually been cooked rather than what someone remembered to count.
A dish with no recipe
It sells perfectly well and tells you nothing about margin — and it does not deplete stock. If food cost looks wrong, start by finding the items with no recipe.
Changing prices
A price change applies to new orders. It does not rewrite orders already placed, which is correct: a guest pays what was on the menu when they ordered.
The menu chapter of the RestaurantOS manual has the full detail.