What this quote does and doesn't cover
One flavor at a time. For a mixed order — say 2 Strawberry Happy Ice and 1 Lemon Cookie — quote each flavor and add the totals, because cost per tub is different for every flavor and a blended number would hide which line is actually carrying the order.
The deposit is not revenue. It's shown on the customer total because that's what they hand over, but it's left out of profit and margin — you owe it back when the tubs return.
Profit and margin only appear once the selected flavor has a batch yield and every ingredient with a quantity also has a price. Anything less and the cost is a floor, not an answer.
Quoting something without a full recipe yet? Pick "Custom flavor" at the top, name it, and enter your own all-in cost per tub — ingredients, time to make, tub and label included. That single number should already cover everything the Setup tab tracks for recipe-based flavors: labour (minutes/batch × wage) and packaging (tub + label + overhead). The hint under that field always shows your current Setup numbers so you don't have to switch tabs to check.
How to enter an ingredient
Enter what you actually buy: the pack, what the pack costs, and how much is in it. The app works out the unit cost itself. Then say how much of it goes into one batch — the way you'd measure the recipe, not pre-divided per tub.
Update these from receipts as prices move. That's the whole point — a cost of goods that's six months stale quietly lies to you.
A row with a quantity but no price is highlighted and marks the total with *. That means the real cost is higher than shown, never lower.
Why batch yield matters more than anything else here
Ingredients are entered per batch, but you sell tubs. Batch yield is the bridge. Get it wrong and every number in this app is wrong by the same factor.
Vanilla is 0.8333 — one batch churns to 2.5 gallons on its own and a 3-gallon tub needs a half-gallon top-up, so 1.2 batches per tub. Lemon Cookie is 0.75 — one batch plus a third of another. Strawberry Happy Ice is 1.0 — the recipe makes a full 3 gallons on its own.
Inclusions take up room, so a loaded flavor usually needs less top-up than plain vanilla. Confirm each one as you measure it. Read the Batch Fill Guide.
How this replaces the static ledger
This is a real, working order ledger — add a customer, log an order, track the $5 tub deposit. Cold Quality Products and Red Shed Produce are seeded below with your real order data so nothing starts empty or invented.
Still local to this device for now. Naomi won't see it on her phone until shared storage (Cloudflare KV/D1) is turned on — export from Setup regularly until then so this never becomes the only copy.
When a line item's flavor name exactly matches one you've priced in the Recipe tab, this shows your real cost and margin on that line — same numbers as everywhere else in the app.
What "fully loaded" means — and why your own time counts
Use more than the hourly rate on the paycheque. Add payroll tax, workers' comp, any benefits. An $18/hr employee typically costs $21–23/hr to actually employ. Using the raw wage quietly understates every tub.
And count your own time. If you and Naomi churn the batch, that hour is a real cost even though no one cuts a paycheque for it. Leaving it out makes the margin look better than it is, and hides the fact that the business can't afford to replace you.
On the tub price
Pre-filled at $7.00 from the ePackageSupply 3-gallon HDPE tub-with-lid you linked ($69.99 / 10 = $6.999). Real sourced pricing — confirm it matches what you actually order, since bulk terms or a different supplier could move it.
How to read a margin
Above 50% is healthy for a specialty food product sold wholesale. 30–50% works but leaves little room for a bad month or an ingredient price jump. Under 30% means volume amplifies a thin margin into a real problem — wholesale multiplies whatever the margin is.
The band that matters most is Standard/base at $52. That's your floor. If it doesn't clear cost with room in it, the floor is set wrong — not the product.
On overhead
Fill in rent, utilities, insurance and other fixed monthly costs plus how many tubs you make in a typical month, and the app works out overhead per tub itself — instead of the single guessed number above. Leave "tubs produced" blank and the manual number above keeps being used, so nothing breaks if you're not ready to fill this in yet.
What's next, in order
- Receipt log — photograph invoices, record line items, keep the price book current automatically
- Price drift alerts — flag when an ingredient moves more than 10% so it doesn't erode margin unnoticed
- Batch time log — actual minutes per batch, so labour stops being an estimate
- Real seasonal trends — needs actual Clover sales history flowing in, and months of it, before this can say anything true
Cost history now starts recording the moment you use this page. Sharing that history across your phone and Naomi's, and receipt photo uploads, still need shared storage on Cloudflare (KV, R2) — permissions that aren't granted on the API token yet.