Catering Estimate
Create specialized cost estimates for catering and food service jobs
Overview
The Catering Estimate module enables catering companies to build detailed cost estimates for food service contracts. It covers the entire costing workflow from menu planning and headcount forecasting through to manpower, transport, equipment, and overhead calculations.
A catering estimate is built on top of a standard JobNext enquiry. When an enquiry is converted to a catering job, the system adds specialized screens for menu planning, PAX (headcount) forecasting, and operational cost entry. The output is a fully costed estimate that feeds into the standard quote and contract pipeline.
In catering estimates, standard JobNext concepts map to catering-specific terms:
- Enquiry = A catering contract opportunity (job in pre-execution stage)
- BOQ (Bill of Quantities) = A Menu (e.g., "Omani Breakfast", "Expat Lunch")
- Scope = A Dish with a recipe-based cost per serving
- PAX = Headcount — the number of people to be served per month
- Weightage = Servings per person (1.0 = full serving, 0.5 = half portion)
Catering Estimate Workflow
The catering estimate follows a structured 9-step workflow from initial prospect creation through to a signed contract:
| Step | Action | Where |
|---|---|---|
| 1. Prospect | Create a prospect record for the catering client | Preconstruction → Prospects |
| 2. Enquiry | Create an enquiry under the prospect with Nature of Job = General | Prospect → Add Enquiry |
| 3. Convert | Click the yellow Catering button to convert to a catering job | View Enquiry page |
| 4. Menus | Add BOQ items (menus) via the Requirements tab | Requirements (BOQ) tab |
| 5. Configure | Set menu details, PAX forecast, weekly dish plan, and catering tab costs | BOQ action buttons + Catering tab |
| 6. Summary | Review the complete cost breakdown and profitability | Summary button |
| 7. Approve | Request and receive approval — generates the job estimate | Summary screen + Homepage approvals |
| 8. Quote | Create a quote from the approved estimate, set pricing | Quotes tab |
| 9. Contract | Convert the accepted quote into a customer contract | Contracts |
Converting to a Catering Job
After creating a standard enquiry, you convert it into a catering job to unlock the specialized catering screens. This is done from the View Enquiry page.
-
Open the Enquiry
Navigate to Preconstruction → Prospects, select the prospect, then open the enquiry.
-
Click the Catering Button
On the View Enquiry page, click the yellow Catering button. A confirmation dialog appears — click OK to proceed.
-
Set Contract Dates and Options
A form appears with the following fields. Enter the job contract period and supply responsibility flags, then save.
| Field | Description | Required |
|---|---|---|
| Start Date | Contract start date. Determines the earliest allowed menu start date. | Yes |
| End Date | Contract end date. Determines the latest allowed menu end date. | Yes |
| Monthly Recurring | Whether this is a recurring monthly contract (affects costing formulas). Checked for most catering contracts. | No |
| Supply Responsibility | Checkboxes indicating whether specific supplies (water, gas, electricity, accommodation, etc.) are provided by the customer or company. | No |
The Start Date and End Date define the overall contract period. All menu validity periods must fall within this range. Choose dates carefully — they affect PAX month generation and cost calculations.
Adding Menus (BOQs)
Each BOQ in a catering job represents a Menu — a distinct meal category such as "Omani Breakfast", "Expat Lunch", or "Senior Management Dinner". Navigate to the Requirements (BOQ) tab to add menus.
-
Open the Requirements (BOQ) Tab
Click the Requirements (BOQ) tab on the View Enquiry page.
-
Add BOQ Items
Click Add BOQ, search for meal types (e.g., "MEALS"), and select the ones relevant to this contract.
-
Configure Each Menu
Use the action buttons in each BOQ row to set up menu details, PAX forecasts, and dish plans.
| Column / Button | Description |
|---|---|
| BOQ Code | Unique identifier for this menu (e.g., LO, DO, LE) |
| Description | Full menu name (e.g., "Local Omani Breakfast") |
| Qty | Total PAX across all months (auto-synced from PAX histogram) |
| Rate | Selling price per PAX (set during quoting, not during estimation) |
| Value | Qty × Rate — total contract revenue for this menu |
| 🍴 Menu Details | Fork/knife icon — opens the menu details popup (meal type, dates) |
| 👥 PAX Histogram | People icon — opens the monthly PAX forecast grid |
| 🍕 Menu Plan | Pizza icon — opens the weekly dish planner |
Menu Details
Click the fork/knife icon (🍴) next to a BOQ row to open the Menu Details popup. This defines the meal type and validity period for this menu.
| Field | Description | Required |
|---|---|---|
| Menu Start Date | When this menu becomes active. Pre-populated from the job start date. Must fall within the contract period. | Yes |
| Menu End Date | When this menu expires. Pre-populated from the job end date. Must fall within the contract period. | Yes |
| Meal Type | The type of meal this BOQ represents (Breakfast, Lunch, Dinner, High Tea, Snacks, etc.). Selected from the meal master. | Yes |
| Notes | Free-text notes about this menu (dietary requirements, special instructions, etc.) | No |
Monthly PAX Forecast
Click the people icon (👥) next to a BOQ row to open the PAX Histogram. This is where you enter the expected headcount (number of people to serve) for each month of the menu's validity period.
The grid shows one row per month between the menu start and end dates. Enter the expected PAX for each month. A bar chart at the top visualizes the distribution.
| Feature | Description |
|---|---|
| Monthly Grid | One row per month. Enter the PAX (headcount) value for each month. Auto-saves on each cell edit. |
| Copy Forward | Takes the current month's PAX value and copies it to all remaining future months in the range. |
| Clear Range | Sets all selected months to zero. |
| Bar Chart | Visual chart showing the PAX distribution across months. |
The BOQ Quantity in the main grid is automatically synced to the sum of all monthly PAX values. When you save PAX data, the system updates BOQ Qty = SUM(monthly PAX). This total PAX is used in all cost calculations and ultimately determines the contract value (Total PAX × Rate).
Weekly Menu Plan
Click the pizza icon (🍕) next to a BOQ row to open the Weekly Menu Planner. This defines which dishes are served on each day of the week.
The planner displays a 7-column grid (Monday through Sunday). Add dishes to each day by selecting from the catering scope library. Each dish has an editable weightage that controls how many servings are prepared per person.
| Feature | Description |
|---|---|
| Day Columns | Monday through Sunday. Add one or more dishes to each day. |
| Dish Selection | Search and select from catering-enabled scopes. Each scope has a recipe-based cost per serving. |
| Weightage | Servings per person. Default is 1.0 (one full serving per PAX). Set to 0.5 for half portions, 2.0 for double servings, etc. |
| Copy to All Days | Copies one day's dish list to all other 6 days of the week. |
| Clear Day | Removes all dishes from a specific day. |
Each dish (scope) has a scheduled cost rate — the sum of all materials, labour, and equipment needed per serving. The monthly food cost for a menu is calculated as:
Monthly Food Cost = Average Daily PAX × Days in Month × (Days Served / 7) × Weightage × Dish Cost Rate
This formula accounts for the number of days each dish is served per week and the portion size.
Catering Tab (Overheads & Operations)
The Catering tab on the View Enquiry page contains operational cost inputs that apply to the entire job (not per-menu). These costs are allocated across all menus proportionally by BOQ quantity during estimate generation.
Catering Locations
Define the sites or locations where food will be served. This is a free-text entry for recording the physical locations covered by the contract (e.g., "Main Camp Kitchen", "Site Office Canteen").
Supply Responsibility
For each operational supply type, assign responsibility between the customer and your company. This determines who bears the cost for each category.
| Supply Type | Options |
|---|---|
| Water | Customer / Company / N/A |
| Electricity | Customer / Company / N/A |
| Gas | Customer / Company / N/A |
| Staff Accommodation | Customer / Company / N/A |
| Transportation of Food | Customer / Company / N/A |
| Heavy Equipment | Customer / Company / N/A |
| Light Equipment | Customer / Company / N/A |
| Equipment Maintenance | Customer / Company / N/A |
Manpower Lines
Enter the staff deployed for the catering operation. Each line represents a role category (cadre) with the number of people and their monthly cost.
| Field | Description |
|---|---|
| Role / Cadre | Staff role from the manpower role master (e.g., Head Chef, Kitchen Helper, Supervisor) |
| Qty | Number of people in this role |
| Average CTC | Monthly cost per person (Cost to Company). Uses the master default rate unless overridden. |
| Manpower Cost | Auto-calculated: Qty × Average CTC = total monthly manpower cost for this role |
Plant & Machinery
Enter equipment used in the catering operation. Costs are calculated based on asset value and depreciation period.
| Field | Description |
|---|---|
| Item | Equipment item from the PNM master (e.g., industrial oven, cold storage unit) |
| Qty | Number of units |
| Unit Cost | Purchase/asset cost per unit |
| Depreciation Months | Number of months over which the asset is depreciated |
| Monthly Depreciation | Auto-calculated: (Qty × Unit Cost) / Depreciation Months |
Transport Lines
Enter vehicles and transportation services needed for the operation (food transport, staff transport, etc.).
| Field | Description |
|---|---|
| Region | Geographic region from the region master |
| Vehicle Type | Type of vehicle from the vehicle type master |
| Qty | Number of vehicles or trips |
| Standard Rate | Default unit rate from the region-transport rate master |
| Rate Override | Optional override of the standard rate for this specific job |
| Monthly Cost | Auto-calculated: Qty × Applied Rate (override or standard) |
Overheads & Other Costs
Enter additional overhead and operational costs. Each item has a basis that determines how the cost is calculated.
| Field | Description |
|---|---|
| Cost Item | Overhead item from the cost item master (e.g., disposables, cleaning supplies) |
| Basis | How the cost is calculated: FIXED (one-time total), PER_MONTH (monthly recurring), PER_PAX_DAY (per person per day), or PER_SERVING (per serving) |
| Qty | Quantity of the item |
| Standard Rate | Default rate from the cost item master |
| Rate Override | Optional override of the standard rate |
| Amount | Auto-calculated based on Basis × Qty × Rate |
- FIXED — A one-time lump sum cost, divided by the number of job months for monthly reporting
- PER_MONTH — A fixed monthly cost (Qty × Rate per month)
- PER_PAX_DAY — Cost scales with total person-days (Qty × Rate × Total PAX Days)
- PER_SERVING — Cost scales with total servings (Qty × Rate × Total Servings)
Cost Summary
The Cost Summary screen provides a complete financial overview of the catering estimate. Access it by clicking the Summary button on the View Enquiry page.
The summary displays costs organized into these sections:
| Section | What It Shows | Key Values |
|---|---|---|
| Revenue | Total expected revenue from all menus | Monthly Revenue = SUM(BOQ Qty × Rate) / Job Months |
| Menu (Food) Cost | Raw food cost derived from dish recipes and PAX forecast | Cost per head per day, efficiency %, adjusted cost |
| Manpower Cost | Total staff cost from manpower lines | Monthly total, % of revenue, efficiency adjustment |
| Transport Cost | Vehicle and logistics costs | Monthly total, % of revenue, efficiency adjustment |
| Gas Cost | Cooking gas cost (manually entered) | Monthly amount, efficiency adjustment |
| PNM (Equipment) | Monthly depreciation of plant and machinery | Depreciation + R&M amount |
| Other Direct Costs | STI, consumables, training, laundry, housekeeping, pest control, communications, utensils, bank guarantee, insurance | Individual line items |
| Total Direct Cost (A) | Sum of all direct costs above | Total amount |
| Operating Profit | Revenue minus total direct cost | Amount and margin % (color-coded green/red) |
| Indirect Cost (B) | Overhead per PAX allocation | Total PAX × Overhead per PAX |
| Total Cost (A + B) | Direct + Indirect costs | Before inflation |
| Inflation Adjustment | Inflation factor applied to total cost | Total × (1 + Inflation %) |
| Monthly Profit | Revenue minus total cost with inflation minus management fees | Final profitability % (color-coded) |
Each cost line shows three columns:
- Direct Cost — The raw calculated cost
- % of Revenue — Cost as a percentage of monthly revenue
- Adjusted — Cost after applying the efficiency percentage
Efficiency percentages (default 100%) let you apply cost reduction assumptions. For example, setting Menu Cost Efficiency to 95% assumes a 5% cost saving on food. The summary also includes editable parameters like days per month (default 30.5), R&M percentage, bank guarantee rate, and insurance rate. Review all parameters carefully before requesting approval.
Approval & Estimate Generation
Once the cost summary is reviewed and all inputs are complete, the estimate must go through an approval workflow before it can be used for quoting.
-
Request Approval
On the Summary screen or View Enquiry page, click Request Approval. The estimate status changes to Pending.
-
Approve the Estimate
The approver finds the item in the My Approvals section on the Homepage (document type
CTGEST). Clicking the green checkmark triggers the approval process. -
Estimate Generated
Upon approval, the system automatically generates a full Job Estimate with all cost detail lines (food materials, manpower, transport, equipment, overheads). A revision snapshot is also created for audit purposes.
-
Approve for Quote
Navigate to Operations → Jobs → Estimates, find the approved estimate, and use the pull-down menu to select Approve for Quote. The status changes to "Approved and Ready for Quote".
The approval process executes four automated steps:
- Generates the job estimate header and cost detail lines from the catering data
- Sets the estimate as approved (records approver and timestamp)
- Updates the catering summary status to Approved
- Creates an immutable costing revision for audit trail
Creating Quote & Contract
After the estimate is approved for quoting, follow the standard JobNext quoting and contracting process.
-
Create a Quote
On the View Enquiry page, go to the Quotes tab and click Add Quote. Select Easy Quote = No, choose the approved estimate, and save. Add an additional markup percentage if needed.
-
Submit & Approve
Submit the quote for approval. Once approved, it becomes available for pricing.
-
Set Price
Set the BOQ selling rates (price per PAX for each menu). This determines the contract revenue.
-
Create Contract
Convert the accepted quote into a customer contract. In the Edit Contract screen, link the catering job to finalize all BOQs as contracted.
For detailed information on quoting and contracts, see Estimate-based Quote and Contracts.
Best Practices
- Set accurate contract dates first — the start and end dates determine all PAX month generation and affect every cost calculation. Getting dates right early prevents rework.
- Use Copy Forward for PAX — if headcount is expected to remain stable, enter the first month's PAX and use Copy Forward to fill all remaining months quickly.
- Review dish weightages carefully — the default weightage of 1.0 means one full serving per person. Adjust for items like beverages (0.5) or high-demand dishes (1.5) to reflect real consumption patterns.
- Check cost per head per day — the Summary screen shows the average food cost per person per day. Compare this against industry benchmarks and historical data from similar contracts.
- Use efficiency percentages conservatively — efficiency adjustments reduce costs in the estimate. Set them based on realistic operational improvements, not aspirational targets.
- Include all overhead categories — ensure items like disposables, laundry, pest control, and insurance are accounted for in the Overheads section. Missing cost items lead to underquoting.
- Review the profitability breakdown per menu — the Summary includes a per-BOQ profitability table. Identify menus that are unprofitable and adjust pricing or costs accordingly.
- Create revisions when re-estimating — each approval creates a new immutable revision. If assumptions change, update the inputs and request a new approval rather than editing the old estimate.
Troubleshooting
| Problem | Cause | Solution |
|---|---|---|
| Catering button not visible on View Enquiry | The enquiry may already be converted, or the module is not enabled for this business unit | Check if the Catering tab is already present. Contact admin to verify the catering module is enabled. |
| Menu dates cannot be set outside contract period | Menu start/end dates must fall within the job's start and end dates | Update the job contract dates first (via the catering conversion form), then set menu dates within that range. |
| BOQ Quantity shows zero after entering PAX | PAX save may not have completed, or the grid hasn't refreshed | Save the PAX histogram, close the popup, and refresh the BOQ grid. The Qty should update to the sum of all monthly PAX values. |
| Dishes not appearing in the menu planner | Only catering-enabled scopes appear in the dish selection | Verify that the scope items are tagged as catering scopes in the scope master. Contact admin if needed. |
| Cost Summary shows zero for food cost | No dishes have been added to the menu plan, or dish scopes have no scheduled rates | Add dishes via the menu planner. Ensure each dish scope has cost resources configured in the scope schedule rate. |
| Approval not appearing on Homepage | Approval routing may not be configured for document type CTGEST | Contact admin to verify approval configuration for Catering Estimate (CTGEST) document type in Administration → Approvals. |
| Estimate shows incorrect costs after approval | Cost inputs were changed after the last approval was generated | Update the inputs and request a new approval. Each approval regenerates the estimate from current data. |
| Transport costs appear too low in the estimate | Transport monthly cost may not be multiplied by the number of job months | Verify the transport cost in the Summary. For recurring jobs, transport should reflect monthly cost × total job months in the full estimate. |