{
  "slug": "catering-quantity",
  "title": "Catering Quantity Calculator",
  "heading": "Catering Quantity Calculator",
  "category": "other",
  "url": "https://www.revenuelab.fyi/toolbox/catering-quantity",
  "summary": "Food weight, portions, and servings for any headcount.",
  "description": "Standard catering portions per adult run about 6 oz of protein, 4 oz of starch, and 4 oz of vegetables for a plated dinner, with buffets running higher because guests serve themselves. This scales those to your guest list.",
  "formula": "Total = guests × portion size × service factor, with children counted at half portions.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=catering-quantity",
  "inputs": [
    {
      "id": "adults",
      "label": "Adults",
      "kind": "number",
      "hint": null,
      "default": 100,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "kids",
      "label": "Children",
      "kind": "number",
      "hint": null,
      "default": 12,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "service",
      "label": "Service style",
      "kind": "select",
      "hint": null,
      "default": "buffet",
      "options": [
        {
          "value": "plated",
          "label": "Plated (1.0×)"
        },
        {
          "value": "buffet",
          "label": "Buffet (1.25×)"
        },
        {
          "value": "family",
          "label": "Family style (1.35×)"
        }
      ]
    },
    {
      "id": "protein",
      "label": "Protein per adult",
      "kind": "number",
      "hint": null,
      "default": 6,
      "unit": "oz",
      "min": 0,
      "max": null
    },
    {
      "id": "starch",
      "label": "Starch per adult",
      "kind": "number",
      "hint": null,
      "default": 4,
      "unit": "oz",
      "min": 0,
      "max": null
    },
    {
      "id": "veg",
      "label": "Vegetables per adult",
      "kind": "number",
      "hint": null,
      "default": 4,
      "unit": "oz",
      "min": 0,
      "max": null
    },
    {
      "id": "hours",
      "label": "Event length",
      "kind": "number",
      "hint": null,
      "default": 4,
      "unit": "hours",
      "min": 1,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "protein",
      "label": "Protein needed",
      "format": "decimal",
      "hint": "pounds",
      "primary": true
    },
    {
      "id": "starch",
      "label": "Starch (lbs)",
      "format": "decimal",
      "hint": null,
      "primary": false
    },
    {
      "id": "veg",
      "label": "Vegetables (lbs)",
      "format": "decimal",
      "hint": null,
      "primary": false
    },
    {
      "id": "apps",
      "label": "Appetizer pieces",
      "format": "number",
      "hint": null,
      "primary": false
    },
    {
      "id": "water",
      "label": "Water servings",
      "format": "number",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Adults: 100",
      "Children: 12",
      "Service style: Buffet (1.25×)",
      "Protein per adult: 6 oz",
      "Starch per adult: 4 oz",
      "Vegetables per adult: 4 oz",
      "Event length: 4 hours"
    ],
    "outputs": [
      "Protein needed: 49.7",
      "Starch (lbs): 33.1",
      "Vegetables (lbs): 33.1",
      "Appetizer pieces: 636",
      "Water servings: 212"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter adults.",
      "Enter children.",
      "Enter service style.",
      "Enter protein per adult (oz).",
      "Enter starch per adult (oz).",
      "Enter vegetables per adult (oz).",
      "Enter event length (hours).",
      "Read your protein needed on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "adults": 60,
        "kids": 7,
        "service": "buffet",
        "protein": 3.5999999999999996,
        "starch": 2.4,
        "veg": 2.4,
        "hours": 2
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "adults": 100,
        "kids": 12,
        "service": "buffet",
        "protein": 6,
        "starch": 4,
        "veg": 4,
        "hours": 4
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "adults": 160,
        "kids": 19,
        "service": "buffet",
        "protein": 9.600000000000001,
        "starch": 6.4,
        "veg": 6.4,
        "hours": 6
      }
    }
  ],
  "limitations": [
    "Estimates assume standard, average conditions — local rules, pricing, and materials vary.",
    "Results are rounded for readability; add a buffer before ordering, booking, or committing.",
    "Double-check anything with a real cost attached against a local quote."
  ],
  "faq": [
    {
      "q": "Why is buffet higher than plated?",
      "a": "Guests serve themselves generously and often return, so caterers plan roughly 20 to 30 percent more food than a portion-controlled plated service."
    },
    {
      "q": "How many appetizers per person?",
      "a": "Four to six pieces per person for a cocktail hour before dinner, and ten to twelve if passed appetizers are the meal."
    }
  ],
  "related": [],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Catering Quantity Calculator (https://www.revenuelab.fyi/toolbox/catering-quantity)"
}