-
Notifications
You must be signed in to change notification settings - Fork 0
Formulas and Methods
This page documents the actual maths behind every number MeadOS shows you — the recipes, the scaling, and each calculator — so nothing is a black box. Where a model is an approximation, it says so. If you doubt a figure, you should be able to reproduce it by hand from this page.
Conventions. Specific gravity (SG) is density relative to water (1.000). Gravity points are the digits after the decimal × 1000 — so SG 1.098 = 98 points. Volumes are in litres (L), masses in grams (g) or kilograms (kg) unless noted. MeadOS stores everything metric and only converts for display.
- 1. Honey → gravity (the 292 constant)
- 2. ABV from gravity
- 3. Attenuation
- 4. Recipe scaling
- 5. Yeast pitching
- 6. Nutrients — TOSNA 2.0
- 7. Sulfite / free SO₂
- 8. Acid / TA adjustment
- 9. Backsweetening & stabilising
- 10. Carbonation / priming sugar
- 11. Hydrometer temperature correction
- 12. SG ↔ Brix (and refractometer correction)
- 13. Blending & dilution
- 14. Cost & bottle yield
- Recipe consistency check
- Sources
Honey contributes roughly 35 PPG (points per pound per US gallon) — the standard homebrewing figure for honey's ~80% fermentable-sugar content. Converting that to metric:
35 PPG × 2.2046 lb/kg × 3.78541 L/gal = 292.1 → 292 points per kg per litre
So the original-gravity points of a must are:
OG points ≈ 292 × (honey kg ÷ batch litres)
and the honey needed for a target OG is the inverse:
honey kg ≈ (OG points × batch litres) ÷ 292
Worked example — Traditional Mead, 1.7 kg honey in 5 L:
292 × 1.7 ÷ 5 = 99.3 points → OG ≈ 1.099 (the recipe states 1.098). ✓
This single constant drives the Honey-for-target-gravity tool, the recipe cost estimate, and the gravity contribution used in backsweetening — they are all kept consistent. Fruit, juice, malt and maple add their own sugar on top (see the consistency check).
MeadOS uses the standard linear estimate:
ABV % = (OG − FG) × 131.25
Worked example — OG 1.098 → FG 1.005: (1.098 − 1.005) × 131.25 = 0.093 × 131.25 = 12.2 %.
This is the widely-used homebrew approximation. It is accurate to within a few tenths of a percent up to ~12–14% ABV and reads slightly low for very strong meads (where a non-linear formula would add a little) — which is the conservative direction.
How far the sugar has fermented:
Apparent attenuation % = (OG − FG) ÷ (OG − 1) × 100
Worked example — OG 1.100 → FG 1.010: (0.100 − 0.010) ÷ 0.100 = 90 %.
When you drag the scale slider, ingredients are rescaled by category, not blindly multiplied:
- Water → never a fixed pour; shown as "top up to the N L mark" so the final volume is exact regardless of how much the honey/fruit displaces.
-
Honey, fruit, acid, sulfite, sorbate, pectic enzyme → linear with volume:
new = base × (target L ÷ base L). Amounts under 10 g show to two decimals so sub-gram doses (pectic enzyme, metabisulfite) never round to "0 g". - Yeast → a coverage ceiling, not a linear scale (see §5). You always pitch at least one whole sachet.
- Nutrient → grams scale linearly (YAN demand is per litre), and a sachet count is shown using ceiling math for products sold in single-batch sachets; under a full sachet it tells you to save the rest.
A sachet covers a certain volume of standard-strength must; high-gravity musts stress the yeast and effectively shrink that coverage. MeadOS models this with an OG stress multiplier:
stress = 1 + max(0, OG points − 80) ÷ 50 effective litres = batch litres × stress sachets = ⌈ effective litres ÷ coverage ⌉ (minimum 1)
So a strain rated for 23 L of OG-1.090 must covers 23 ÷ stress at higher gravity. At OG 1.130 the stress is 1 + 50/50 = 2.0, i.e. it covers only ~11.5 L — you pitch twice as much. Rehydration water is ~10× the dry yeast weight; ABV headroom is yeast tolerance − (OG points × 0.13125).
MeadOS schedules a staggered nutrient addition (SNA), defaulting to the organic-only TOSNA 2.0 protocol (Fermaid-O in four doses to the 1/3 sugar break).
Nitrogen demand index. The tool derives a nitrogen figure from the gravity, the yeast's nitrogen demand and the honey's darkness:
N-index = OG points × 9 × demand × darkness demand: low 0.75 · medium 0.9 · high 1.25 · extra-high 1.5 darkness: light 1.0 · medium 0.88 · dark 0.82
and converts it to a dose:
grams = (N-index × litres) ÷ (product strength × 10) strength: Fermaid-O 40 · Fermaid-K 10 · DAP 21 · MJ/M05 sachet 13
⚠️ Honest caveat. The "N-index" is a relative scaling number calibrated so the dose lands on the validated TOSNA 2.0 magnitude — about 9–10 g of Fermaid-O for a 5 L must at OG 1.100 — not a laboratory YAN (mg N/L) measurement. Treat the dose grams as the real output; treat the ppm-style figure as an index, not an assay.
The 1/3 sugar break is where about a third of the sugar has fermented:
break SG = OG − (OG − 1) ÷ 3
All nitrogen — especially DAP — must be in before this point, because yeast absorb nitrogen during early growth; later additions feed fusel alcohols instead of cells. (The tool warns if you pick a DAP-bearing product for an organic protocol.)
Only the molecular fraction of free SO₂ protects the mead, and that fraction depends on pH (the first dissociation of sulfurous acid, pKa₁ ≈ 1.81):
molecular fraction = 1 ÷ (1 + 10^(pH − 1.81)) free SO₂ needed (ppm) = target molecular ÷ molecular fraction
Then convert the free-SO₂ addition to potassium metabisulfite (which is ~57% SO₂ by weight):
K-meta g = (ppm to add × litres) ÷ 0.57 ÷ 1000 · Campden tablet ≈ 0.44 g K-meta
Worked example — pH 3.4, target 0.8 ppm molecular: fraction = 1/(1+10^(3.4−1.81)) = 1/(1+10^1.59) = 2.5 %, so you need 0.8 / 0.025 = 32 ppm free SO₂. The tool warns above pH ~3.8 (where the required free SO₂ becomes impractically high) and above ~50 ppm free (the sensory threshold).
Titratable acidity is expressed as tartaric. To raise TA:
acid g = (target − current) g/L × potency × litres potency (relative to tartaric): tartaric 1.0 · malic 1.0 · citric 0.9 · blend 1.0
To lower TA, potassium bicarbonate ≈ 0.67 g/L drops TA ~1 g/L (calcium carbonate ≈ 0.66 g/L). These are bench-trial starting points — add ⅔, taste, then titrate the rest; cold-stabilise after tartaric additions.
To raise the gravity by a number of points with a sweetener:
sweetener g = (target points − current points) × g-per-point × litres g-per-point: honey 3.4 · sucrose 2.6 · DME 2.9
The honey figure is the inverse of the 292 constant (1 ÷ 0.292 ≈ 3.4 g/L per point), so backsweetening and the OG/cost tools agree. Sucrose is 100% fermentable sugar (2.6 g/L per point); honey and DME are lower because they're not pure sugar.
Stabilise first, always with both:
potassium sorbate ≈ 0.5 g/L · potassium metabisulfite ≈ 0.05 g/L (~28 ppm free SO₂)
Sorbate stops yeast reproducing but not existing cells fermenting; metabisulfite stuns them. Used together on a finished, racked mead they reliably prevent a re-ferment. Sorbate without sulfite can produce geranium off-aromas, and sulfite alone won't hold — which is why every MeadOS recipe pairs them. Wait 24–48 h before adding the sweetener.
Bottle-conditioned sparkling mead already holds some dissolved CO₂, and that residual depends on temperature. MeadOS uses the standard brewing polynomial (in °F):
residual volumes = 3.0378 − 0.050062·T_F + 0.0002655·T_F² sugar g = (target volumes − residual volumes) × litres × factor factor (g/L per volume CO₂): dextrose 4.0 · sucrose 3.8 · honey 5.0 · DME 5.7
Worked example — 5 L at 20 °C (68 °F), target 2.5 volumes, dextrose:
residual = 3.0378 − 0.050062·68 + 0.0002655·68² = 0.86 vol, so add = 2.5 − 0.86 = 1.64 vol, sugar = 1.64 × 5 × 4.0 = 33 g (~5 g per 750 ml bottle).
A bottle-pressure warning fires above ~2.5 volumes (use heavy/Belgian bottles) and again above ~3.0 (champagne bottles + wire muselet) — never use still-wine bottles for high carbonation.
A hydrometer reads true only at its calibration temperature; at other temperatures water density differs. MeadOS corrects with the standard density polynomial (°F):
D(T) = 1.00130346 − 1.34722124e-4·T + 2.04052596e-6·T² − 2.32820948e-9·T³ corrected SG = reading × D(sample °F) ÷ D(calibration °F)
A warm sample reads low (true SG is higher); within ±1 °C the correction is negligible.
Refractometers read Brix; hydrometers read SG. Conversion uses the NIST polynomial:
Brix = ((182.4601·SG − 775.6821)·SG + 1262.7794)·SG − 669.5622 SG = Brix ÷ (258.6 − (Brix ÷ 258.2)·227.1) + 1
Once fermentation starts, alcohol skews a refractometer, so a current Brix reading over-reads SG. Given the original Brix (Bᵢ) and current Brix (B_f), MeadOS applies the widely-used Sean Terrill correction:
SG = 1.0000 − 0.0044993·Bᵢ + 0.011774·B_f + 0.00027581·Bᵢ² − 0.0012717·B_f² − 0.00000728·Bᵢ³ + 0.000007885·B_f³
Blending two meads (or diluting with water) is a volume-weighted average. With fraction f of mead A and (1−f) of mead B:
ABV = ABV_A·f + ABV_B·(1−f) · FG = FG_A·f + FG_B·(1−f) · sweetness and cost likewise.
Water is treated as a 0% ABV, FG 1.000, no-sugar diluent — the classic fix for an over-strong or over-sweet mead. Real blends shift slightly with rest and carbonation, so bench-trial a measured sample first.
Honey mass is derived from the recipe's OG via the 292 constant (not the printed amount), then priced from your settings. Bottle yield assumes ~10% racking loss:
usable litres = batch × 0.9 · 750 ml bottles = ⌊usable ÷ 0.75⌋ · per-bottle cost = total ÷ bottles.
Are the built-in recipes' honey amounts consistent with their stated original gravities? Running every recipe through the 292 model (adding fruit/juice/malt/maple where present): the large majority land within a few points of their stated OG. A representative sample:
| Recipe | Honey | Predicted OG | Stated OG |
|---|---|---|---|
| Traditional Mead | 1.7 kg / 5 L | 1.099 | 1.098 |
| Bochet | 1.7 kg / 5 L | 1.099 | 1.100 |
| Blueberry Melomel | 1.55 kg + fruit | ~1.097 | 1.096 |
| Raspberry Melomel | 1.7 kg + fruit | ~1.105 | 1.100 |
| Cyser (apple) | 1.3 kg + 3.5 L juice | ~1.105 | 1.105 |
| Pyment (grape) | 1.2 kg + 3.5 L juice | ~1.110 | 1.110 |
| Sparkling Traditional | 1.5 kg / 5 L | 1.088 | 1.090 |
Cases that look off but aren't are the ones where another sugar source is doing work: a braggot gets a chunk of its gravity from malt, a bochet loses a little to caramelisation, and juice/maple vary in their own gravity. The honey↔OG relationship itself holds across the collection — which is the point of publishing it here.
These are the standard references the formulas follow:
- Gravity points / PPG and the OG↔ABV relationship — standard homebrew brewing maths (Palmer, How to Brew).
- TOSNA 2.0 — the organic staggered-nutrient protocol popularised by MeadMakr / Matt Williams.
- Molecular SO₂ — the pH-dependent sulfurous-acid dissociation (pKa₁ ≈ 1.81), as used across winemaking references.
- Hydrometer temperature correction and SG↔Brix — the standard density and NIST refractometry polynomials.
- Refractometer alcohol correction — Sean Terrill's cubic fit.
- Priming-sugar residual CO₂ — the standard temperature polynomial used by every priming calculator.
Found something you think is wrong? Open an issue — corrections to the maths are welcome.
Copyright © 2026 icemanxbe - https://github.com/icemanxbe/MeadOS
Crafted with patience — like mead.
Plan carefully. Brew confidently. Age beautifully.
Getting going
Using MeadOS
- Recipes & Designer
- Batches & Fermentation
- Brewing Tools
- Formulas & Methods
- Libraries
- Cellar & Inventory
- Labels, Sharing & Calendar
Running it well
Help