GratisAIcareer · field guide · local-first · no account
roster-cycle strip

Count Workdays in a Repeating On-Off Roster — Free

A repeating roster rarely lines up with a calendar month. Count full cycles plus the unfinished final cycle rather than multiplying a weekly average by four.

The proof surface

Shift-handover tools measure overlap between workers. This counts scheduled workdays for alternative repeating patterns over a fixed horizon starting at a defined phase.

Inputroster option | consecutive workdays | consecutive off days; horizon days starting on first workday
Rare deviceShift-handover tools measure overlap between workers. This counts scheduled workdays for alternative repeating patterns over a fixed horizon starting at a defined phase.
Output artifactscheduled workdays per row with transparent workings
Cost$0 · local-first · one free run · samples labelled
Sample, not your facts: Illustrative sample: Four on four off | 4 | 4; Five on two off | 5 | 2. With horizon days starting on first workday set to 30, fewest workdays among options is 16.00 scheduled workdays.

Why the flat version breaks

Starting mid-cycle

A different starting phase can change the short-horizon count.

Using four weeks as a month

Thirty days includes two more days than a four-week plan.

Treating scheduled days as payable days

Leave, holidays and employment terms can change pay without changing this pattern.

How to work the roster-cycle strip

Start on day one of a work block

The model assumes the first day is the first workday of the on-block. It cannot infer the current phase of an existing roster.

Write down consecutive on and off days

Use positive whole days. A split week or non-repeating pattern should be counted on a calendar instead.

Count full cycles then the remainder

Workdays = floor(horizon ÷ cycle) × on-days + min(on-days, horizon mod cycle). Four on/four off over 30 days yields 16 workdays, while five on/two off yields 22.

Compare options row by row

The summary selects the option with the fewest workdays; it is not one person’s combined schedule. Holidays, swaps, leave and partial days need separate treatment.

What the roster-cycle strip replaces

QuestionBeforeVisible working
Starting mid-cycleA different starting phase can change the short-horizon count.Write down consecutive on and off days
Using four weeks as a monthThirty days includes two more days than a four-week plan.Count full cycles then the remainder
Treating scheduled days as payable daysLeave, holidays and employment terms can change pay without changing this pattern.Compare options row by row

A local arithmetic aid replaces hand calculation, not expert review. No paid AI service is needed.

Run it on the samples, right here

FIRST-LOAD

Research prototype — checkout unavailable. Input is processed locally and a draft is saved automatically in this browser profile when storage is available. Reset to sample clears that draft; Pro history has its own clear button. A state link encodes your inputs in its URL: share only non-sensitive rows. Browser history, clipboard and anyone receiving the link may retain it. Optional AI use below leaves this device; it is not required.

Pattern arithmetic, not a fatigue assessment or employment entitlement calculation. Review rest requirements and the actual dated roster with the responsible scheduler.

Data note: Everything runs in this browser tab on the roster-cycle strip: your roster option | consecutive workdays | consecutive off days stays on this device, nothing is uploaded, and the reading is rebuilt only when you press run.

Go deeper: the companion app files the same reading as a paper ticker strip

The article demo above runs without limits. The companion app keeps a local history, exports the rows as CSV, prints the roster-cycle strip reading, and holds your drafts on this device — one complete free run; the proposed $4 one-time filing layer is not currently for sale.

The roster-cycle strip reading is complete for free. The optional $4 layer adds print, row CSV and the last five local reading summaries; it does not add hidden answers. Checkout is not configured yet; the article demo remains unlimited.

Open the count workdays in a repeating on-off roster companion

Boundary

Pattern arithmetic, not a fatigue assessment or employment entitlement calculation. Review rest requirements and the actual dated roster with the responsible scheduler.

What this is built on

Before: A different starting phase can change the short-horizon count. After: the roster-cycle strip shows the working beside each named row so the reader can change the assumption and inspect the consequence.

Optional AI formatting, not calculation

For this roster-cycle strip, use the free AI Studio interface only if available to you, with no paid API key. Manual entry completes the same workflow for free. Supply only fictional or non-sensitive notes. Review its output against the source; never paste unresolved questions into the numeric rows.

Format my non-sensitive notes for a roster-cycle strip. Return plain rows only: roster option | consecutive workdays | consecutive off days. Preserve supplied quantities exactly. Do not guess missing values; list questions separately. Do not calculate or add advice. I will check every row before pasting into the local tool.

Accepted schema: roster option | consecutive workdays | consecutive off days. No AI response is executed as code.