Build and version recipes
Create recipes with the guided wizard or the advanced editor, save new versions, compare your batches, and import or export recipes as BeerXML or BeerJSON.
A recipe is your plan for what you want to make — its ingredients, its process, and the metrics Brewstiller predicts from them. Recipes are versioned: the details (name, notes, visibility) can change freely, while the ingredients and process are saved as snapshots, so a batch you already ran always points back at the exact version it was made from.
Recipes live under Recipes in the left-hand navigation — in the Day to day group on a hobby workspace, the Production group on a commercial one.
View your recipes
-
In the navigation, choose Recipes. The page lists every recipe in your workspace with its Name, Production type, Style, Visibility, and when it was Updated. A recipe that names no particular style shows a dash in the Style column.
-
Narrow the list with the controls above the table:
- Search — type part of a recipe name.
- Production type — All production types, Brewery, Winery, or Distillery.
- Visibility — shown only when community recipe sharing is on for your Brewstiller. Choose All visibility or In the public library to see just the recipes you've shared publicly. Every recipe is already visible to your whole workspace, so there's no separate filter for that.
The Visibility column reads In the public library for a recipe you have shared publicly, Shared with a club for one shared only with a club, and Visible to this workspace otherwise.
-
If there are more recipes than fit, choose Load more at the bottom to fetch the next page.
-
Choose a recipe's row, or the View button on that row, to open it.
A brand-new workspace shows No recipes yet here — create or import one to fill the list. When the public recipe library is on, that empty state also offers Browse shared recipes.
Create a recipe with the guided wizard
The guided wizard is the quickest way in: pick what you're making and a style, and Brewstiller pre-fills a sensible ingredient and process scaffold you then tune. It's three steps.
- From the Recipes list, choose New recipe (top right). The heading reads New recipe — guided, with the current step beneath it.
- Step 1 of 3 — Production type. The heading reads What kind of production is this? Choose Brewery (beer and cider), Winery (wine, cider, mead and sake), or Distillery (spirits and ready-to-drink), then Continue. If your workspace is set up for a single production type, the wizard picks it for you and opens on step 2 instead.
- Step 2 of 3 — Pick a style. Choose a Style from the list — the wizard pre-fills typical stages, ingredients, and metrics for it. The styles are grouped by category, and Search styles narrows the list by style or category name. For the styles Brewstiller pre-fills a full scaffold for, picking one also shows a one-line description under the box (for example, Spiced/herbed mead. for a Metheglin) — handy when the names alone don't tell them apart; other styles show nothing there. If you pick a style Brewstiller has no specific template for, it says so under the box and seeds a general scaffold for the production type instead. Note that typing in Search styles only narrows the list — it does not choose a style; you still pick one from Style, and a line under the box reminds you while a search is active. Pick No specific style to start from a blank scaffold for that production type. Choose Continue.
- Step 3 of 3 — Customize and create. This is one long page of cards; work down it:
-
How are you making it? — pick the method (for example All-grain or Extract kit for brewing, Fresh fruit or Kit for wine, Grain mash or Sugar wash for distilling). One option is marked Suggested and starts selected — it's the usual starting point for that style, not a decision; pick whichever you're actually doing. Some styles name their own methods instead — a mead's one making method is Honey must, and a cider made on the brewery side offers a fresh-fruit and a juice-or-concentrate option. Changing it re-seeds the ingredients and process to match. If you've already edited the seeded rows, Brewstiller asks first — Keep my edits leaves everything alone, Switch and re-seed replaces them. A style with only one method shows that one option and says so.
-
Start from a goal — appears when the method you picked is Start from a goal, which every production type offers. Brewstiller works the bill backwards from what you want.
- Brewing and winemaking. Enter Batch volume (US gal) and Target ABV (%). Brewing also takes a Target OG (optional); leave it blank and the gravity is solved from the ABV instead. Winemaking adds Sweetness (Dry, Semi-sweet, Sweet), and mead adds a Nutrient protocol.
- Distilling plans the wash. Enter Wash volume (US gal) and Target wash ABV (%) (most washes run at 8–12%), then the two assumptions behind the numbers: Mash efficiency (%) — how much of the grain's sugar your mash actually converts, which applies to grain only — and Yeast attenuation (%), how dry the wash finishes. Under Fermentable mix (proportions by weight) you get the picked style's own mash bill to start from (a bourbon opens on its corn, rye and malted barley; a rum on molasses), and you can change any fermentable, edit the proportions, Remove a row or Add fermentable. Proportions are relative, so 20 / 6 / 4 means the same bill as 67 / 20 / 13. Juices are sized from their °Bx, and their row also shows the approximate gallons to buy. A Computed from your goal panel shows what you'd need. For distilling it also carries your Hearts collection proof through to an Expected hearts figure, so you see the whole chain from grain bill to jars in one place — and the recipe you create carries both halves.
-
Plan a run — appears when the method you picked is a run plan (distilling only). Enter Wash volume (US gal), Expected wash ABV (%) and your Hearts collection proof, and Brewstiller estimates the proof-gallon yield and a jar-target sheet under Expected from your wash. Leave the wash ABV blank and fill in Sugar (lb) — if estimating ABV to have it estimated from a sugar-wash bill instead. If you switch here straight from Start from a goal, the wash volume and ABV you just planned are carried over for you.
Start from a goal and Plan a run are two halves of one job for a distiller, not alternatives: the first plans the wash, the second plans the still run off a wash. Both are planning estimates — what to buy and roughly what to expect. Neither is a gauging or a proof determination, and your own readings on the day govern.
-
Details — give the recipe a Name (required) and an optional Description. There's no visibility choice to make here: every recipe you create is visible to your whole workspace (see Visibility under the advanced editor below).
-
Ingredients and Process — the seeded rows, ready to tune. Change amounts, use Remove on a row you don't want, or Add ingredient / Add process step for anything the template missed. The seeded quantities and units follow your workspace's measurement units: a metric workspace sees its mass ingredients seeded in kg/g with the example quantity converted (not just relabelled), while a US-customary workspace sees the template's own lb/oz.
-
Predicted-metrics inputs — the same optional numbers the advanced editor asks for (described below). It appears only when you aren't working from a goal or a run plan; those compute the numbers for you, so there's nothing to enter by hand.
-
- Choose Create recipe. You're taken to the new recipe's page.
At any point you can choose Switch to the advanced editor (top right) to move to the full form — see Create a recipe in the advanced editor — or Cancel to return to the recipes list.
Beta — the guided wizard. Guided recipe creation is on by default during the beta, but it can be switched off per environment. If your New recipe button opens the full form described in the next section rather than the wizard, it isn't turned on for you.
Create a recipe in the advanced editor
The advanced editor is the full form — every field, nothing pre-filled. Choose Advanced editor next to New recipe on the Recipes list to open it. (When the guided wizard is switched off, New recipe opens this form directly and there's no Advanced editor button.)
- Open the advanced editor. The page heading changes to New recipe.
- Under Details, fill in:
- Name (required) — for example, House IPA.
- Description (optional) — any notes about the recipe.
- Production type — Brewery, Winery, or Distillery. This is set once at creation and can't be changed later, and it decides which process stages you can choose below.
- Visibility — shown as a fixed Visible to this workspace badge, not a choice. Every member of your workspace can already open any of your workspace's recipes, so there's nothing to pick here yet; recipe sharing (a future release) is where this becomes a real setting. Public visibility isn't offered — Brewstiller doesn't support public recipes yet.
- Beverage style (optional) — choose a style from the list. Start typing in the box to search by style name, then pick a match. Leave it on No style if you'd rather not set one.
- Proprietary recipe — marks the recipe as your own trade secret: anyone who opens it sees a Proprietary badge. It doesn't restrict who can open it.
- Under Ingredients, choose Add ingredient for each ingredient, and fill in the
row:
- Ingredient — choose the ingredient this line uses. The box reads Search ingredients…; start typing to search by ingredient name, then pick a match. Each option shows the ingredient's name and category. Choosing the ingredient that is already picked keeps it; to empty the line, choose Clear ingredient under the box.
- When added — the stage it goes in at, or Not stage-specific.
- Quantity and Unit — the amount and its unit (for example, 5 and kg).
- Notes — optional. Use Remove on a row to delete it.
- Under Process, choose Add process step for each step, and fill in:
- Stage — the stage type (the choices match your chosen production type).
- Sequence — the order the step runs in (1, 2, 3, …).
- Instructions — what to do at this stage, for example Mash at 65°C for 60 minutes. (the example itself follows your workspace's measurement system — a US-customary workspace sees Mash at 150°F for 60 minutes. instead).
- Predicted-metrics inputs is a collapsed section — open it if you want the metrics computed from real numbers rather than left blank. What it asks for depends on the production type: brewing takes a Batch volume (US gal), an Apparent attenuation (%), a fermentables bill and a hop schedule; winemaking takes Brix (°Bx), pH, Titratable acidity (g/L) and Free SO₂ (ppm). Every field is optional — each metric fills in once you've given it something to work from.
- The Predicted metrics card carries a Computed on save badge: Brewstiller works the numbers out on the server when you save, so you never type them in directly.
- Choose Create recipe. On success you're taken to the new recipe's page.
If a required field is missing or a value is invalid, the recipe isn't saved and a message appears near the save button describing the problem. The wording comes straight from the form's checks, so it can read plainly rather than conversationally.
Read a recipe
Opening a recipe shows its Name with a visibility badge (and a Proprietary badge if it is), its production type and style (for example Brewery · Saison; a recipe with no style shows the production type alone), and — for the current version — three sections:
- Predicted metrics — the server-computed numbers, and which ones you get depends on what you're making: a brewery recipe shows OG, FG, ABV, IBU and SRM; a winery recipe shows Brix, Potential ABV and Molecular SO₂. A distillery recipe has two halves and shows whichever it has: Wash OG, Wash FG and Wash ABV when the recipe carries a fermentable bill (these describe the wash going into the still, not the spirit coming out), and the yield expected at each spirit stage when it carries stage figures. Within that set, a value that isn't available yet shows as a dash. A recipe with nothing at all to compute from reads No predicted metrics for this recipe type.
- Ingredients — each ingredient with its quantity and unit, the stage it's added at, and any notes. Quantities are shown in your workspace's preferred measurement units (see Settings → Measurement units). An ingredient still to be linked to your inventory carries a Needs inventory link badge. Directly beneath this list, a Readiness panel checks the bill against what you actually have on hand — see Check what you have against the bill below.
- Process — the stage steps, in sequence order, with their instructions.
Across the top of the page you'll find, depending on the recipe:
- Start a batch — begins a new batch with this recipe already chosen. It appears once the recipe has a saved version to work from.
- Edit recipe and Version history — covered below.
- Compare brews, Compare vintages, or Compare runs — the name changes with the production type; see Compare the batches you've made from a recipe.
- Archive recipe — see Archive a recipe.
- Back to recipes.
Check what you have against the bill
The Readiness panel — on a recipe's page, right below its Ingredients list, and also on a Planned batch's guided-steps page — answers "what do I still need to buy?" by checking the recipe's ingredient bill against the lots you actually have on hand.
Each ingredient gets a badge and a plain-language line:
- Have — you have enough on hand.
- Partial — you have some, but not enough; the line says how much more to buy.
- Need — you have none on hand for this ingredient; the line says how much to buy.
- Not tracked — your workspace has no lot of this ingredient at any status, so Brewstiller doesn't know what you have. It is not counted as something you need to buy — check it yourself.
With no lots in your workspace at all, every ingredient on the bill reads Need, at its full amount — the panel bills the whole recipe rather than guessing you have nothing, because that's the one moment the full shopping list is most useful. A note above the rows says so: "No inventory yet — you haven't tracked any lots, so this is the recipe's full bill…" with a Receive a lot link. The moment you've received even one lot of anything, the ordinary Not tracked rule above takes over for ingredients you don't track.
A few honesty details worth knowing:
- An expired lot is excluded from what counts as on hand, but the row still names how many expired lots it found, so a "Need" verdict never looks like it came from nowhere.
- A lot recorded in a unit that can't be compared with the bill's unit (for example yeast lots in kg against a bill in each, or a count of each against a bill in g) is excluded and flagged with a warning on the row and a line above the rows, rather than silently guessed at. The warning names the lot units and the recipe's unit, and tells you the fix: receive the ingredient in the recipe's unit, or change the recipe's unit. Brewstiller doesn't convert between a weight and a count, because it doesn't know what one packet or tablet weighs. The copied shopping list carries the same sentence.
- If your workspace has more lots than the panel can check in one pass, or if reading your lots or your ingredient names fails partway through, the panel says so with a warning line rather than showing a confident answer it isn't sure of.
Batch size. If the recipe has a target batch volume, a Batch size box sits in the panel's header. Type a different volume to rescale the whole bill to that size before comparing it against your inventory — the box is labelled and read in your workspace's preferred measurement units (so a metric workspace enters Batch size in L, a US-customary one Batch size in US gal), converting to the recipe's own stored unit behind the scenes. Leave it blank to compare at the recipe's authored size.
Copy or print the list. Choose Copy shopping list to put a plain-text list on your clipboard (you'll see Shopping list copied.; if your browser blocks the clipboard, the list appears as selectable text instead so you can copy it by hand), or Print to print the panel as it stands. Both are available whenever there's a bill to check, including on an empty shelf.
Start a batch from a recipe
Prerequisite: the recipe needs a saved version — the button doesn't appear on a recipe that has none yet.
- Open the recipe and choose Start a batch.
- The new-batch form opens with this recipe already selected in Recipe, and the Production type set to match it.
- Fill in the rest and choose Create batch — see Run a batch through its stages.
Brewstiller lays out the recipe's process steps as planned stages on the new batch, so you have a checklist to work through rather than an empty timeline.
Compare the batches you've made from a recipe
Once you've made a recipe more than once, you can lay the runs side by side and see what changed.
- Open the recipe and choose the compare button in the header — Compare brews on a brewery recipe, Compare vintages on a winery one, Compare runs on a distillery one.
- Each batch made from this recipe becomes a column, headed by its batch code, its state, and when it started. Wine columns also carry their vintage.
- Read down the rows, which differ by production type:
- Brewing — OG, FG, Attenuation, OG vs target, ABV, and IBU.
- Winemaking — Starting Brix, Target ABV, FG, TA, and pH.
- Distilling — Total yield, Hearts, Heads, Tails, % hearts, First hearts ABV, Hearts ABV window, and Cut jars, all in proof gallons where a volume is shown.
- Choose Back to recipe when you're done.
A value Brewstiller can't work out shows as a dash — the comparison is only as full as the readings you logged. Readings count whether you recorded them on a step card (as you ended the step) or in the batch's QC log: the comparison reads both, the same way the batch's own metrics panel does. On a brewing comparison, an ABV that can't be estimated honestly (because the batch was backsweetened or had fruit added after fermentation, and no ABV was measured directly) reads Unreliable — record a measured ABV rather than showing a number that isn't true.
With nothing to compare yet you'll see No brews yet (or No vintages yet / No runs yet) and a nudge to start a batch from the recipe. Starting a batch is all it takes for a column to appear — readings fill that column's numbers in, they aren't what makes it appear — so a batch you haven't logged anything on yet still shows up, with dashes for its metrics. With exactly one batch so far, the comparison still shows it, with a note that it gets more useful as you log more.
Archive a recipe
Archiving shelves a recipe you're finished with. It can't be undone, and there's no way to see archived recipes again from the recipes list.
- Open the recipe and choose Archive recipe.
- The dialog names the recipe in its title — Archive House IPA? — and warns that this can't be undone and that the recipe will no longer appear in your recipe list.
- Choose Archive recipe to confirm, or Cancel to back out.
On success you'll see Recipe archived. and you're returned to the recipes list without it.
Batches you've already made from the recipe are untouched: each one keeps the exact version it was made from, and any batch still in progress carries on unchanged.
If someone else changed the recipe while your dialog was open, you'll see This recipe changed elsewhere. — close the dialog to load the latest version, then archive again if you still want to. Archiving needs recipe-editing permission; without it the dialog says so and nothing changes.
Edit a recipe or save a new version
Recipe details and the recipe body are saved separately, so you always know which change created a new version.
- Open the recipe and choose Edit recipe. The heading reads Edit recipe.
- To change the details (name, description, beverage style, or the proprietary flag), edit those fields and choose Save details. This does not create a new version. The Production type is shown but can't be changed after creation. Visibility shows as a fixed badge here too — there's nothing to change yet.
- To change the ingredients or process, edit the rows and choose Save as new version at the bottom. This snapshots the ingredients and process as a new version and recomputes the predicted metrics. Earlier versions stay resolvable for any batches already made from them.
If the recipe was changed by someone else while you were editing, Brewstiller reloads the latest values and asks you to review and save again, so your work never quietly overwrites theirs.
View version history
- Open a recipe and choose Version history. The heading reads Version history with the recipe name beneath it.
- The timeline lists the current version (marked Current) together with each earlier version that has produced a batch. Each entry shows its version number, when it was created, and a compact predicted-metrics summary. A version with ingredients still to be linked to inventory shows a relink badge with the count.
- Choose Back to recipe to return.
An earlier version that never produced a batch — for example one you edited and then re-edited before running anything from it — isn't listed yet; only the current version and the versions your batches were made from appear.
Import recipes
If you already keep recipes in BeerSmith, Brewfather, or a similar tool, you can bring them in from a BeerXML 1.0 or BeerJSON export. Each recipe in the file imports on its own — a problem with one won't stop the rest.
- In the navigation, choose Import recipes (under Records on a hobby workspace, Production on a commercial one).
- Under Choose a file, select your export with the Recipe file picker. It must be a
BeerXML 1.0 or BeerJSON file —
.bsmxand CSV aren't supported, and the limit is 5 MB. - Check the Format — Brewstiller guesses it from the file extension (BeerXML 1.0 or BeerJSON); change it if the guess is wrong.
- Choose Import recipes. You'll see Uploading the file… then Reading recipes….
- The Import results appear: a summary of how many recipes were imported and how many
were rejected, then a card per recipe.
- An Imported recipe offers View recipe to open it. If some of its ingredients still need linking to your inventory, a badge says so — open the recipe to link them. Imported recipes are runnable right away; their quantities and costs roll up once the flagged ingredients are linked.
- A Rejected recipe lists why it couldn't be imported.
- Choose Import another file to import more.
Export a recipe to BeerXML
You can take any recipe out of Brewstiller as a BeerXML 1.0 file — the format BeerSmith, Brewfather and most other brewing apps read — so your recipes are never locked in here.
- Open the recipe and choose Export BeerXML in the header.
- Your browser downloads a file named after the recipe and its version, for example
backyard-hazy-ipa-v3.xml. Nothing is uploaded and nothing leaves your workspace: the file is built in your browser from the recipe already on screen. - Open or import that file in the other app as you normally would.
The file carries the recipe's fermentables, hops (with their use, time and alpha acid), yeast, miscellaneous additions, target water profile, batch size, style name, notes and Brewstiller's predicted OG, FG, ABV, IBU and colour.
Some things BeerXML has no field for, so they're written into the file's Notes instead of being dropped — you'll find them under a "Brewstiller (not carried by BeerXML 1.0)" heading at the end of the notes: the recipe's stage plan and process steps, mead/wine/cider figures such as Brix, acidity, pH and free SO₂, spirit-run stages, water ions BeerXML doesn't name, and any ingredient measured in a unit BeerXML can't express (a count of yeast packs, say). The same note lists the BeerXML fields Brewstiller doesn't record, such as boil size, boil time and mash schedule; those are left blank in the file rather than filled with a guess, so another app never reads an invented number as though you had entered it.
Export BeerXML is greyed out when there is nothing to export — a recipe with no saved version yet, or a version with no ingredients, targets or predicted metrics. Hover it to see which.