Free tool

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.

1. The school week
Presets:

35 periods a week for each class

Period 1 10:00–10:40 · last period 14:30–15:10 · break 12:40–13:10

2. Classes, subjects and teachers
  • 32 of 35 periods

  • 32 of 35 periods

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

Grade 8 A: weekly timetable
PeriodMondayTuesdayWednesdayThursdayFriday
110:00–10:40EnglishMs. RaiMathematicsMr. ThapaMathematicsMr. ThapaMathematicsMr. ThapaEnglishMs. Rai
210:40–11:20MathematicsMr. ThapaEnglishMs. RaiMathematicsMr. ThapaEnglishMs. RaiScienceMrs. Gurung
311:20–12:00ScienceMrs. GurungScienceMrs. GurungScienceMrs. GurungScienceMrs. GurungMathematicsMr. Thapa
412:00–12:40EnglishMs. RaiSocial StudiesMr. KarkiEnglishMs. RaiScienceMrs. GurungSocial StudiesMr. Karki
Break · 12:40–13:10
513:10–13:50Social StudiesMr. KarkiComputerMr. AdhikariSocial StudiesMr. KarkiComputerMr. AdhikariComputerMr. Adhikari
613:50–14:30NepaliMs. ShresthaNepaliMs. ShresthaComputerMr. AdhikariSocial StudiesMr. KarkiNepaliMs. Shrestha
714:30–15:10––NepaliMs. ShresthaNepaliMs. Shrestha–

Grade 8 B

32 periods a week · 3 free

Grade 8 B: weekly timetable
PeriodMondayTuesdayWednesdayThursdayFriday
110:00–10:40ScienceMrs. GurungEnglishMs. RaiEnglishMs. RaiEnglishMs. RaiMathematicsMr. Thapa
210:40–11:20EnglishMs. RaiScienceMrs. GurungScienceMrs. GurungScienceMrs. GurungEnglishMs. Rai
311:20–12:00MathematicsMr. ThapaMathematicsMr. ThapaMathematicsMr. ThapaMathematicsMr. ThapaEnglishMs. Rai
412:00–12:40Social StudiesMr. KarkiScienceMrs. GurungSocial StudiesMr. KarkiMathematicsMr. ThapaScienceMrs. Gurung
Break · 12:40–13:10
513:10–13:50ComputerMr. AdhikariSocial StudiesMr. KarkiComputerMr. AdhikariSocial StudiesMr. KarkiSocial StudiesMr. Karki
613:50–14:30NepaliMr. BhandariNepaliMr. BhandariNepaliMr. BhandariNepaliMr. BhandariNepaliMr. Bhandari
714:30–15:10–––ComputerMr. AdhikariComputerMr. Adhikari

How to use the timetable generator

Most of the work is gathering the numbers. The generator does the fitting.

  1. 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. 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. 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. 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 weekPeriods a daySlots a week for each class
Monday to Friday735
Monday to Friday840
Sunday to Friday742
Sunday to Friday848
Monday to Saturday848

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
schooleasy.org/roster

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.

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