School timetable generator
Enter your school days, periods and each class's subjects with their teachers and periods a week. The generator builds a weekly timetable for every class with no teacher in two places at once, spreads each subject over the week, and gives you every teacher's timetable too. Free, with no sign-up, and it runs in your browser.
Make your timetable
The example has two sections of Grade 8 sharing most of their teachers. Change the days, periods and subjects to match your school, then press Generate.
3. Teacher availability (optional)
Timetable ready for 2 classes.
- Classes
- 2
- Teachers
- 7
- Periods placed
- 64
- Not placed
- 0
Every period is placed and no teacher is in two classes at the same time.
Grade 8 A
32 periods a week · 3 free
| Period | Monday | Tuesday | Wednesday | Thursday | Friday |
|---|---|---|---|---|---|
| 110:00–10:40 | EnglishMs. Rai | MathematicsMr. Thapa | MathematicsMr. Thapa | MathematicsMr. Thapa | EnglishMs. Rai |
| 210:40–11:20 | MathematicsMr. Thapa | EnglishMs. Rai | MathematicsMr. Thapa | EnglishMs. Rai | ScienceMrs. Gurung |
| 311:20–12:00 | ScienceMrs. Gurung | ScienceMrs. Gurung | ScienceMrs. Gurung | ScienceMrs. Gurung | MathematicsMr. Thapa |
| 412:00–12:40 | EnglishMs. Rai | Social StudiesMr. Karki | EnglishMs. Rai | ScienceMrs. Gurung | Social StudiesMr. Karki |
| Break · 12:40–13:10 | |||||
| 513:10–13:50 | Social StudiesMr. Karki | ComputerMr. Adhikari | Social StudiesMr. Karki | ComputerMr. Adhikari | ComputerMr. Adhikari |
| 613:50–14:30 | NepaliMs. Shrestha | NepaliMs. Shrestha | ComputerMr. Adhikari | Social StudiesMr. Karki | NepaliMs. Shrestha |
| 714:30–15:10 | – | – | NepaliMs. Shrestha | NepaliMs. Shrestha | – |
Grade 8 B
32 periods a week · 3 free
| Period | Monday | Tuesday | Wednesday | Thursday | Friday |
|---|---|---|---|---|---|
| 110:00–10:40 | ScienceMrs. Gurung | EnglishMs. Rai | EnglishMs. Rai | EnglishMs. Rai | MathematicsMr. Thapa |
| 210:40–11:20 | EnglishMs. Rai | ScienceMrs. Gurung | ScienceMrs. Gurung | ScienceMrs. Gurung | EnglishMs. Rai |
| 311:20–12:00 | MathematicsMr. Thapa | MathematicsMr. Thapa | MathematicsMr. Thapa | MathematicsMr. Thapa | EnglishMs. Rai |
| 412:00–12:40 | Social StudiesMr. Karki | ScienceMrs. Gurung | Social StudiesMr. Karki | MathematicsMr. Thapa | ScienceMrs. Gurung |
| Break · 12:40–13:10 | |||||
| 513:10–13:50 | ComputerMr. Adhikari | Social StudiesMr. Karki | ComputerMr. Adhikari | Social StudiesMr. Karki | Social StudiesMr. Karki |
| 613:50–14:30 | NepaliMr. Bhandari | NepaliMr. Bhandari | NepaliMr. Bhandari | NepaliMr. Bhandari | NepaliMr. Bhandari |
| 714:30–15:10 | – | – | – | ComputerMr. Adhikari | ComputerMr. Adhikari |
First term timetable
Grade 8 A
32 periods a week · 3 free
| Period | Monday | Tuesday | Wednesday | Thursday | Friday |
|---|---|---|---|---|---|
| 110:00–10:40 | EnglishMs. Rai | MathematicsMr. Thapa | MathematicsMr. Thapa | MathematicsMr. Thapa | EnglishMs. Rai |
| 210:40–11:20 | MathematicsMr. Thapa | EnglishMs. Rai | MathematicsMr. Thapa | EnglishMs. Rai | ScienceMrs. Gurung |
| 311:20–12:00 | ScienceMrs. Gurung | ScienceMrs. Gurung | ScienceMrs. Gurung | ScienceMrs. Gurung | MathematicsMr. Thapa |
| 412:00–12:40 | EnglishMs. Rai | Social StudiesMr. Karki | EnglishMs. Rai | ScienceMrs. Gurung | Social StudiesMr. Karki |
| Break · 12:40–13:10 | |||||
| 513:10–13:50 | Social StudiesMr. Karki | ComputerMr. Adhikari | Social StudiesMr. Karki | ComputerMr. Adhikari | ComputerMr. Adhikari |
| 613:50–14:30 | NepaliMs. Shrestha | NepaliMs. Shrestha | ComputerMr. Adhikari | Social StudiesMr. Karki | NepaliMs. Shrestha |
| 714:30–15:10 | – | – | NepaliMs. Shrestha | NepaliMs. Shrestha | – |
First term timetable
Grade 8 B
32 periods a week · 3 free
| Period | Monday | Tuesday | Wednesday | Thursday | Friday |
|---|---|---|---|---|---|
| 110:00–10:40 | ScienceMrs. Gurung | EnglishMs. Rai | EnglishMs. Rai | EnglishMs. Rai | MathematicsMr. Thapa |
| 210:40–11:20 | EnglishMs. Rai | ScienceMrs. Gurung | ScienceMrs. Gurung | ScienceMrs. Gurung | EnglishMs. Rai |
| 311:20–12:00 | MathematicsMr. Thapa | MathematicsMr. Thapa | MathematicsMr. Thapa | MathematicsMr. Thapa | EnglishMs. Rai |
| 412:00–12:40 | Social StudiesMr. Karki | ScienceMrs. Gurung | Social StudiesMr. Karki | MathematicsMr. Thapa | ScienceMrs. Gurung |
| Break · 12:40–13:10 | |||||
| 513:10–13:50 | ComputerMr. Adhikari | Social StudiesMr. Karki | ComputerMr. Adhikari | Social StudiesMr. Karki | Social StudiesMr. Karki |
| 613:50–14:30 | NepaliMr. Bhandari | NepaliMr. Bhandari | NepaliMr. Bhandari | NepaliMr. Bhandari | NepaliMr. Bhandari |
| 714:30–15:10 | – | – | – | ComputerMr. Adhikari | ComputerMr. Adhikari |
How to use the timetable generator
Most of the work is gathering the numbers. The generator does the fitting.
- 1
Set the school week
Pick the school days (there are presets for Monday to Friday and Sunday to Friday), the periods a day and, if you want them on the printout, the first bell, period length and break.
- 2
Add classes and subjects
For each class or section, list its subjects with the teacher and the periods a week. Type a teacher's name the same way in every class: that is how the generator knows it is one person.
- 3
Mark periods teachers cannot take
Optional. If a teacher works part-time or is elsewhere on a fixed day, tick the periods they are not available.
- 4
Generate and check
Look through the class view and the teacher view. Regenerate for a different arrangement, then print one timetable to a page or download a CSV.
What the generator checks
Before it starts, the generator checks the numbers that make a timetable impossible: a class with more periods a week than the week has, and a teacher whose periods across every class add up to more than the periods they are available for. It names the class or teacher and says by how much, so you can fix the input instead of guessing.
It then places every period so that no teacher is in two classes at the same time, and spreads each subject over the week: once a day where the count allows, and not more than twice in a day unless the count needs it. The hardest periods, those of the busiest teachers and the fullest classes, are placed first, and periods in the way are moved when something will not fit. If a period still cannot be placed, it is listed for you rather than squeezed into a clash.
The timetable changes only when you press Generate or Regenerate, so what you print is what you checked. Regenerate tries another arrangement that follows the same rules, and the one on screen is remembered in this browser with everything you entered.
Periods a week: a quick check
Add up each class's subjects before you start. They must fit in the week's slots, and so must each teacher's periods across all of their classes.
| School week | Periods a day | Slots a week for each class |
|---|---|---|
| Monday to Friday | 7 | 35 |
| Monday to Friday | 8 | 40 |
| Sunday to Friday | 7 | 42 |
| Sunday to Friday | 8 | 48 |
| Monday to Saturday | 8 | 48 |
A teacher can in principle take every slot in the week, but a teacher with no free periods leaves no room for cover, marking or meetings.
Tips for a timetable that works
Small things that save a rewrite in the second week of term.
- Write each teacher's name the same way everywhere: to the generator, Mr. Thapa and Mr Thapa are two people.
- Leave the busiest teachers a few free periods, so there is someone to cover an absence.
- Expect subjects with more periods than there are days to appear twice on some days.
- If the whole school has a fixed period, such as assembly, leave it out of the periods a day and add it to the printout.
- Check each teacher's week as well as each class's: the teacher view shows days that are too heavy.
- Share class timetables with students and teacher timetables with staff before the term starts.
Do this for the whole school in SchoolEasy
In SchoolEasy, the timetable is a weekly grid for each class section, with clash checks so a teacher, a room or a class cannot be double-booked. An availability view shows the teachers and rooms that are free in a period, and period templates set out the school day once.
Generate timetable builds every section's week at once from the faculty board, with each subject's periods a week, its teacher and its room, and keeps teachers' unavailable times. You check the preview, swap or lock periods, and save, and the week before can be restored. When a teacher's leave is approved, each period they would have taught becomes a cover gap with suggested free teachers, and the base timetable stays as it was.
- The whole school's timetable generated in one click, on the Free plan
- Weekly timetable with clash checks on the Free plan
- Free teachers and rooms for any period
- Period templates for the school day
- Leave and substitute cover on the Gold and Platinum plans
Grade 8 · Section A · Weekly timetable
Clash-checked against every teacher and room
Frequently asked questions
Is the timetable generator free?
Yes. It is free, with no account. The timetable is made in your browser and nothing you type is sent to SchoolEasy. What you enter is remembered in this browser, so you can come back to it.
How does it avoid teacher clashes?
Teachers are matched by name across every class, ignoring capital letters and extra spaces. A period is only placed where its teacher is free in every other class, so no teacher is in two classes in the same period. Use the teacher view to check each person's week.
Why does it say a class or a teacher has too many periods?
A class can only have as many periods as the week has slots, which is days multiplied by periods a day. A teacher's periods across all classes must also fit in the week, or in the periods they are available. The message names the class or teacher and the numbers, so you can reduce the count, share the subject with another teacher or add a period to the day.
What if some periods cannot be placed?
The generator tries several arrangements and moves periods out of the way where it can. If a period still will not fit without a clash, it is listed by class, subject and teacher, and the rest of the timetable is shown. Regenerate, give some periods to another teacher, free up a teacher's availability or add a period to the day.
Can it follow a Sunday to Friday week?
Yes. Pick any days of the week, or use the presets for Monday to Friday, Sunday to Friday and Monday to Saturday. Period times and a break are optional and only change the labels on the timetable.
Can I fix a subject to a particular period?
Not in this tool. If the whole school has a fixed period, such as assembly, leave it out of the periods a day and add it to the printout. In SchoolEasy you can lock a period on a generated timetable and generate the rest of the week around it.
Can I print or export the timetable?
Yes. Print the class timetables or the teacher timetables, one to a landscape page, or save them as a PDF from the print dialog. Download CSV gives one row per period with the class, day, period, time, subject and teacher.
Related
- Timetables in SchoolEasyA weekly grid per section with clash checks, free teachers and rooms, and cover for leave.Read more
- Exam seating plan generatorSeat several classes across your exam rooms and print a door chart for each.Read more
- NEB GPA calculatorTurn marks into NEB letter grades and a credit-weighted GPA.Read more
- Report cardsMarks, grades and printable report cards from the exams you run.Read more
- Admit card templatePrint admit cards with the exam routine and each student's seat.Read more
- All free toolsEvery free tool and template for school offices and teachers.Read more
Run the timetable for the whole school
SchoolEasy generates every section's timetable at once from your faculty board, with clash checks for teachers, rooms and classes, on the Free plan.
- Free plan, no card needed
- Set up in an afternoon
- Role-based access for every account
Page updated