# Priming Sugar Calculator

> Computes the grams of priming sugar needed to bottle-condition beer to a target carbonation, from the beer volume, target CO₂ volumes and the residual CO₂ already dissolved at the beer's post-fermentation temperature, using the CO₂ yield of dextrose, sucrose, dry malt extract or honey.

- Calculator id: `priming-sugar` · Category: Food & Cooking (`food`) · Tool name: `calculate_priming_sugar`
- Canonical page: https://tttkmbb.com/food/priming-sugar · This document: https://tttkmbb.com/food/priming-sugar.md · JSON definition: https://tttkmbb.com/food/priming-sugar.json

## Purpose

Computes the grams of priming sugar needed to bottle-condition beer to a target carbonation, from the beer volume, target CO₂ volumes and the residual CO₂ already dissolved at the beer's post-fermentation temperature, using the CO₂ yield of dextrose, sucrose, dry malt extract or honey.

**Use when:** You are bottling homebrew and need the amount of priming sugar for a batch and carbonation level, e.g. 20 L of ale to 2.4 volumes.

**Do not use when:** You force-carbonate in a keg (use a pressure/temperature carbonation chart instead) or the beer is still fermenting, since the residual CO₂ estimate assumes fermentation is complete.

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `beer_volume_l` | number | L | required | Volume of beer being bottled, in litres (1 US gal = 3.785 L). (> 0, max 10000) |
| `target_co2_volumes` | number | volumes CO₂ | optional, default 2.4 | Desired carbonation in volumes of CO₂: British ales 1.5–2.0, American ales 2.2–2.7, lagers 2.4–2.6, Belgian ales 1.9–2.4, wheat beers 3.3–4.5. (min 0.5, max 5) |
| `beer_temperature_c` | number | °C | required | Highest temperature the beer reached after fermentation finished (this sets how much CO₂ is still dissolved), not the bottling temperature if the beer was cold-crashed afterwards. (min -2, max 40) |
| `sugar_type` | enum: corn_sugar_dextrose_monohydrate \| table_sugar_sucrose \| dry_malt_extract \| honey |  | optional, default "corn_sugar_dextrose_monohydrate" | Type of fermentable used for priming; sets the grams of CO₂ produced per gram. |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `temperature_f` | number | °F | beer_temperature_c converted to Fahrenheit (the residual-CO₂ fit uses °F). |
| `residual_co2_volumes` | number | volumes CO₂ | CO₂ still dissolved in the beer at that temperature after fermentation. |
| `co2_to_add_volumes` | number | volumes CO₂ | target_co2_volumes − residual_co2_volumes (0 if the beer is already at or above target). |
| `co2_grams` | number | g | Grams of CO₂ the priming sugar must generate (1.96 g per volume per litre). |
| `co2_yield_g_per_g` | number | g CO₂ / g | Grams of CO₂ produced per gram of the chosen sugar. |
| `sugar_grams` | number | g | Sugar to dissolve in a little boiled water and mix into the whole batch before bottling. |
| `sugar_grams_per_liter` | number | g/L | Sugar per litre of beer (for priming individual bottles: multiply by the bottle volume in litres). |
| `sugar_oz` | number | oz | Same amount in ounces by weight. |
| `style_carbonation_note` | string |  | Where the target sits among typical style carbonation ranges, with a bottle-pressure caution above 3 volumes. |

## Formula

`T_F = beer_temperature_c × 9/5 + 32; residual = 3.0378 − 0.050062·T_F + 0.00026555·T_F²; CO₂_g = max(0, target_co2_volumes − residual) × beer_volume_l × 1.96; sugar_g = CO₂_g / yield; yield (g CO₂ per g): dextrose monohydrate 2 × 44.01 / 198.17 = 0.4442, sucrose 4 × 44.01 / 342.30 = 0.5143, DME 0.68 × 0.5143 = 0.3497, honey 0.80 × 2 × 44.01 / 180.16 = 0.3909`

