Better coffee starts at home
The Roastery Lab
The science of the entire process. Every step of it.
Pacific Roots Roastery Lab · powered internally by RoastOS
Pacific Roots roasts like a data science lab, teaches like a field guide, and builds tools like an AI-native analytics company.
We do the science many small roasters aren't equipped to do — then publish it. The dashboards aren't a feature of the coffee; they're the operating system behind it.
01
Roast Data Capture
Every batch is data: green lot, moisture, density, charge temp, turning point, yellow, first crack, development, drop, weight loss.
02
Roast Visualization
Bean temp, environment temp, and rate-of-rise as decision-ready charts — phase bands, event markers, reference overlays, deviation.
03
Experiment Engine
Roasting as controlled experiments, not vibes: hypothesis, control roast, one variable, cupped conclusion, production decision.
04
Sensory + Brew Loop
The curve is only half the truth — structured cupping (seven axes), days-off-roast, extraction and TDS close the loop back to the cup.
05
Governed AI
An analyst, never an autopilot: propose-only, every recommendation cites its data and states its confidence. Humans approve. Everything logs.
Observation · Nightfall develops hardest (18.5%) while Coastal Fog keeps the most mass (11.6% loss) — the spread is the house style: same drum, different intents.
Evidence · First crack order: Coastal 8:02 → Summit 8:22 → Nightfall 8:58. Drop temps 402° / 412° / 427°.
Confidence · High on the numbers (production sheets); the comparison itself is descriptive, not a recommendation.
Nine stages. One governed loop.
Each stage carries its science on its sleeve — and three of them are instruments you can operate.
- 01
Green Intake
The cup is capped before the roaster ever turns on.
- Origin, cultivar, process, and altitude set the flavor ceiling — washed lots read cleaner, naturals sweeter and wilder.
- Moisture (target 9–12%) and density decide how the bean takes heat: dense high-grown coffee wants more energy, soft lots scorch.
- Every lot gets an ID, a supplier record, and a suitability read before it earns a profile.
Moisture9–12%Densityg/L, loggedWater activity0.55–0.65 - 02
Profile Design
A roast profile is a hypothesis about flavor.
- Each product gets targets before beans move: charge temp, first-crack window, development time and ratio, drop temp, weight loss.
- Intended use decides the shape — espresso profiles develop longer for solubility; filter profiles protect clarity.
- The reference batch becomes the versioned standard every future roast is measured against.
Dev ratio11–18.5% by productLoss target11.6–15.5%Referenceversioned per profile - 03
The Roast
Four phases, one audible turning point — the cup is decided in minutes.
- Drying (charge → yellow): free water leaves; grass smell fades. Rushing it bakes the outside before the inside catches up.
- Maillard (yellow → first crack): sugars brown into hundreds of aromatics; body and sweetness are built here.
- First crack: moisture flashes to steam and the bean audibly pops — development begins.
- Development (first crack → drop): clarity trades against depth. We watch rate-of-rise like a heart monitor — crashes flatten sweetness, flicks scorch it.
Charge372–390°F by productFirst crack~8:00–9:00RoRdeclining, never crashingStage 03 · Live reference curveBT + rate-of-rise · roast stages · event flagsHouse production targets — verified by cupping, versioned in the profile library. Roast stagesDrying0:00–4:24Maillard4:24–8:22Development8:22–9:47This is Summit Blend’s reference batch — the versioned standard every production roast is measured against. The gold line is rate-of-rise: the roaster’s heart monitor. Crashes flatten sweetness; flicks scorch it; a smooth decline is the craft.
Read the full RootCurve Report → - 04
Rest & Degassing
Fresh-off-the-roaster is a myth — coffee needs its rest window.
- Roasting traps CO₂ in the bean; for the first days it fights extraction, gassing out unevenly and souring the cup.
- Every Pacific Roots product carries a tested rest window (4–10 days by roast level; espresso rests longest).
- We cup at multiple days-off-roast before a batch ships — the rest curve is real data, not folklore.
Filter rest4–8 daysEspresso rest6–12 daysCold brew5+ days - 05
Grind
Grind size is the biggest dial most cups never touch.
- Surface area controls extraction speed: finer = faster = stronger and eventually harsher; coarser = slower = cleaner and eventually thin.
- Every method has a window — sea-salt fine for pour-over, breadcrumbs for french press, table-salt fine for espresso.
- Grind fresh: aromatics start leaving ground coffee in minutes, not days.
Espressofine · dialed dailyPour-overmedium-fineCold brewextra coarse - 06
Water Chemistry
Water is 98% of the cup — and the part everyone skips.
- Minerals do the extracting: calcium and magnesium pull flavor; bicarbonate buffers acidity and protects machines.
- The house protocol: RO water + one Third Wave Water espresso packet per 5-gallon jug. Never straight RO in a machine long-term.
- Target 90–150 ppm TDS after mineralization, ~40–80 ppm hardness as CaCO₃, pH 6.5–8.0.
TDS90–150 ppmHardness40–80 ppm CaCO₃pH6.5–8.0Stage 06 · The Water Bench0/6 steps checkedThe golden rule
Never run straight RO water in the machine long-term. Always RO + minerals.
Pure water is hungry water — it under-extracts coffee and corrodes boilers. Minerals do the brewing.
TDS after minerals
90–150 ppm
The extraction engine.
Hardness (as CaCO₃)
40–80 ppm
Ca + Mg pull the flavor.
pH
6.5–8.0
Bicarbonate buffers acidity and protects the boiler.
Goal: clean flavor, safer machine, repeatable espresso.
- 07
Extraction
Sour means under. Bitter means over. Sweet lives in between.
- Extraction yield — the % of the grounds that dissolves — is the master number: 18–22% is the sweet zone for most methods.
- Espresso targets 19–22% yield at 8.5–10% TDS: 18g in, 36g out, 27–32 seconds at 200°F and 9 bar.
- Ratio sets strength; time and grind set extraction. Change one variable at a time — that's the lab discipline in the cup.
Yield18–22%Espresso TDS8.5–10%House ratio1:16 filter · 1:2 espressoStage 07 · The Extraction Benchgrams in · science out · nothing storedStrength
- Water temp
- 195–205°F
- Grind
- Medium-fine · sea salt
- Time
- 2:45–3:30
1 : 16
352g
water in
≈ 1 cup finished
Est. extraction
20.5%
Est. strength
1.35% TDS
Bloom with 2× the coffee's weight for 30–45 s before the main pours.
The brew compass — sweet lives in the box
- 08
Milk Science
Steaming is chemistry: sweetness peaks near 145°F and dies past 160°F.
- Lactose tastes sweeter as milk warms — up to a point; overheat and cooked-milk flavors take over.
- Aerate early and briefly (the stretch), then whirlpool to gloss: microfoam is thousands of invisible bubbles, not a cap of froth.
- Cooler pours for cortados (130–140°F) keep delicate roasts alive; lattes ride 135–145°F.
Latte135–145°FCortado130–140°FNever>160°F - 09
Sensory & QC
The curve proposes; the cup decides.
- Every production batch is cupped blind on seven axes — aroma, acidity, sweetness, body, clarity, balance, finish.
- Scores link back to the batch ID and its curve: when a cup surprises us, the data tells us where to look.
- A batch ships only after it passes its cup goal — QC is a gate, not a suggestion.
Axes7, scored blindGatecup goal per productLoopscore → curve → next batch
AI is a co-roaster analyst, not an autopilot. It cannot change a production profile. It must cite data, state uncertainty, and log every recommendation. Humans approve. Always.
Analyst note · batch PR-SUMMIT-0001
CONFIDENCE: MEDIUM
- Observation
- Batch closely matched the Summit Blend reference through first crack with minor lag during Maillard.
- Evidence
- — BT deviation < 8°F through 8:00
- — First crack at 8:22
- — Drop at 9:47
- Hypothesis
- Heat application was controlled and suitable for the target espresso profile.
- Suggested action
- Cup at days 6, 8, and 10 off roast before changing the production profile.
The governance rules
- Propose-only — no silent changes to production recipes
- Every recommendation cites source data
- Confidence and uncertainty stated
- Metric definitions version-controlled
- All recommendations logged
The output contract: Observation → Evidence → Hypothesis → Suggested action → Expected effect → Confidence. Human sensory judgment stays central — the analyst proposes, the roaster decides, the log remembers.
Open hypothesis
Same final color, different development time
Which carries more sweetness into the cup?
Open hypothesis
Same curve, different rest window
Where does each roast actually peak?
Open hypothesis
Same lot, different charge temperature
How much does the first 90 seconds decide?
Open hypothesis
Different roast degree, espresso vs filter
One coffee, two systems — where do they diverge?
Every experiment names its hypothesis, its control, its single variable — and ends in a cupped conclusion that either becomes the production profile or doesn’t. Both outcomes are wins.
1
Measure small
50–70 g green (about ⅓–½ cup) — a small batch is an even batch.
2
Preheat
Empty cast-iron skillet, medium-low, 3–4 minutes.
3
Stir constantly
Add beans and never stop moving them.
4
Watch for yellowing
~2–4 min: green → yellow, grassy smell leaves.
5
Build first crack
~6–8:30: audible pops — development begins.
6
Control the heat
Smoking hard? Lower it. Heat lag is real in iron.
7
Stop at target
For medium-plus: 15–120 s after first crack begins.
8
Cool fast & rest
Colander + fan, then 24–48 h rest before judging.
The golden rule: Keep the beans moving. Small batch + steady stirring = more even roasting. Stop before active second crack for a sweeter, less smoky cup.


