{{ summaryTitle }} {{ summaryValue }} {{ summaryLine }}

{{ summaryAnnouncement }}

Coffee bag, serving recipe, and reorder inputs
Changing the unit converts the displayed value without changing the physical quantity.
Include delivery, tax, or discounts when they belong in the serving-cost comparison.
Switching paths preserves the current recipe quantity.
Use the dose that will actually be repeated through the bag.
Use recipe water for one serving or brew, not the finished drink volume.
1:{{ decimal(params.brew_ratio, 1) }}
The full 1–30 range covers espresso through weaker filter-style recipes; confirm unusual values.
1:
Decimals are useful when consumption varies across the week.
servings/day
days
%
{{ workflowFeedback }}
Add a buffer for guests or uncertain grinder retention; this does not change bag yield.
servings
MeasureResultCalculation basisCopy
{{ row.label }}{{ row.value }}{{ row.detail }}

{{ exportAnnouncement }}

{{ purchaseHeadline }}

{{ purchaseAction }}

Formula trace

Usable coffee
{{ mass(values.bag_g - values.waste_g, params.bag_unit) }} = {{ mass(values.bag_g, params.bag_unit) }} × (1 − {{ percent(params.waste_percent) }})
Exact servings
{{ decimal(values.exact_servings, 2) }} = {{ mass(values.usable_g, 'g') }} ÷ {{ mass(values.dose_g, 'g') }}
Reorder trigger
{{ duration(values.reorder_in_days) }} after opening, after lead time and reserve allowance

Interpretation limits

This is a dry-coffee purchase plan. It does not measure freshness, extraction, retained beverage water, caffeine, or cup quality. Currency is a label only.

{{ exportAnnouncement }}

A bag label gives the net weight, but a brewing routine determines how many useful servings that weight becomes. A 340 g bag yields 17 nominal 20 g doses before waste. Dial-in shots, grinder retention, spills, and stale coffee reduce the amount that reaches a finished brew.

Dose is the strongest driver of yield. Moving from 18 g to 22 g uses about 22% more coffee per serving, so the same bag runs out sooner and each serving costs more. For recipes recorded by brew water, the dry dose can instead be inferred from a 1:R coffee-to-water ratio. A 320 g water recipe at 1:16 requires 20 g of coffee.

Exact servings
Usable coffee divided by dose, including the fractional last serving.
Full servings
Only complete doses that can be portioned at the selected recipe.
Runout time
Exact servings divided by average servings per day.
Reorder time
Runout time less delivery lead time and any reserve servings.

Planning by average daily use works well for a steady household or office routine, but it cannot predict a specific calendar day when consumption varies sharply. Reserve servings provide a buffer for guests or uncertainty without changing the physical bag yield.

Yield is not the same as freshness or cup quality. A larger bag may have a lower price per 100 g yet be poor value if it stays open beyond the drinker's preferred freshness window. Use the repeated dose and realistic waste rate, then compare the runout estimate with how the coffee is actually stored and consumed.

How to Use This Tool:

Describe one bag, one repeated recipe, and the average pace at which it will be used.

  1. Enter Bag weight and Bag price. Include tax or delivery only when those amounts belong in the serving-cost comparison.
  2. Choose Start from. Use the dose path when dry coffee is weighed directly; use the brew-water path when water and a 1:R ratio define the recipe.
  3. Set Daily servings, Reorder lead time, and Dial-in and waste. Add reserve servings only when a buffer should bring the order date forward.
  4. Read Full servings for portioning and Reorder in for timing. Compare nearby doses only if changing the recipe is realistic.

Interpreting Results:

Exact servings supports cost and timing calculations, while Full servings answers how many complete brews fit in the bag. The leftover may be usable with a smaller final dose, but it is not counted as another full serving.

Cost per serving allocates the entire bag price across exact servings, so waste and a larger dose both raise the result. The selected currency is a label only; no exchange-rate conversion takes place.

An Order now result means the estimated runout already falls within delivery lead time plus the reserve buffer. Treat the date as a planning cue. Recalculate when the dose, waste, or daily pace changes enough to affect the next order.

Technical Details:

All bag and dose masses are converted to grams before calculation. Brew water is also treated as grams for planning: 1 mL is taken as 1 g, and 1 US fl oz converts to 29.5735295625 g. That water approximation is useful for recipes but is not a density measurement.

Formula Core:

Usable coffee sets the yield. The serving basis changes only how the dry dose is obtained.

U=B(1w100) D={Dentereddose basisWRwater basis N=UD T=max(0,NsLQs)
Coffee bag yield formula symbols
SymbolMeaningUnit
B, UBag mass and usable mass after wasteg
wDial-in and waste%
D, W, RDry dose, brew water, and water side of the 1:R ratiog, g, ratio
NExact servingsservings
s, L, QDaily servings, lead days, and reserve servingsservings/day, days, servings
TDays until reorderdays

Full servings equal the floor of N. Leftover coffee is usable mass minus full servings times dose. Cost per serving is bag price divided by exact servings, and total recipe water is exact servings times water per serving. Intermediate values retain full precision; the interface rounds them for display.

  • Bag weight, dose or water, and daily servings must be greater than zero.
  • The brew ratio accepts 1:1 through 1:30.
  • Waste accepts 0% up to, but not including, 95%.
  • A ratio below 1:10 or above 1:22 receives a review cue; that cue is not a quality grade.

Worked Examples:

A 340 g filter-coffee bag

With a 20 g dose and 5% waste, 323 g remains usable. That gives 16.15 exact servings, 16 full servings, and 3 g left over. At two servings a day, the bag lasts 8.075 days. A three-day delivery lead time moves the reorder point to about 5.075 days from now. For an USD 18 bag, the modeled cost is about USD 1.11 per serving.