Steal this list. Here's a complete, aggregated shopping list for a classic 3-dish buffet for 50 — in the units you actually buy at the store, not the units a recipe is written in. Copy it, adjust for your menu, and you'll walk out of the store with what you need and not a case of leftover buns.

The menu we're shopping for:

  • Herb-roasted chicken (bone-in thighs)
  • Garlic mashed potatoes
  • Green bean almondine
  • Dinner rolls + salad + basics

Scale any line up or down for your headcount at the end.

The list, in purchase units

The trick to a catering shopping list is aggregation: every recipe that uses butter gets added together, then rounded up to what the store sells. Here's the whole menu for 50, already aggregated.

Proteins

  • Bone-in chicken thighs — ~40 lb (about 6 oz cooked per person, ~2 thighs each)

Produce

  • Russet potatoes — ~25 lb (4 oz mashed per person, plus peel loss)
  • Green beans — ~15 lb (about 4 oz per person)
  • Garlic — 3 heads
  • Fresh herbs (thyme/parsley) — 4 bunches
  • Lemons — 6
  • Salad greens — 3 lb (bagged/boxed)
  • Salad toppings (tomato, cucumber, carrot) — ~5 lb total

Dairy

  • Butter — 2 lb (mashed potatoes + green beans + roasting)
  • Heavy cream / milk — 1 qt
  • Sour cream — 1 lb (mash richness)

Pantry / dry

  • Sliced almonds — 12 oz
  • Olive oil — 1 bottle (750 ml)
  • Chicken stock — 2 qt
  • Dinner rolls — ~60 (about 1.2 per person; buy the 4-dozen case + a dozen)
  • Salad dressing — 2 bottles
  • Salt, pepper, spices — check stock

Consumables (the line everyone forgets)

  • Half-size foil pans + lids — 8
  • Sterno / chafer fuel — 6
  • Serving spoons/tongs — 6
  • Plates, forks, napkins — 60 each (10% cushion over 50)
  • Gloves, foil, cling wrap — as needed

That's the whole trip. Notice the two things that make it work: everything is in buy-at-the-store units, and there's a cushion built into portions and disposables so you're not exactly at the edge.

How the quantities are built

You don't have to memorize these — you derive them. The per-person portions behind the list:

  • Protein: ~5–6 oz cooked per person. Account for cooking loss when you buy raw.
  • Starch (potatoes/rice/pasta): ~4 oz per person.
  • Vegetable side: ~4 oz per person.
  • Rolls/bread: ~1–1.5 per person.
  • Disposables: headcount + 10% cushion.

Multiply each by your guest count, aggregate anything that repeats across recipes (butter, oil, garlic), then round up to purchase units. That's the entire method (scaling a recipe cleanly across headcounts has its own traps — see scaling recipes cleanly for catering).

Scale it to any headcount

The list above is for 50. To scale:

  • For 100: double every quantity, then round to purchase units again (two 4-dozen roll cases, not "120 rolls").
  • For 25: halve it, but don't halve the consumables cushion or your setup basics — you still need serving spoons and pans.
  • Watch the rounding. Small events waste more proportionally because packaging comes in fixed sizes. That's part of why very small jobs carry a minimum (see How much to charge for catering for 50 guests).

Why the shopping list is also a costing tool

Here's the part most caterers miss: your shopping list is your food cost. Every line has a price, and the sum is exactly what the job costs you in ingredients. If you keep your recipes costed, the shopping list and the food-cost number are the same data seen two ways — which means the moment you know the list, you know whether the price pays you (the 28–35% rule ties it together at Food cost percentage for caterers: the 28–35% rule).

That's the whole idea behind building the list from your costed menu instead of writing it by hand: photograph or type your menu once, and CaterKit costs the recipes and auto-builds the shopping list scaled to the guest count — aggregated, in purchase units, and it works offline in the store where the signal drops. It also builds the prep list and the pack checklist from the same menu, so event day is already laid out (see the catering pack list).

Shopping tips that save money and stress

A few habits that make the trip cheaper and calmer:

  • Buy proteins by the case. The bulk price on chicken, pork, or beef is often several points cheaper per pound than retail packs — and it moves your food cost the most because protein is your biggest line.
  • Shop the perishables last. Buy dry goods and consumables early in the week; save produce, dairy, and proteins for as close to prep day as your storage allows, so nothing turns before the event.
  • Keep a standing consumables kit. Foil pans, sterno, gloves, and serving utensils don't spoil. Buying them in bulk once means they're never the reason you make a second trip.
  • Check stock before you shop. Salt, spices, oil, and foil are the items you assume you have and don't. A 30-second pantry check beats a mid-prep run to the store.
  • Round to cases, not counts. Buying 60 rolls means a case of 48 plus a dozen — plan your list around how the store actually sells things, not the exact headcount number.

Small discipline here protects the margin you priced in. A forgotten item at event-day prices, bought in a panic, is where a healthy job quietly loses a few points.

Build your next list from your menu

Typing a shopping list by hand for every event is the evening you don't get back. Cost your menu once and let the list build itself, scaled to any headcount and ready to check off at the store.