School timetable guides
How to generate a school schedule
A school timetable generator needs more than a list of subjects. Start with the hours your school can actually teach, then connect each class requirement to a teacher. Rik Plan uses those inputs and your rules to build a draft for review.
Open automatic modeSet up the school day
Open automatic mode, create a school and name the schedule. Enter data directly or use the optional Excel template. AI import can also bring in teachers, classes and teaching loads from an existing table or document for review. In the grid, define teaching days, lesson blocks, breaks, and real start and end times. Create separate grids when groups follow different school days.
Add teachers and class requirements
Add each teacher and the subjects they teach, then record unavailable times. Create classes, choose their grids, and add each subject with its teacher and number of lessons per week. Check these totals against the capacity of the grid before generating.
Separate requirements from preferences
Use subject rules for daily limits, spacing, or double lessons when needed. A hard rule restricts the solution; a soft rule expresses a preference. Start with essential restrictions, because making every preference mandatory can leave lessons without a place.
Generate, review, and export
Generate the timetable and inspect both class and teacher views. Read the unplaced-lesson report, correct missing data or incompatible rules, and generate again. Export a reviewed version to Excel or PDF for sharing; generation alone is not approval of the timetable.
Common questions
Do I have to upload Excel?
No. Choose direct entry to enter grids, teachers, and classes in the application. The Excel template is optional. You can also use AI import for data in an existing spreadsheet, Word document or pasted text, then review the extracted records.
Does automatic generation guarantee a complete timetable?
No. Availability, capacity, and hard rules can conflict. Review the diagnostics and remaining lessons before using the result.