Cafe batch brewer service schedule calculator

Calculate brews [start,end,batches,cups served,delay] and unused or expired cups with your own figures.

Your numbers

Use the units shown. Results update as you change valid inputs.

Use brews [start,end,batches,cups served,delay] and unused or expired cups to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

Demand events [minute,cups]; enter JSON
[[0,8],[10,4],[40,6]]
Batch yield (cups)
10
Brew time per batch (minutes)
4
User maximum hold after completion (minutes)
20
Brews [start,end,batches,cups served,delay] (JSON)
[[-4,0,1,8,0],[6,10,1,2,0],[36,40,1,6,0]]
Unused or expired cups (count)
12

Try another scenario

Demand events [minute,cups]; enter JSON
[[0,10],[5,8],[30,5]]
Batch yield (cups)
12
Brew time per batch (minutes)
5
User maximum hold after completion (minutes)
15
Brews [start,end,batches,cups served,delay] (JSON)
[[-5,0,1,10,0],[0,5,1,6,0],[25,30,1,5,0]]
Unused or expired cups (count)
13
Calculation method

Calculation method

Brews [start,end,batches,cups served,delay] (JSON)

At demand discard stock beyond hold limit. Use remaining cups, then brew ceil(unfilled/batch yield) sequential batches; start=max(demand−brew time,brewer free).

Unused or expired cups (count)

Expired leftovers plus leftovers after final demand event; final leftovers treated as eventual waste.

Symbols and units
a
Demand events [minute,cups]; enter JSON
b
Batch yield (cups)
c
Brew time per batch (minutes)
d
User maximum hold after completion (minutes)

Use the units shown. A list keeps the order in which you enter its values. The symbol ^ means “raised to the power of”.

Assumptions & limits

Assumptions & limits

  • One brewer, fixed demand instants; whole sequential batches completed together when additional cups needed. Late completion is exposed. Supported limits: All numeric inputs and computed intermediates must remain finite. Supported numeric input magnitude is zero or 1e-12 through 1e12 in absolute value; reject values outside this bounded range. All lists/JSON record tables are limited to 100 records unless a stricter bound is stated; reject malformed record arity and wrong member types. Demand times nondecreasing; cup counts positive integers; batch yield>0; brew time>0; hold>=0. Preparation may begin before minute zero. Completion delays imply late service; not a food-safety hold recommendation.
Are these inputs private?

These calculations run in your browser. A shared link contains the values you choose to share. Only questions submitted to the separate AI finder are sent to OpenAI.

Share this page
Share this calculator

Leave unchecked to share the page without your entered values.