School fundraiser volunteer coverage calculator

Calculate named assignment table [event ID,assigned people] and unfilled demand [event ID,missing people] with your own figures.

Your numbers

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

Use named assignment table [event ID,assigned people] and unfilled demand [event ID,missing people] to compare changes to your inputs. The method and limits below explain the scope.

Examples

Examples

Try the starting example

Stall shifts JSON [ID,start minute,end minute,required volunteers,eligible volunteer IDs]
[["S1",540,600,2,["A","B"]],["S2",570,630,1,["A","B","C"]]]
Volunteer availability JSON [ID,start,end]
[["A",540,630],["B",540,600],["C",570,630]]
Named assignment table [event ID,assigned people]
[["S1",["A","B"]],["S2",["C"]]]
Unfilled demand [event ID,missing people]
[]
Unfilled person-event positions
0

Try another scenario

Stall shifts JSON [ID,start minute,end minute,required volunteers,eligible volunteer IDs]
[["S1",540,600,2,["A","B"]],["S2",570,630,1,["A","B","C"]]]
Volunteer availability JSON [ID,start,end]
[["A",540,630],["B",540,600]]
Named assignment table [event ID,assigned people]
[["S1",["A","B"]],["S2",[]]]
Unfilled demand [event ID,missing people]
[["S2",1]]
Unfilled person-event positions
1
Calculation method

Calculation method

Named assignment table [event ID,assigned people]

Process fixed events by start, then ID; choose lexicographically smallest eligible people whose availability covers event and who have no assigned overlapping event.

Unfilled demand [event ID,missing people]

Required headcount minus assigned, report positives.

Unfilled person-event positions

Sum headcount deficits.

Symbols and units
a
Stall shifts JSON [ID,start minute,end minute,required volunteers,eligible volunteer IDs]
b
Volunteer availability JSON [ID,start,end]

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

  • Fixed-shift staffing proposal; explicit eligibility expresses user training/permission assumptions. Greedy schedule may leave avoidable gaps; no legal hours or break rules inferred. Supported limits: 1..100 shifts/people; positive integer demand; known eligible IDs; half-open integer intervals; no same-person simultaneous assignments.
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.