There's no universal right answer to how many sessions a unit needs, and schools that search for a fixed rule of thumb often end up either overstaffing sessions no one needed or understaffing ones that were oversubscribed. The right number is a function of two specific inputs — class-size limits and how spread out student availability actually is — not a general best practice that applies equally to every school.
Start from class-size limits
Decide the maximum comfortable session size first — that number, divided into your total student count, sets a rough floor for how many sessions you need.
Starting from class-size limits gives a useful floor: divide total students needing a unit by the maximum comfortable session size, and that division gives a minimum number of sessions required regardless of scheduling flexibility. This floor doesn't change based on how flexible scheduling is — it's a hard constraint set by how many students one teacher can meaningfully manage in a single live session.
Layer in availability spread
If your students' free times cluster narrowly, fewer sessions suffice; if spread widely, more sessions (or smarter timing) are needed to capture everyone.
Availability spread is the variable that determines how far above that floor a school actually needs to go. If most students share similar free time windows, relatively few sessions beyond the class-size floor are needed, since one or two well-chosen times capture most of the group. If availability is highly varied across the class, more distinct session times are needed to reach the same proportion of students.
Let the data decide, not guesswork
Rather than fixing a number in advance, an optimization layer can calculate the minimum sessions needed for your actual student availability each unit.
Guessing at this number risks either extreme — too few sessions leaves students without a workable time and attendance suffers, while too many sessions wastes teacher hours on sessions that end up under-filled once actual demand becomes clear. Calculating the number from real availability data, rather than picking a number that feels reasonable, avoids both failure modes at once.
A simple manual estimate before automating it
Even without a formal optimization tool, a school can approximate this by surveying student availability at the start of a unit, grouping responses into common time clusters, and setting one session per meaningfully sized cluster rather than per individual preference. This manual approach won't be as precise as an automated calculation, but it moves well past pure guesswork toward something grounded in actual data.
Why the right number can change unit to unit
Availability isn't static across a term — sports seasons start and end, family schedules shift, and what worked as a session count for one unit may not fit the next. Treating the session count as something to recalculate periodically, instead of fixing it once at the start of a term, keeps the schedule matched to actual current demand rather than demand as it existed weeks earlier.
What happens when a session fills up mid-unit
A well-designed system directs students to the next open session for the same unit rather than leaving them stuck once their first-choice time is full, preserving the core promise of flexible scheduling — a workable slot for every student — even under the practical constraint that any single session still has a size limit.
A note on over-scheduling as a hidden cost
It's worth remembering that over-scheduling isn't a neutral safety margin — every extra session beyond what's needed still consumes a full teacher hour, even if it ends up serving only a handful of students who could easily have been absorbed into an existing session. Schools sometimes add "just in case" sessions out of caution, but this caution has a real, recurring cost that compounds over a full term, which is exactly why calculating the actual minimum, rather than padding it generously, matters as much as avoiding the opposite problem of too few sessions.
Where iRead fits: The optimizer recalculates the minimum viable session count per unit automatically, adjusting as availability changes term to term. The optimizer recalculates this minimum session count automatically for each unit based on current availability data, as opposed to relying on a fixed number carried over from a previous term.
See it in iRead: iRead runs live scheduled sessions with flexible student choice and a built-in scheduling optimizer.
See the schedulerKey takeaway
The right number of sessions per unit isn't a fixed rule of thumb — it's the smallest number that respects class-size limits while still giving every student, given their actual availability, a workable time to attend, and that number is worth recalculating instead of assuming it stays constant across the year.
Frequently asked questions
Should every unit have the same number of sessions?
Not necessarily — availability can shift across the term, so the right count for one unit may not fit the next.
What happens if a session fills up?
Students are directed to the next open session for that unit, keeping the one-per-unit rule intact.
Is it better to run one large session or several smaller ones covering the same total students?
It depends on the class-size limit a school has set and how spread out availability actually is — a single large session only works if every student can genuinely attend that one time, which is rare in practice, making several smaller, well-timed sessions the more common and more effective choice.