Sure Step Education

Master Schedule Generator

← Staffing plan Privacy
Phase 1 — District Allocation & Core Build

Site parameters

The district grants an estimated FTE total for the year based on anticipated students. Enter the grant, enrollment per grade, and the secondary cap sizes.

Schedule type
EGEA contract (2025–27 secondary pilot): 37 per class on block, 36 on traditional — the standard cap switches automatically with schedule type. PE 45. Band, Choir, Advisory/Advocacy, Athletic-PE, and Leadership are exempt (no hard cap — sized by teacher input, facility, and safety); the planning size above is only for estimating their sections.
Graduation requirements

District-mandated classes by grade

Edit names, departments, and the % of students taking each course. Honors/AP splits are set in Phase 3.

How “% taking” works: it is the share of that grade's enrollment that takes the course — a graduation requirement is 100%. Seats = enrollment × %; sections = seats ÷ cap, rounded up. Once a request-count file is loaded, the tool offers to set each row from the file and shows was → now.

Preliminary FTE division — subject × term

Phase 2 — Electives & Staffing Estimate

Build electives from the leftover FTE

Core classes (and CTE cohorts from Phase 3) claim FTE first; what's left is the elective budget. Counselor request counts only suggest a section count — the Sections column is your allocation. Demand you don't build stays generic as Electives (unassigned) so student schedules stay full. Electives use the standard 37 cap unless set to PE. If you run CTE pathways, set them in Phase 3 first — they claim FTE before electives, so the budget below updates once they're entered.

Set each elective's Department so the master board files it under the right subject. A new elective starts in the generic Electives bucket — change it to Visual & Performing Arts, CTE, World Language, and so on. Whatever you leave as Electives is treated as unassigned demand.

Teacher count estimate (by department)

Phase 3 — Programs & Pathways

CTE pathways

Enter the actual student counts committed to each CTE pathway. The cohort starts sophomore year and advances Level 1 → Level 2 → Capstone. These students must be placed in their pathway class, so pathway sections are staffed right after core — before electives. A level whose course meets a–g can replace a requirement for its students — pick which; those students come out of that requirement's gen-ed count and their pathway class is the requirement slot, not an elective.

RSP (resource specialist program)

RSP students take the special-education version of a core course — English 9 #17208, Mathematics I #17307 — and those students come out of the gen-ed count for that requirement. RSP classes are taught by case managers at a lighter load, and their FTE counts in the one FTE total. Each RSP course meets the graduation requirement but not a–g — the Gap Review says how many students that is.

Honors / AP programs

Check the classes that will run an Honors/AP section this year, then enter that section's seat count. A checked class splits into a regular cohort and an Honors/AP cohort, each with its own sections. Leave a class unchecked if it isn't running honors this year (some always do, some change year to year).

Honors seats are part of the requirement, not carved out of it: a grade of 520 with 142 in AP US History needs 378 regular seats and 142 honors seats, not 378 in total. The line under each class name is the whole group's demand. Where a request file has been read, these seats can be proposed from it instead of typed.

Self-contained special education (SCC)

SCC classes count in the one FTE total, like every other class. Enter how many sections each SCC class runs (caps are lower than general ed). Titles start generic (SCC 1, SCC 2, …) — rename them anytime.

Phase 4 — Teachers, Rooms & Sections

Teachers & rooms

Enter your real staff and rooms here first — the master board in the next tab is built from what you put in here. Everything is saved for next time.

Teachers

Import your staff list
Drop the file here, or choose it below — a CSV with Staff ID, Last, First, Email, Department, FTE and, if you have it, Credentials (a semicolon list like “English; Social Science”, or Course IDs like “2000; 2030”) plus Supplementary; or a JSON export that also carries each teacher's survey answers. The credential column fills the chair's queue in — it never signs anybody off. You will see exactly what it would change before anything is written.
Load the staff survey answers
Teachers fill in the survey page, press “Save a copy” and send you the file. Drop them all here at once. They arrive as proposals: what each teacher says they can teach, filed under their name for a chair to confirm. Nobody is qualified by a survey.

Rooms

A room list is a JSON file: name, seats, type, the phone Extension, and (optionally) how many classes it holds at once, which periods it is closed, whose room it is, and whether it is dedicated to its own subject. The extension prints on the staff roster in Phase 5. Nothing about students is in it.

Assign sections to teachers & rooms

Give each section a teacher and a room. Auto-assign first-fits by department / capacity while avoiding clashes — then adjust any row by hand. Filter by grade or department to work one group at a time. The Conflicts panel guarantees no teacher and no room is used twice in the same period of the same term.

Conflicts & coverage

Checks that no teacher and no room is double-booked in the same period × term, no teacher is over their load, and every room fits its class.

Per-teacher schedules

Each teacher's day, from your assignments. Open to see them.

Each teacher's actual day, built from your assignments above — periods down, terms across, with the room for each class. Empty cells are prep.

Per-room schedules

What runs in each room, by period and term. Open to see them.

What runs in each room by period and term, from your assignments — to check room usage and spot open rooms.

Phase 5 — Master Board

Master board

Every section in the school, by period and term. Drag any section to another cell to move it — a move that would double-book a teacher or a room, empty a facility, or put two one-section courses of the same department in one period is refused, and the tool says why. The summary and the by-subject board below are built from what you see here.

Terms at a glance

Schedule by subject

Each department's sections — teacher, room, and the period they run in each term — grouped by subject. This is the printable board a department chair reads. Use the grade or department filters above to focus. Change a section's period/teacher/room back in the Teachers & rooms tab.

Staff roster

The sheet you hand out on the first day: every member of staff, in last-name order, with their department, their room and its phone extension, and — term by term — the period, the class and the room of everything they teach. Room extensions are entered on the Rooms card in Phase 4. A class with no teacher is on nobody's line.

Phase 6 — Gap Review

Gap review

Ready to publish?

One answer, with the reasons under it. Every must-pass check has to be green — or accepted in writing — before the schedule can leave this tool.

Acceptable open periods (study hall / TA / open campus)

Not every elective slot has to be a staffed class. Declare how many open periods per student are fine for each grade — those slots are dropped from demand and no longer counted as “unseated.” Seniors with an open 4th period, TA slots, and open-campus periods belong here.

Students who could not fit

Elective seats still short a section, by grade — after subtracting any acceptable open periods declared above — and the FTE it would take to seat them.

Close the gap

Concrete levers to seat everyone, with the shortfall each one leaves — computed from your current plan.

Staffing by department

Sections are minimum counts at full caps. Bars show each department's share of granted FTE.