Understanding Products#
Products are the heart of MenuM8's costing system. This comprehensive guide explains what products are, how they work, and best practices for managing your recipe library effectively.
Table of Contents#
- What is a Product?
- Why Products Matter
- Creating Products
- Basic Information Tab
- Components Tab
- Content Tab (Localization)
- Allergens
- Cost Calculation
- Labour Time in Products
- Tags Tab
- Images Tab
- Dependencies Tab
- Managing Products
- Best Practices
- Common Questions
What is a Product?#
A Product is any recipe or prepared item you create by combining inputs or other products. Products represent things you make from your inputs.
Types of Products#
- Menu Items: Dishes you serve to customers (pasta, salad, soup)
- Component Recipes: Sub-recipes used in other dishes (sauces, doughs, stocks)
- Prepared Items: Batch-cooked items (marinades, dressings, desserts)
- Packaged Goods: Items you package and sell (baked goods, meal kits)
Products vs. Inputs: Inputs are things you buy. Products are things you make. This distinction is crucial for accurate cost tracking.
Why Products Matter#
Products are essential because they form the core of MenuM8's functionality:
Automatic Cost Calculation#
MenuM8 calculates product costs by summing component costs:
- Each component × quantity = component cost
- Sum all components = total product cost
- Divide by output quantity = cost per unit
Nested Cost Tracking#
Products can use other products as components:
- Component products automatically include their costs
- Nested calculations work through multiple levels
- Change an input price, and everything updates automatically
Automatic Allergen Inheritance#
Allergens flow from components to products:
- If any component has an allergen, the product inherits it
- No manual allergen tracking needed
- Always up-to-date allergen information
Menu Costing Integration#
Products are what you add to costings:
- Build menus from your product library
- Apply markup for pricing
- Calculate profit margins
- Generate reports and job sheets
Creating Products#
What You'll Need#
Before creating a product, gather:
- Recipe name: What you'll call this dish
- Component list: Inputs and/or products needed
- Quantities: How much of each component
- Output information: How many servings/portions the recipe makes
Prerequisite: You need at least one input in your system before creating products. See Understanding Inputs if you haven't created inputs yet.
Step-by-Step: Creating a Product#
Let's create a simple recipe: Tomato Basil Soup (serves 4).
Step 1: Navigate to Products#
- Click Products in the main navigation menu
- You'll see a list of your existing recipes
Step 2: Click "New Product"#
- Click the New Product button
- The product creation form will open
Step 3: Enter Basic Information#
Product Name: Enter a clear, descriptive name
- Example:
Tomato Basil Soup
Output Quantity: How many units this recipe produces
- Example:
4
Output Unit of Measure (UOM): Select from dropdown
- Example:
portions
This means our recipe makes 4 portions of soup.
Step 4: Add Components#
Click Add Component for each input or product:
| Component | Quantity | Calculated Cost |
|---|---|---|
| Tomatoes | 0.8 kg | £2.40 |
| Onions | 0.2 kg | £0.40 |
| Garlic | 0.03 kg | £0.24 |
| Fresh Basil | 0.02 kg | £0.30 |
| Olive Oil | 0.05 L | £0.35 |
| Salt | 0.01 kg | £0.01 |
Total Cost: £3.70 Cost Per Portion: £3.70 ÷ 4 = £0.93
Step 5: Save Your Product#
- Review all information for accuracy
- Click the Save button
Automatic Calculations: You never manually calculate recipe costs. MenuM8 multiplies input prices by component quantities automatically.
Basic Information Tab#
When editing a product, the Basic Information tab contains core details.
Required Fields#
Product Name#
- The name you'll recognize in lists and reports
- Should be clear and descriptive
- Use consistent naming conventions
Output Quantity#
- How many units this recipe produces
- Number value (1, 4, 12, etc.)
- Must be greater than zero
Examples:
- 1 (makes one cake)
- 4 (makes four portions)
- 12 (makes one dozen cookies)
Output Unit of Measure (UOM)#
- Unit for the output
- Common options: portions, servings, units, cakes, dozen
- Should match how you'll use or sell it
Optional Fields#
Menu Description#
- Customer-facing description of the dish
- Used in generated menus
- Can be localized for multiple languages
Notes#
- Internal notes for your team
- Preparation instructions
- Storage information
Actions#
Duplicate Product#
- Creates a copy of the product
- Useful for creating variations
- All components and settings copied
Delete Product#
- Removes the product permanently
- Only available if not used in other products or costings
- See Dependencies Tab for details
Components Tab#
The Components tab is where you define what goes into your product.
What Are Components?#
Components are the inputs and products that make up your recipe:
- Inputs: Raw materials you purchase (flour, eggs, butter)
- Products: Other recipes you've created (pizza dough, tomato sauce)
You can mix both inputs and products as components in a single recipe.
Adding Components#
- Click Add Component
- Select Input/Product: Search and select from dropdown
- Quantity: Enter amount needed
- UOM: Should match the input/product's UOM
- Click Add or the component is added automatically
Component Cost Calculation#
For each component:
Quantity × Price Per Unit = Component Cost
Example:
0.5 kg flour × £1.20/kg = £0.60
Using Products as Components (Sub-Recipes)#
One of MenuM8's most powerful features is using products as components in other products.
When to Use Sub-Recipes:
- Items used in multiple recipes (pizza dough, stocks, sauces)
- Complex preparations made in advance
- Standardized portions (burger patties, bread rolls)
Example: Pizza Using Pizza Dough Component
Component Product: Pizza Dough
- Flour: 1 kg
- Water: 0.6 L
- Yeast: 0.02 kg
- Salt: 0.02 kg
- Olive Oil: 0.05 L
- Output: 5 pizza bases
- Cost Per Base: £0.65
Final Product: Margherita Pizza
- Pizza Dough: 1 base (£0.65)
- Tomato Sauce: 0.1 kg (£0.20)
- Mozzarella: 0.15 kg (£1.50)
- Fresh Basil: 0.01 kg (£0.15)
- Total Cost: £2.50 per pizza
Multi-Level Nesting#
MenuM8 handles multiple levels of nesting:
Level 1: Chicken Stock
Components: Chicken bones, Water, Carrots, Celery, Onions
Cost: £5.00 for 5L
Level 2: Béchamel Sauce
Components: Chicken Stock (0.5L), Butter, Flour, Milk
Cost: £2.50 for 1L
Level 3: Lasagna
Components: Béchamel Sauce (0.3L), Bolognese, Pasta Sheets, Cheese
Cost: £8.75 per pan
All costs calculated automatically through all levels!
Component Best Practice: Use components for items used in 2+ products. This ensures consistency and makes updates easy—change the component recipe once, all products using it update automatically.
Content Tab (Localization)#
The Content tab allows you to provide multi-language content for your products.
Multi-Language Support#
MenuM8 supports multiple languages for product content:
What Can Be Localized#
- Display Name: Customer-facing product name
- Menu Description: Description shown on menus
Internal vs Display Names#
- Internal Name: What you see in the MenuM8 interface (always in your primary language)
- Display Name: What customers see on generated menus (can be translated)
Auto-Translation Feature#
MenuM8 can automatically translate your content:
- Enter content in your primary language
- Click Auto-Translate (if available)
- Review and adjust translations
- Save
Language Completion Badges#
The interface shows which languages have complete translations:
- ✓ Green badge: Translation complete
- ○ Gray badge: Translation missing
Allergens#
MenuM8 automatically tracks allergens through your recipe hierarchy—you don't manually assign allergens to products.
How Allergen Inheritance Works#
If any component contains an allergen, the product inherits it automatically:
Example: Caesar Salad
| Component | Allergens |
|---|---|
| Romaine Lettuce | None |
| Caesar Dressing (product) | Eggs, Milk (from mayo & parmesan) |
| Croutons (product) | Wheat/Gluten, Milk (from bread & butter) |
| Parmesan Cheese | Milk |
Caesar Salad Allergens (automatically inherited):
- Eggs (from dressing)
- Milk (from dressing, croutons, cheese)
- Wheat/Gluten (from croutons)
Multi-Level Allergen Inheritance#
Allergens flow through all component levels:
- Input with allergen → Product inherits it
- Product with allergen → Product using it inherits it
- Continues through all nesting levels
Viewing Product Allergens#
On the product detail page:
- See all allergens present in the Allergens section
- Inherited from all components automatically
- Updates when you change components
No Manual Override: Products cannot have manually assigned allergens. This is by design—automatic inheritance reduces human error and ensures accuracy. If a product shows an unexpected allergen, check which component contains it.
When Allergens Change#
If you update an input's allergens:
- All products using that input automatically update
- All products using those products also update
- Regenerate menus for current information
Cost Calculation#
Understanding how MenuM8 calculates product costs helps you price effectively.
Component Cost Formula#
For each component:
Component Cost = Quantity Used × Input Price Per Unit
Total Product Cost#
Total Cost = Sum of All Component Costs
Cost Per Unit#
Cost Per Unit = Total Cost ÷ Output Quantity
Example Calculation#
Product: Simple Bread (makes 2 loaves)
| Component | Quantity | Price/Unit | Cost |
|---|---|---|---|
| Flour | 0.5 kg | £1.20/kg | £0.60 |
| Water | 0.3 L | £0.001/L | £0.0003 |
| Yeast | 0.01 kg | £15.00/kg | £0.15 |
| Salt | 0.01 kg | £1.00/kg | £0.01 |
Total Cost: £0.76 Output: 2 loaves Cost Per Loaf: £0.76 ÷ 2 = £0.38
Automatic Cost Updates#
When any input price changes:
- All products using that input recalculate
- All products using those products recalculate
- Costings update when you refresh them
Always Accurate: Component-based recipes ensure your costs are always up-to-date across all products, no matter how complex your recipe hierarchy.
Labour Time in Products#
Products can include labour time inputs to track preparation time.
Adding Labour Time#
- Create a labour time input (e.g., "Kitchen Prep Time")
- Add it as a component to your product
- Specify the time quantity (e.g., 0.5 hours = 30 minutes)
How Labour Time Aggregates#
In costings, MenuM8 automatically sums labour time:
- Each product's labour time components are totaled
- Displayed in HH:MM format
- Helps with scheduling and staffing
Example#
Product: Margherita Pizza
- Components include: Pizza Prep Time (15 minutes)
Costing with 10 Margherita Pizzas:
- Total labour time: 10 × 15 min = 150 min = 2:30 (HH:MM)
Labour Time vs Labour Cost: Labour time inputs track time only. To track labour cost, set a price (hourly rate) on the labour input.
Tags Tab#
Tags help you organize products beyond basic search.
What Are Tags?#
Tags are flexible labels you assign to products:
- Multiple tags per product
- Custom tags you create
- Used for filtering and searching
Common Tag Categories#
By Menu Section: Appetizers, Entrees, Desserts, Beverages By Dietary: Vegan, Vegetarian, Gluten-Free, Dairy-Free By Cuisine: Italian, Mexican, Asian, French By Meal Type: Breakfast, Lunch, Dinner, Brunch By Season: Summer, Fall, Winter, Spring By Prep Time: Quick, Moderate, Advanced
Assigning Tags#
- Edit the product
- Go to Tags tab
- Type to search existing tags or create new ones
- Tags auto-save when changed
Filtering by Tags#
In the Products list:
- Use the tag filter dropdown
- Select one or more tags
- View filtered products
Example: Find all "Vegan" + "Entree" products for a plant-based menu.
Tag Best Practices#
- Use consistent naming ("Gluten-Free" not "GF" or "Gluten Free")
- Start simple, add tags as needed
- 3-6 tags per product is usually sufficient
- Document your tagging system for team consistency
Images Tab#
Product images help you visualize recipes and create professional menus.
Why Add Product Images?#
- Visual Reference: See what the finished dish looks like
- Menu Creation: Professional-looking menus with photos
- Training: Reference for plating and presentation
- Quality Control: Document standards
Adding Images#
- Edit the product
- Go to Images tab
- Click Upload Image
- Select image file (JPEG, PNG, WebP)
- Image uploads and appears in product
Multiple Images#
- Add multiple photos for different angles or presentations
- First image = primary image (shown in lists)
- Reorder images to change primary
Image Requirements#
- Formats: JPEG (recommended), PNG, WebP
- Recommended Size: 1200 × 900 pixels minimum
- File Size: Under 2 MB (compress if larger)
Image Best Practices#
- Use natural lighting near a window
- Clean, neutral background
- Sharp focus on the dish
- Capture from slightly above (45° angle)
- Include garnishes and accompaniments
- Maintain consistent style across products
Dependencies Tab#
The Dependencies tab shows which other products and costings use this product.
What Are Dependencies?#
Dependencies are connections between items:
- Products using this product: If this is a component in other recipes
- Costings using this product: Menu costings that include this item
Viewing Dependencies#
- Edit the product
- Go to Dependencies tab
- See tree of items using this product
Example:
Product: Pizza Dough
Used by:
- Margherita Pizza
- Pepperoni Pizza
- Vegetarian Pizza
- Calzone
(4 products depend on it)
Why Dependencies Matter#
Price Impact: When you update a product, all dependent products recalculate costs.
Deletion Protection: MenuM8 prevents deleting products used elsewhere. You must remove from dependents first.
Change Assessment: Before modifying a product, see what will be affected.
Safely Removing Products#
If product has dependencies:
- View which products/costings use it
- Edit each dependent item
- Remove this product from them
- Save each dependent
- Then delete this product
If product has no dependencies:
- Deletion proceeds with confirmation
Dependency Safety: MenuM8's deletion protection ensures you never accidentally break recipes or costings by deleting products they need.
Managing Products#
Editing Products#
- Navigate to Products
- Click on product name
- Make changes in any tab
- Save changes
- All dependent recipes recalculate automatically
Duplicating Products#
Useful for creating variations:
- Open the product
- Click Duplicate
- New product created with all components
- Edit name and make variations
- Save as new product
Deleting Products#
- Open the product
- Check Dependencies tab first
- Click Delete
- If product is used:
- Deletion is blocked
- System shows where it's used
- Remove from those places first
- If not used: Product deleted permanently
Deletion is Permanent: Deleted products cannot be recovered. Consider duplicating before deleting if you might need the recipe later.
Best Practices#
1. Build Components First#
Before creating final dishes:
- Create base recipes (doughs, stocks, sauces)
- Create sub-components (prepared proteins, vegetables)
- Then build final dishes from these components
This creates a logical hierarchy and reduces duplication.
2. Use Consistent Naming#
Choose a naming convention and stick with it:
Option 1: Descriptive Names
- "Pizza - Margherita"
- "Salad - Caesar"
- "Soup - Tomato Basil"
Option 2: Simple Names
- "Margherita Pizza"
- "Caesar Salad"
- "Tomato Basil Soup"
3. Be Precise with Quantities#
Accuracy matters for costing:
- Use scales to measure
- Record actual amounts used
- Test recipes to verify
- Account for cooking loss if significant
4. Set Realistic Output Quantities#
Base output on actual servings:
- Actual portion sizes you serve
- Real yield after cooking
- Don't use theoretical portions
5. Tag Consistently#
Develop a tagging system:
- Define standard tags
- Use same tags for similar items
- Don't over-tag (keep it simple)
- Train team on tagging conventions
6. When to Create Sub-Recipes#
Create sub-recipe if:
- Used in 2+ final products
- Complex preparation worth reusing
- Made in advance as prep item
- Has standardized yield/portion
Don't create sub-recipe if:
- Only used once
- Too simple (just use the input directly)
- Never made standalone
Common Questions#
Should I create a product or an input?#
Use an Input when: You purchase it ready-to-use (flour, eggs, canned tomatoes, pre-made stock) Use a Product when: You make it from other inputs (pizza dough, tomato sauce, house dressing)
Can I use products and inputs together in a recipe?#
Yes! Most recipes use both. Example: Margherita Pizza uses Pizza Dough (product) + Mozzarella (input) + Basil (input).
How many levels deep can component products go?#
MenuM8 handles multiple levels of nesting (typically 3-5 levels is practical). More levels make troubleshooting harder.
Can I manually add allergens to a product?#
No, and this is by design. Manual entry increases error risk. MenuM8 automatically computes allergens from components for accuracy.
What if my recipe yields vary?#
Use average yield. If a recipe makes 4-6 servings, use 5. Adjust in costings for specific needs if required.
Do I need to create products for everything?#
No. Only create products for things you actually make and want to cost. Don't create products for every hypothetical variation.
What happens if I delete a product that's used elsewhere?#
MenuM8 prevents this. You'll see an error showing which products/costings use it. Remove it from those items first.
Can products have different prices for different uses?#
Product cost is calculated automatically from components. Pricing (markup) is applied at the costing level, not the product level.