Improve your brewing with science, pro recipes and experiences.
Scroll to brew
What are you brewing today?
Add your own tasting notes as you go — the coach reads what you write, it can't taste the cup for you.
Country of origin
Roast level
Grinder
Grind size
Roast age
Altitude
Process
Hardware & targetDrives the compensatory mechanics below — not generic advice.
Brewer
Priority
Last brew logOptional — feeds the feedback-loop correction in step 6.
Previous grind (µm)
Previous slurry temp (°C)
Previous drawdown (mm:ss)
Tasted outcome
Quick add · Lume
Nitro Washed — bright, delicate, built for clarity.
Colombia · Risaralda · Milan
bag / photography
MelonKiwiWatermelon
Process
Nitro Washed
Roast age
13 days
Altitude
1,850 masl
Roast level
Log a coffee and pick a brewer for a compensatory brew protocol tuned to it.
Strengths
Vivid, juicy fruit
High clarity ceiling
Forgiving sweetness
Challenges
Thin body if rushed
Astringent when over-agitated
Young — still degassing
Pick a starting point, then shape it. Everything downstream follows the radar.
drag any point
What do you want from this cup?
Live priorities
CoachChasing clarity and florals — we'll favour a finer grind and gentle agitation to keep it clean.
Recommended Recipe
Bright & Layered
Aiming for: a clean, articulate cup where the fruit reads distinctly.
Why: your radar leans hard into clarity and florals, so this recipe trades body for definition — finer grind, faster flow, gentle agitation. Trade-off: a lighter mouthfeel. Aiming for: a clean, articulate cup where the fruit reads distinctly.
1
Bloom — 45g, 40s
Wet evenly, then swirl once to settle the bed.
A generous, even bloom degasses this young coffee so extraction stays even and sweet — uneven blooms are where clarity is lost.
2
First pour — to 150g
Slow spiral, keep the water shallow.
Gentle, shallow pours limit agitation — the enemy of a delicate washed coffee — protecting against astringency.
3
Second pour — to 248g
Finish by 1:45, aim to drawdown ~2:30.
A brisk total time keeps the cup bright and prevents the tail-end bitterness that would bury the florals.
4
Swirl & serve
Swirl the carafe, rest 60s, taste.
A short rest lets volatile aromatics settle into the cup — the difference between smelling the fruit and tasting it.
0:00
Ready when you are.
How did it taste?
The coffee scene rests; the flavour wheel takes over. Circle what you tasted, then let the coach read the cup.
Flavour wheel
Who is tasting?
Pick from the wheel — your notes flow into the debrief below and the coach reads them.
Owner palate
Logged as Joseph. Your reading is bias-corrected against the calibration panel, and your descriptors are translated into panel vocabulary before diagnosis.
Hover to preview, click to add. Everything you pick lands in your tasting notes.
Nothing picked yet — start with the fruit.
Sweetnessbalanced
Bodylight
Aciditybright
Clarityclean
Your tasting notes
Write what you actually tasted — your words. Tap a prompt to drop in a starting phrase, then edit it.
The diagnosis
Sensory confidence: owner reading, bias-correctedloops back to radar ↑
"That hollow middle is under-extraction — you're getting the bright top notes but not the sweetness underneath. Two small moves fix it."
✓
Grind two clicks finer
Slows the flow and pulls more sweetness through the middle.
✓
Lower your agitation
Gentler pours stop the astringency that's thinning the body.
✓
Nudge water to 94°C
A touch hotter helps sweetness develop without adding harshness.
What others found
Reference, not gospel — the coach's advice still leads.
Similar coffees
Ethiopia · Guji Washed
florals · jasmine · tea-like
Kenya · Nyeri AA
blackcurrant · bright
Colombia · Huila Pink
melon · sweet · clean
Closest recipes to your goal
Your previous brews
Reference implementation
The design system, in the open
Every token on this page is defined once and reused everywhere. This appendix shows the palette, type scale, spacing, and controls the dashboard is built from.
Colour
Warm neutrals carry the page. One accent (roasted terracotta) means "interactive". Semantics stay muted and coffee-adjacent.
Paper
#F6F1E9
Surface
#FDFBF7
Inset
#F3ECE0
Ink
#2B2620
Ink-2
#6A6055
Accent
#B65E36
Sage
#6E7A5A
Success
#5F7A52
Warning
#BE8A2E
Info
#4E6E7C
Typography
Fraunces (serif) for warmth and hierarchy; Inter (sans) for everything functional.
Display · FrauncesBrew it better
H1 · FrauncesColombia Risaralda
H2 · FrauncesWhat do you want?
H3 · Inter 600The diagnosis
Body · Inter 400Gentle, even pours protect a delicate washed coffee.
Support · InterRanked against your radar.
Label · Inter 600Live priorities
Micro · Interreasoning from roast, process & age
Spacing · 4px base
One rhythm everywhere. Sections breathe at 96; cards pad at 32.
s1 · 4
s2 · 8
s3 · 12
s4 · 16
s5 · 24
s6 · 32
s7 · 48
s8 · 64
s9 · 96
Controls
Buttons, chips, tags — one radius language, one motion language.
Flavour tagFact tag
Brew Helper · reference implementation of the design system · grayscale-proofed, then warmed.
✓Saved to your library
How Brew Helper thinks
Frequently asked questions
Brew Helper isn't a lookup table — every recommendation is reasoned through a fixed pipeline, then checked against real evidence before it reaches you. This page explains how that works, and answers the questions an experienced barista tends to ask once they've used it a few times.
How the AI makes a recommendation
Six stages run in a fixed order, and each one hands a structured object to the next — the dashboard renders each stage as you go:
Observe — records exactly what you entered (coffee, setup, radar). No inference yet.
Interpret — turns those facts into properties like density, solubility and risk, each with a stated mechanism (e.g. "1,850 masl → slow maturation → dense cell structure").
Decide — commits to a strategy: a primary objective, a secondary objective, and the trade-off it accepts. This is the load-bearing step (see next question).
Recommend — turns the strategy into an actual recipe. Every parameter carries a reason that traces back to the strategy.
Teach — writes the judgement line and the per-step "why" you can tap open.
Learn — waits for your debrief, then loops back into Decide with a refined target rather than guessing a new recipe from scratch.
It's the one-line editorial call the whole recipe hangs off — e.g. "maximise clarity, preserve florals, accept a lighter body." The rule is strict: no recipe is ever generated before a strategy exists. If the strategy is weak or the coffee's signals conflict without resolving, the system holds rather than shipping a guess. Every single recipe parameter you see (grind, temp, pour structure) has to name which part of the strategy it serves — a number with no "because" attached doesn't get shown.
Moving a radar point re-runs the Decide stage live — your priorities are read as constraints, which recompute the strategy, which re-derives the recipe and re-ranks the library against it. Nothing about your coffee (Observe/Interpret) changes; only what you're optimising for does. That's why the same Colombia washed lot can point you toward a clarity-first V60 recipe or a body-first immersion one, purely from where you set the radar.
How it learns from you
Your notes are compared against what the recipe predicted, and any gap is diagnosed against the extraction curve — e.g. a hollow middle reads as under-extraction, a drying/astringent finish reads as over-extraction or too much agitation. The system then proposes one highest-leverage adjustment (say, grind two steps finer) rather than changing five things at once, and that adjustment loops back into the Decide stage for your next brew of that coffee. If the diagnosis reveals something durable — "this lot extracts slower than its roast implies" — that's saved to your coffee's model and surfaced again next time you brew it.
Your equipment, preferences, and brew history (the "user model") are applied over generic defaults, and take priority when they conflict — "your grinder tends to run coarse, so I've gone finer than the book" is a real example of the reasoning, not a canned line. Whenever the user model changes the advice, the AI says so explicitly rather than quietly overriding the textbook default.
Evidence & confidence
Every recipe in the library is scored on a 0–1 trust scale, then bucketed: High (≥0.80) — lead on it plainly; Medium (0.60–0.79) — use it, but it's hedged; Low (0.45–0.59) — corroboration only, never the sole basis; Provisional (<0.45) — not used in a recommendation at all. The score itself comes from the source's credibility tier (a documented World Brewers Cup routine scores far higher than an anonymous forum post) combined with how complete and reproducible the write-up actually is — vague temperature ranges and unspecified grind settings pull the score down, which is honest: a recipe missing half its numbers hasn't earned the same trust as one that specifies water chemistry and target extraction yield.
Nothing enters the library unvetted. Every recipe is captured verbatim, screened for tier (A = championship-grade with a named source, B = a credible practitioner/roaster, C = unverifiable authorship) and scored for completeness and reproducibility, then mined for the underlying mechanism — never just the raw numbers. Tier-C evidence can only corroborate an existing idea; it's never allowed to originate a new one on its own, and nothing gets promoted to an active, trusted principle without a human sign-off. Recipes that don't clear the bar are kept as background evidence but excluded from the recommendation engine entirely — they never surface to you dressed as something fully vetted.
It can be wrong — coffee is variable and a first brew on an unfamiliar lot is explicitly treated as a probe, not a guarantee. What it won't do is fabricate false precision: missing information (say, no water hardness on file) is named as an unknown and confidence is lowered rather than quietly assumed away. When two credible sources genuinely disagree and the conflict can't be resolved into "this applies to coffee X, that applies to coffee Y," the higher-trust side is kept but at reduced confidence, flagged as a live debate rather than presented as settled.
Questions an experienced barista tends to ask
Grind and temperature both raise extraction, but they behave differently: grind is precise — more surface area, more extraction, without touching the water — while heat is blunt and can blow past delicate aromatics before it finishes extracting the body you wanted. The house rule of thumb is "grind is the scalpel, temperature is the hammer" — reach for the scalpel whenever the strategy is protecting something fragile (florals, delicate acidity), and reserve heat for coffees that are dense or under-developed enough to need the blunt force.
Process changes what's actually in the bean and how forgiving the bed is. A natural carries heavy body and berry/tropical sweetness and still tastes sweet even slightly under-extracted, but it extracts unevenly and turns muddy or boozy if the bed isn't kept flat — so the strategy trades a step coarser and gentler, even pours for it. A washed coffee holds fruit and floral notes separate and takes fine grind and hot water without turning harsh, but is thin-bodied and astringent if over-agitated. Same six radar axes, different mechanism driving each one — that's why the recipe isn't just "the same brew, adjusted."
That's exactly what the confidence badge next to the recipe name is answering — it isn't a generic "AI confidence," it's a trust score built from who ran the routine and how complete the write-up is. A named World Brewers Cup champion's documented routine reads High; a well-specified but unverified practitioner recipe reads Medium; anything with vague ranges or missing grind settings sits Low or is kept out of the recommendation engine entirely.
A hollow middle reads as under-extraction — you haven't pulled far enough into the curve to reach sweetness. The model picks one primary lever rather than stacking changes: usually grind a couple of steps finer, occasionally a small bump in temperature, and loops that back into a refined strategy for your next brew of that same coffee rather than starting over. If it happens again after the adjustment, that's logged against the coffee itself — the model updates to "this lot needs more energy than its roast level suggests."
They're not treated as the same kind of evidence. Peer-reviewed and first-principles science set the boundaries — what's physically possible on the extraction curve — and can veto a practical claim that violates it outright. Practice (champion routines, house recipes, your own brew log) fills in what's worth doing within those boundaries, and is weighted by tier and track record rather than trusted blindly. If practice repeatedly contradicts the science with strong independent evidence, it isn't quietly adopted — it's flagged as a sign the science model might be incomplete, which is a research question, not a recipe decision.
Yes — and it's not a workaround, it's the design. Your own successful brews are the tie-breaker over contested external claims, specifically for you and that coffee. If the library disagrees with what's actually working in your cup, your outcomes win for your future recommendations, even while the general-purpose evidence in the library stays as-is for everyone else.