Daily Prep Count
Load the subscription export
Everything runs in your browser — the file never leaves this page.
Status every value found in your file, with row counts
Tick the statuses that should be cooked for. Tick nothing and every row counts.
Delivery day / date
What the filters are doing right now
Meal code → meals per day
Match terms are matched as whole tokens. Anything containing a space is matched as a phrase instead, so long-form names still work.
| Label | Match terms | Breakfast | Lunch | Dinner |
|---|
Plan code → Protein Boost dish
| Label | Match terms | Boost dishes |
|---|
Ignore these products
Comma-separated. Matches are skipped quietly instead of flagged as unrecognised.
Add-on items counted separately from the meals
The weekday boxes handle schedules like 3 Days a Week (Mon Wed Fri) — that rule only fires on those days.
| Item | Match terms | And contains | Per day | Days |
|---|
Dietary restrictions read from the notes / allergies column
A keyword match means that customer can't eat any dish carrying a blocked ingredient, and they appear as a substitution on the prep sheet.
Unrecognised notes
This week
Type the dishes in from your menu. Today's row loads straight into Today's menu as you type, so changing a dish when an ingredient doesn't turn up moves the count with it. Leave a box empty and that dish clears from today's count.
Every meal has both boxes. Fill the chicken box as well when that meal is cooked two ways and the count splits veg / chicken for it. Leave the chicken box empty and everyone gets the one dish.
Complimentary meals & manual adjustments
Pick a single meal, or Whole day to make good on a failed delivery. Whole day reads that customer's own plan from the export. Negative quantity for a skip you haven't exported yet.
| Date | Customer | Gives | Track | Days | Reason |
|---|