Scheduling: Shift Patterns, Platoons & Time-Off Management
Command Established generates your department's schedule automatically from a shift pattern and platoon assignments — you don't manually place people on individual days. Define the rotation once, assign your members to platoons, and the calendar populates itself. Time-off, trades, callbacks, and other exceptions layer on top without disrupting the base rotation.
How It Works
The schedule is built from three pieces:
- Shift pattern — the repeating rotation cycle (e.g., 24 hours on, 48 hours off)
- Platoons — groups of personnel that follow the pattern on staggered days (e.g., A Shift, B Shift, C Shift)
- Assignments — which person belongs to which platoon, station, and optionally apparatus
Once these are configured, the calendar computes who's on duty every day by checking each person's platoon, their pattern's cycle, and any approved exceptions. When you change the pattern or move someone between platoons, future schedules update automatically.
Setting Up Shift Patterns
Go to Schedule > Settings > Patterns to create or manage shift patterns.
A shift pattern defines:
- Cycle length — how many days before the rotation repeats (e.g., 3 days for 24/48, 9 days for a Kelly schedule)
- Work periods — which portions of each cycle day are on-duty, including start time and duration
Built-In Presets
Command Established includes four common patterns you can use as-is or customize:
| Pattern | Cycle | Description |
|---|---|---|
| 24/48 | 3 days | 24 hours on, 48 hours off. Three-platoon rotation. |
| 48/96 | 6 days | 48 hours on, 96 hours off. Three-platoon rotation. |
| Kelly Schedule | 9 days | 24 on, 24 off, 24 on, 24 off, 24 on, 4 days off. |
| 10/14 Split | 8 days | Two 10-hour days + two 14-hour nights + 4 days off. |
If your department uses a different rotation, create a custom pattern by specifying the cycle length and work periods. The pattern builder shows a visual preview of the cycle so you can verify it matches your rotation before saving.
Creating Platoons
Go to Schedule > Settings > Platoons to create platoons.
Each platoon is tied to a shift pattern and has a cycle anchor date — the date that establishes which day of the cycle the platoon starts on. By staggering the anchor dates across platoons, you ensure coverage every day.
Example for a 24/48 rotation with three platoons:
| Platoon | Anchor Date | Works Day 1 | Works Day 2 | Works Day 3 |
|---|---|---|---|---|
| A Shift | Jan 1 | On | Off | Off |
| B Shift | Jan 2 | Off | On | Off |
| C Shift | Jan 3 | Off | Off | On |
Give each platoon a distinct color so shifts are easy to identify at a glance on the calendar.
Assigning Personnel
Go to Schedule > Settings > Assignments to assign members to platoons.
Each assignment includes:
- Member — who
- Platoon — which rotation group
- Station — home station
- Apparatus (optional) — specific rig assignment (e.g., Engine 1)
- Effective date — when this assignment starts
Assignments support transfers — set an end date on the current assignment and create a new one starting the next day. The schedule reflects the change seamlessly, and the history is preserved for payroll.
Using the Calendar
The schedule calendar shows who's on duty each day in month, week, or day views. Shifts are color-coded by platoon. Click any day to see the full roster.
Filtering: Narrow the view by station, platoon, or individual member to focus on what matters. Filter selections persist between sessions.
Roster view: The daily roster shows personnel grouped by station and apparatus, with staffing counts compared against your minimums. This is the view to check when you need to know who's working today and whether you're covered.
Managing Time-Off and Exceptions
Exceptions are anything that deviates from the base rotation. Go to Schedule > Exceptions to manage them.
Exception Types
| Type | What it means |
|---|---|
| Time off | Vacation, sick, personal, bereavement, FMLA, military, comp time, injury, Kelly day, and more |
| Overtime | Extra shift outside normal rotation |
| Trade | Shift swap between two members |
| Detail | Temporary reassignment to a different station or apparatus |
| Callback | Emergency call-in |
| Light duty | Modified duty — member stays on schedule but marked as exception |
| Training | Off-shift for external training |
Request and Approval Workflow
- Member submits a request — selects the type, dates, and optionally a category (vacation, sick, etc.)
- Request shows as pending — visible to admins in the exceptions list
- Admin reviews — approves or denies with optional notes
- Schedule updates — approved exceptions immediately reflect on the calendar
Admins can also create exceptions directly as approved, bypassing the request workflow — useful when scheduling overtime or recording a callback after the fact.
Staffing Preview
Before submitting a time-off request, the system checks whether approving it would drop any station below its minimum staffing level. If it would, a warning appears showing which stations and dates would be short-staffed. This gives both the requester and the approving admin visibility into the impact before committing.
Setting Staffing Requirements
Go to Schedule > Settings > Staffing to define minimum staffing levels.
For each station (and optionally per apparatus), specify:
- Minimum personnel — how many people need to be on duty at any given time
- Rank requirements (optional) — role-specific minimums (e.g., "at least 1 Captain")
The system uses time-sliced evaluation to compute the minimum concurrent count at any point during the day — it correctly handles shift changeovers rather than naively summing all hours. A day shift of 6 and a night shift of 8 means a minimum of 6 concurrent, not 14.
The daily roster shows whether each station is meeting its requirements. Any shortfall is flagged so officers can arrange coverage.
Payroll Integration
The schedule feeds directly into payroll reports. Go to Schedule > Payroll to generate time sheets.
For each member, the report shows:
- Regular shift hours worked
- Time-off hours broken out by category (vacation, sick, FMLA, Kelly day, etc.)
- Overtime and callback hours
- Daily breakdown — which days were worked, which were off, and why
Select a date range using presets (last pay period, this month, etc.) or a custom range. Export to CSV for import into your payroll system. See Running Payroll Reports for detailed guidance.
Common Setups
Volunteer Department (No Fixed Shifts)
Many volunteer departments don't run fixed platoon rotations. You can still use scheduling for:
- Duty shifts — assign members to weekly or monthly duty nights
- Time-off tracking — record when members are unavailable
- Event staffing — use the roster view to plan coverage for special events
Create a simple pattern (e.g., 7-day cycle) and assign members to platoons representing their duty rotation.
Career 24/48 Department
- Create the 24/48 shift pattern (use the built-in preset)
- Create 3 platoons (A, B, C) with staggered anchors
- Assign each career member to their platoon, home station, and apparatus
- Set staffing requirements per station
- Members submit time-off requests through the system; admins approve
Mixed Career/Volunteer Department
Assign career members to platoons with shift patterns. For volunteer members who participate in scheduled duty nights, assign them to a platoon with a simple pattern that represents their rotation (e.g., a weekly cycle). Volunteers who don't follow a fixed rotation can be left unassigned — their participation is tracked through training and event attendance rather than the schedule.
Frequently Asked Questions
What happens when I change a shift pattern?
Changes to a shift pattern affect all schedules — including past dates — for every platoon using that pattern. Payroll reports are computed from the current pattern, so editing a pattern can change previously generated payroll totals. If you need to change your rotation going forward without affecting past records, create a new pattern and reassign your platoons to it from the effective date.
Can a member be on multiple platoons?
A member can only have one active assignment at a time. To transfer someone between platoons, end their current assignment and create a new one. The date ranges ensure a clean transition.
How do shift trades work?
Create a trade exception for both members. The system cross-references the trade partner — one member's shift is removed and the other's is added for that date. Both members' schedules and payroll reflect the swap.
Does the schedule handle daylight saving time?
Yes. All shift calculations use timezone-aware date math. A "24-hour shift" starting at 8 AM always ends at 8 AM the next day, regardless of whether a DST transition occurs during the shift.
Can I see who's working right now?
Yes. The daily roster view for today's date shows everyone currently on duty, grouped by station and apparatus, with staffing levels compared against your minimums.
Who can request time off?
Any member can request time off for themselves. The request goes to pending status until an admin approves it. Admins can create exceptions for any member and approve them directly.