Concepts
Most manuals start with buttons. This one starts with the thinking, because every screen in Batchmother follows from a handful of ideas — once you have them, the details have a place to land.
Brewfather owns what, Batchmother owns when and where
Brewfather (or your recipe book) knows what you brew: recipes, gravities, volumes. Batchmother deliberately does not compete with that. It answers the two questions Brewfather cannot: when and in which vessel does this batch fit, and where has this batch been. The Brewfather integration is read-only — Batchmother imports batch facts and never writes back.
Capacity is vessels over days
Your brewery's capacity is not a number, it is a grid: vessels down the side, days across the top. A booking is one batch occupying one vessel for one stage over a span of days — brew, fermentation, conditioning, packaging, serving. Two batches cannot hold the same vessel on the same day, and Batchmother refuses to double-book rather than warn politely.
Planning is day-level on purpose. Breweries plan in days, not minutes; a brew day is a day, a transfer happens on the boundary day where one booking ends and the next begins.
The chain IS the traceability
Here is the core trick: the plan and the traceability record are the same thing. A batch's ordered bookings — brew slot → fermenter → brite tank → kegs — form its chain. While the batch is in the future, the chain is your plan. As days pass, the same chain becomes history: which vessel, which days, which events happened along the way (dry hop, cold crash, yeast harvest, carbonation). There is no separate logbook to keep in sync, so it is never out of sync.
Nothing is deleted, batches change status
A batch moves through statuses — planned, active, completed, archived, discarded — and normal work never deletes anything. A dumped batch is discarded, not erased: its chain remains, because traceability that can be deleted is not traceability. (A hard delete exists for genuine mistakes, like a batch created twice — it is the escape hatch, not the workflow.)
Kegs are individuals, cans are lots
A keg has a code (KEG-01), a life of its own, and a history of every batch
it has held. Filling a keg books it to the batch until you mark it returned —
so "where is our beer right now?" always has an answer. Cans and bottles are
counted as lots instead: quantity × format × size, recorded on the day
they were packaged. A batch can use both on the same day.
A packaging occasion is a run, and the L-code is the identity
The day you package, Batchmother groups everything you fill and record into a
package run and generates its L-code: L{YYMMDD}-{batchCode}, for
example L260707-B-101. That code is the printed lot identity — the thing on
the label that lets anyone trace a can back to its batch and forward to its
siblings. Best-before is just label text; it can change without changing what
the beer is. The L-code cannot.
Trace levels are a ladder
Ceremony should match where your brewery is, so the trace level is a setting, not a fact of life:
- Off — no gates. L-codes are still generated (they cost nothing, and your early history keeps its identity), label checks are voluntary.
- Attest — a run cannot complete without a signed label check (name + label version) and at least one supplier lot on the batch.
- Checklist — as Attest, plus every item on your label checklist must be ticked. The ticked items are frozen into the run, so editing the checklist later never rewrites history.
Runs completed without a label check are marked unverified — a quiet badge, not an error. Your tuning-phase history stays honest without being punished.
Glossary
| Term | Meaning |
| --- | --- |
| Batch | One beer through the brewery, from brew day to the last keg |
| Turn | One brewhouse fill; a big batch is several turns |
| Booking | A batch occupying a vessel for a stage over a span of days |
| Chain | A batch's ordered bookings — the plan that becomes the traceability record |
| Event | A dated action on a booking: dry hop, cold crash, yeast harvest, carbonation |
| Package run | One packaging occasion — the kegs and lots of one batch on one day |
| L-code | The run's generated lot identity, L{YYMMDD}-{batchCode}, printed on the label |
| Keg pool | Your kegs as individuals: free, in use, or borrowed as vessels |
| Trace level | How much ceremony a run needs to complete: Off, Attest, or Checklist |
Next: Getting started walks the whole road once, from an empty brewery to a traced lot.