SHIFT-COVER OPTIMIZER · RUNS IN YOUR BROWSER · NOTHING UPLOADED

What is your shift template costing you?

Paste how many people (or how much demand) each open hour needs. The tool finds the cheapest set of shifts that keeps every hour covered, solved exactly rather than by rule of thumb, then shows what you would save against fixed 8-hour shifts or staffing the peak all day, what your minimum shift length costs, and what a busier week does to payroll. Copy the shift list as a CSV.

Your schedule never leaves this browser tab. Planning aid, not legal, tax, or financial advice. It sizes shifts; it does not assign people or check labor law.

Your hours

The file is read here and turned into average demand for each weekday and hour; it is not uploaded. Try an invented 4-week café history.

Hours can be 9, 9:30 or 9am. Leave out the hours you are closed; a closed gap splits the day. If the third column is called staff, required or people it is headcount; any other name (customers, orders, sales) is demand and the field "one person handles" turns it into headcount.

Upload or paste your hours, then click the button.

How it is calculated

Requirement: headcount per open hour, or demand divided by what one person handles, rounded up, never below your minimum staff. Shifts: contiguous intervals between your shortest and longest shift inside one open stretch; a shift costs wage × (1 + extras) × (the larger of hours worked and minimum paid hours, plus paid setup time). Solution: choosing shifts to cover every hour at least cost is a linear programme whose matrix has the consecutive-ones property, so its optimum is whole numbers and equals a minimum-cost flow on a line of time points; successive shortest paths finds it exactly. The fixed-template row uses the same solver restricted to one shift length, so it is the best a template can do. Payroll for "everyone at the peak" staffs the busiest hour's headcount for the whole open period.

Not modelled: which person works which shift, availability, overtime or weekly hour caps, breaks, skills, predictive-scheduling and fair-workweek laws, tips, demand swings inside an hour, and the cost of turnover. Unverified: checked against brute-force search on small problems and against invented data in unit tests, not against a real operator's payroll.

Common questions

How many staff do I need per hour?

Count the people needed to serve the busiest expected minutes of each hour without letting service slip, or divide expected demand by how much one person can handle per hour and round up. This tool does the division for you when you paste demand such as customers per hour, and never plans fewer than your minimum staff in an open hour.

How does the tool find the cheapest shifts?

Each open stretch of a day is a covering problem: choose shifts of allowed lengths so that every hour has at least the staff it needs, at the lowest total pay. Because shifts are contiguous intervals, the problem has an exact solution as a minimum-cost flow, so the answer is the true cheapest plan for your rules, not a heuristic guess.

What does a minimum shift length cost me?

The table shows the weekly payroll for each minimum shift length from one to eight hours with everything else unchanged. Short shifts let you staff a two-hour lunch peak with people who work only the peak; a long minimum forces paying for hours nobody needs. The gap between your rule and the cheapest row is what the rule costs.

Why compare with a fixed 8-hour template?

Many owners schedule in identical blocks because it is simple to write and to swap. The comparison uses the best possible placement of 8-hour shifts, so the savings shown are what you give up by using blocks at all, not what you lose by placing them badly.

What is not included?

It sizes shifts; it does not assign named people, honour availability, apply overtime or weekly hour caps, schedule breaks, or check predictive-scheduling, fair-workweek, minor-labor or meal-break laws, which vary by place. Treat the output as the shape of a schedule and check it against the rules that apply to you.

What if demand turns out higher or lower?

The sensitivity table re-solves the plan with demand 10% lower and 10%, 20% and 30% higher, so you can see what a busier week does to payroll before you commit. A buffer field lets you plan above the forecast on purpose.

Is my schedule uploaded anywhere?

No. The data is read and solved in this browser tab. Nothing is sent to a server, there are no accounts or cookies, and the tool does not store your schedule. It works offline once the page has loaded.