Higher education

University and college timetable generator

Higher-education timetabling is not school timetabling at a larger scale. Students pick their own combinations, and that changes the problem entirely.

A school timetables classes. A university timetables students, and that single difference is why school-shaped tooling breaks in higher education.

In a school, Year 9 Set 2 is a block that moves together, so checking the block is enough. In a university, a cohort is a fiction: every student assembles a personal combination of modules, and a clash between two options may affect eleven people out of four hundred. It is invisible in any view that aggregates.

Modular enrolment makes clashes probabilistic

You cannot verify a modular timetable by inspecting it. You verify it by testing every enrolled student’s actual module set against every session — and then again after add/drop, when the enrolment you validated against has changed underneath you.

This is why timetable quality in higher education is usually expressed as the number of students with an unresolvable clash, rather than as a yes-or-no.

One module is several different scheduling objects

A module might be a weekly lecture for two hundred, six seminar groups of thirty, and a lab rotation that runs fortnightly. These have different room requirements, different staffing, different frequencies, and different clash rules — a student attends one seminar group, not all six.

Tools that model a subject as a single recurring slot cannot express this, and the workaround is a spreadsheet running alongside the system.

Room utilisation is a budget line

Estate is one of the largest costs in higher education, and utilisation is measured and reported. A timetable that is valid but concentrates everything into Tuesday and Wednesday leaves expensive space empty for half the week.

Optimising for spread and for right-sized rooms — not putting a seminar of twelve in a theatre for a hundred — is a financial outcome, not an aesthetic one.

Staff availability is genuinely complicated

Research time, sabbatical, part-time fractional contracts, visiting lecturers with narrow windows, and staff who teach across departments that timetable independently. Each of these is a hard constraint, and departments scheduling in isolation is the usual reason a shared lecturer ends up double-booked.

What to test any higher-education tool against

  • Can it report clashes per student, not per programme?
  • Can one module have lectures, seminars and labs with different rules?
  • Does it re-validate after add/drop, or only at build time?
  • Does it optimise room utilisation and size-matching?
  • Can it schedule staff shared across departments?
  • Can it publish a personal timetable to each student?

Frequently asked questions

Is the demo on this site suitable for a university?

No — it is a school-shaped demonstration limited to two classes and three teachers, built to show how constraint solving works. It is useful for seeing the mechanics, not for scheduling a faculty.

Why do departments timetabling separately cause problems?

Because shared resources do not belong to a department. A lecturer teaching on two programmes, a lab used by three, a lecture theatre booked by whoever asked first. Each department produces a valid timetable and the conflicts appear only where they touch.

What is a realistic target for student clashes?

Zero is usually not achievable with genuinely free module choice — some combinations are mathematically incompatible. The realistic goal is to minimise them, know exactly who is affected, and resolve those cases individually before publication rather than discovering them in week one.

Generate your school timetable with AI

Start a 14-day free trial on Skoolia — no credit card, cancel anytime.

Start free trial

14 days free · No card required · Clash-free timetables in minutes