Meals, components and macros
Updated October 31, 2026
A meal in Sahen is a plate you cook: a name, a photo, and the components that go into it with their quantities. Meals are the unit of production. Everything the kitchen prepares, from the production sheet to the bag receipts, is counted in meals and their components.
Creating a meal
Open Meals and create a new one. You can save a draft with only an English name and come back later. A draft is invisible to customers and cannot be put on a menu.
Components and quantities
Build the plate from components: rice, grilled chicken, tahini sauce, and so on. For each component you set an amount and a unit.
- Search to reuse. Start typing and pick an existing component, so the same grilled chicken is counted as one item across your kitchen.
- Or create a new one on the spot.
- Editing on this plate stays on this plate. Changing a component's amount on one meal does not change other meals that use it.
Quantities matter beyond the recipe. After cutoff, the production sheet multiplies each component's amount per plate by the number of plates ordered, so the kitchen sees totals like "grilled chicken: per plate × plates = total". Accurate quantities mean an accurate prep list.
Macros
Each component carries its nutrition values: calories, protein, carbohydrates and fat. Customers following a diet care about these numbers, so enter them from your recipe cards or nutrition labels and check them when you change a portion.
Photo
Add a photo of the finished plate. Customers choose with their eyes, and a meal cannot be activated without a photo. An optional assistant can draft a meal photo for you to review.
Meal types and programs
Two kinds of tags decide who can order a meal.
- Meal types are your courses, such as Lunch, Salad or Beverage. A package says which meal types a customer gets each day.
- Programs are your diets, such as Balanced, Low carb or Vegetarian. A customer only sees meals tagged with their program.
A meal type can be program-agnostic, for example a drink that suits every diet. Meals of such a type do not need a program.
This filtering happens on the server. A customer's app or storefront never receives a meal they are not eligible for, so a low-carb customer cannot pick a high-carb plate by mistake. The same tags drive the coverage check when you publish a menu.
Programs do not change production. The production sheet counts meals across all programs together.
English and Arabic
Customers use Sahen in Arabic and English. Every meal needs a name and description in both.
The meal composer has an Arabic copy helper: it drafts the Arabic name and description from your English text. The draft is marked "Draft · review" until you edit or accept it. Read it before you publish: you know your dishes, and names like family recipes deserve a human check.
Activating a meal
A meal needs all of the following before it can be activated:
- a photo;
- at least one component;
- at least one meal type;
- at least one program, unless every meal type it carries is program-agnostic.
An untagged meal could be ordered by nobody, so Sahen does not let it go live. Only active meals appear in the menu picker. Once active, add the meal to a day in Menus.
Meals from a recipe
On the meals list, From a recipe… lets you paste a recipe and add a photo. Sahen drafts a meal from it, reusing your existing components where they match. The result is a draft for review. Nothing is activated automatically.
Changing a meal later
You can edit an active meal at any time. Keep in mind:
- orders already frozen at cutoff keep what was frozen;
- a meal that customers already picked can be removed from a published menu without losing their history;
- if removing a meal leaves a program without an eligible meal on a published day, that day goes back to draft until you cover it.
Tips
- Reuse components wherever the same thing is cooked once in bulk. The production sheet then gives a single total.
- Name meals the way your customers talk about them, in both languages.
- Check the macros of your most popular plates first; those numbers are the ones customers quote back to you.
See the glossary for the terms used here.