The residual-CO₂ polynomial is the standard homebrewing fit for beer at equilibrium with 1 atm of CO₂ after fermentation; 1 volume of CO₂ per litre weighs 1.96 g. Sugar yields follow the fermentation stoichiometry (1 mol hexose → 2 mol CO₂); the 68 % fermentable fraction for DME and 80 % sugar content of honey are typical assumptions and vary by product.

## Data Sources

- Brewer's Friend – Beer priming calculator (residual CO₂ by temperature, sugar CO₂ yields) — https://www.brewersfriend.com/beer-priming-calculator/ (reference, retrieved 2026-09-24)
- BJCP Style Guidelines (2021) – vital statistics for IBU, colour (SRM) and carbonation by style — https://www.bjcp.org/bjcp-style-guidelines/ (standard, retrieved 2026-09-24)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/priming-sugar?beer_volume_l=…&beer_temperature_c=…`
- `POST https://tttkmbb.com/api/v1/calculate/priming-sugar` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/priming-sugar · OpenAPI operationId `calculate_priming_sugar` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "priming-sugar", "inputs": {…}}`

## Example

- 20 L to 2.4 volumes, beer at 20 °C, corn sugar: inputs `{"beer_volume_l":20,"target_co2_volumes":2.4,"beer_temperature_c":20,"sugar_type":"corn_sugar_dextrose_monohydrate"}` → `{"temperature_f":68,"residual_co2_volumes":0.861,"co2_to_add_volumes":1.539,"co2_grams":60.3,"sugar_grams":135.8,"sugar_grams_per_liter":6.79,"sugar_oz":4.79}`
- 19 L wheat beer to 3.5 volumes, beer at 22 °C, DME: inputs `{"beer_volume_l":19,"target_co2_volumes":3.5,"beer_temperature_c":22,"sugar_type":"dry_malt_extract"}` → `{"residual_co2_volumes":0.815,"co2_grams":100,"sugar_grams":285.9,"sugar_grams_per_liter":15.05}`

```
GET https://tttkmbb.com/api/v1/calculate/priming-sugar?beer_volume_l=20&target_co2_volumes=2.4&beer_temperature_c=20&sugar_type=corn_sugar_dextrose_monohydrate
```

## Limitations

You force-carbonate in a keg (use a pressure/temperature carbonation chart instead) or the beer is still fermenting, since the residual CO₂ estimate assumes fermentation is complete. The residual-CO₂ polynomial is the standard homebrewing fit for beer at equilibrium with 1 atm of CO₂ after fermentation; 1 volume of CO₂ per litre weighs 1.96 g. Sugar yields follow the fermentation stoichiometry (1 mol hexose → 2 mol CO₂); the 68 % fermentable fraction for DME and 80 % sugar content of honey are typical assumptions and vary by product. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Which temperature do I enter if I cold-crashed the beer?**

The warmest temperature the beer sat at after fermentation ended. CO₂ lost at that temperature does not come back when the beer is chilled, so entering the cold temperature would under-prime the batch.

**How much is that in table sugar?**

Sucrose yields about 16 % more CO₂ per gram than corn sugar (dextrose monohydrate), so use about 0.86 × the corn-sugar weight; run the calculator with sugar_type=table_sugar_sucrose for the exact figure.

**Is there a risk of bottle bombs?**

Standard 12 oz / 330 ml bottles are typically rated to about 3 volumes; above that use heavy Belgian-style or champagne bottles. Bottling a beer that has not finished fermenting is the most common cause of over-carbonation.

## Related

- [Homebrew ABV Calculator](https://tttkmbb.com/food/homebrew-abv.md) — Alcohol content of the beer being bottled.
- [Brine Calculator](https://tttkmbb.com/food/brine.md) — Dissolve other ingredients by weight per litre.
- [Cooking Measurement Converter](https://tttkmbb.com/food/cooking-converter.md) — Convert gallons of beer to litres.
