School scheduling/timetabling software
Posts tagged school timetabling software
Timetabling history + multiple undo
Sep 14th
Creating a school timetable requires a lot of work. Sometimes, you want to see whether the automatic generator can generate an even better timetable, at other times you want to manually change card positions using drag & drop and sometimes it’s just an accidental mistake. It’s very important that you can undo or redo changes whenever you want.
From the very first version of Prime Timetable it was possible to undo/redo any view changes by clicking undo
and redo
. Recently, we have added a new history icon
which lets you see all previous changes. You can undo all or some of them with just one mouse click. History list is also helpful because every action has its description, for instance: 1 card dragged, 2 marks erased, 240 cards changed by generator, 1 card cleared, 2 positions marked as mandatory… so you get a clear picture of all previous changes.

Undo 6 actions at once using timetabling history
Although history is very similar to what you are already using in Microsoft Excel, Word or Adobe Photoshop, there is a fine catch in the Prime Timetable. Both undo/redo and multiple undo are animated (!), so you can see the cards moving from one position to another. Also, all changes are tracked in the instant validation window, which helps you decide which position better suits you.
Quick timetabling guide
Aug 28th
Timetabling terms
- timetable = schedule
- class = grade
- subject = course or activity, and
- lessons = sections.
Feeling confused? Check basic timetabling terms.
Creating a free account

Empty school timetable
to browse through other timetable examples, which can be a great resource for learning and understanding. Obviously, there is no data so you need to enter some to enable timetabling tools.Days and periods

Manage days and periods
Subjects, rooms, teachers and classes

Manage classes/grades in the timetable
Manage lessons

Add lesson dialog
Saving changes and history
Master view
Extra view

Fully interactive class and teacher view on one screen
Individual view

Individual class/grade view
Automatic generation

Automatic timetable generation process
Instant validation

Instant validation upon any timetable change
Adding constraints

Forbidden (red minus), unwanted (yellow exclamation mark) and mandatory (blue plus) marks in the master teacher view
Improving timetable

Pinned cards (8E, 8D and 7B) have bold unrounded borders
Manual timetabling
Customize cards

Card designer for individual view
Share with colleagues

Share school account with colleagues
Publish to the web

Published timetable is accessible via smartphone, tablet or any mobile
The conclusion
Introducing a new scheduling tool – the marker
Aug 5th
Automatic school scheduling is all about solving constraints. Wouldn’t it be nice to have a handy tool that lets you define constraints simply by drawing marks in the timetable? That’s what we are proudly introducing as of today: red
, yellow
and blue markers
and eraser
– the new intuitive and game-like scheduling tools that will let you easily draw or erase forbidden, unwanted or mandatory marks directly into any timetable view and much more than that:
- When a marker is selected, all cards fade away and all previously drawn marks are filled with color making them prominent. Thus you can see already scheduled cards, verify marks (even the ones below scheduled cards) and draw/erase new marks for any resource by clicking any position in the timetable view.
- Holding the left mouse button down and moving the marker using the mouse will draw or erase multiple marks all at once, similar to using pin
and sponge
. With just one click on a period/day, you can mark it as forbidden for all resources in the current timetable view. Click again and drawn marks will be erased. Use right mouse click to switch to the next marker and press Esc key to drop the marker when finished. - Instant validation shows instant feedback on any change you make using the marker.
- You can use markers in any master, individual or extra view and all other views will be updated accordingly. You can even choose different views to mark resources there without dropping the marker.
- Whatever you do, don’t worry because unlimited undo/redo works for any mark changes.
- Mouse over the first column to copy marks to other resources, or define number of unwanted or missed mandatory lessons per week and per day.
- As always the owl will help you while using markers by providing marker tips and other helpful information.

Forbidden (red minus), unwanted (yellow exclamation mark) and mandatory (blue plus) marks drawn using markers
For more information refer to using markers to set time request in our help or read the blog post on how we got the idea to build a better time request based on application usage. The old and deprecated way of defining time request is still available, just check Help > Options > Show Marks button in manage grids.
The new markers will prove that previously slow and tedious task of defining constraints can be fun, game-like and still more productive. Keep in mind though, that it is always a good practice to generate a valid timetable first and then add additional constraints step by step. Hope you will enjoy the prime experience you’ve already grown accustomed to and let us know how it works for you.
Building a better time request
Jul 28th
If we were to point out only one scheduling/timetabling tool, it would certainly be the ability to mark specific periods as forbidden, unwanted or mandatory for school resources and let the automatic generator do the magic and create a timetable that solves all constraints. In the screenshot below teacher is not allowed to have lessons on Day 1, Day 3 and Day 5.

Old way of defining time request for teacher, marking day 1, 3 and 5 as forbidden
However, there are problems here. We have collected and analyzed data from our application log and were surprised to find out that the time request is not widely used. Here is what we have also found out.
Drawbacks of time request implementation
Many of our users and even some of our customers are simply not aware that defining time request exists. The Time request button is buried bellow Add, Edit, Remove and Copy grid buttons and users somehow seem to overlook it. Furthermore, here are some additional drawbacks:
- Time request can only be defined in the individual timetable view and only for one resource at a time.
- No undo/redo is available when marking periods.
- To change period constraints one more click on the same position is needed and it sort of complicates the workflow.
- To specify a time request, the timetabler has to leave the main master timetable view and go to modal pop-up window.
- Time request doesn’t play nice with our unique instant validation.
- Already scheduled cards are not displayed while defining time requests.
- It’s hard to see defined time request below the card in the timetable view, e.g. timetabler has to pick and drag a card to see the defined time request below (if any).
- Less productive, e.g. you can’t easily mark a period for all resources as forbidden.
Well, you get it. We felt like we could do a much better job here and hopefully introduce a new timetabling/scheduling tool that would be a pleasure to use and understandable to all.
A better approach using interactive markers
All these drawbacks have inspired us to think about better approaches that would resolve listed issues. We thought that we should add a new interactive timetabling tool (similar to pin and sponge) that will allow marking positions directly in the master timetable view, but also in the individual and extra views. First we came up with a chalk or pen in different colors, but we also needed the ability to remove marks and for that we could reuse the sponge. But the sponge is already used for removing cards and we didn’t want to mix it and create confusion.
We ended up using markers in different colors (red
, yellow
and blue
) and the eraser which is a white marker
. We have put markers on the school board so it is always at hand. Once a marker is selected, all timetable cards fade out and marks are filled with color (red, yellow and blue) making them prominent.
Although markers are fun and intuitive there are still benefits in the old way of defining time request. For instance, you can easily copy marks to other resources or you can define allowed number of unwanted or missed mandatory lessons. To resolve this, we have added a marker settings when you mouse over the first column with the marker selected.
Benefits of using markers for setting time request
Here are some of the benefits of using markers:
- It’s much more fun to use the new interactive game-like tool providing overall better user experience.
- More productive, e.g. with just one click on the period you can mark it as forbidden for all resources in the current timetable view.
- Better discoverability – it’s on the school board.
- Easy learning curve, as it’s working similar to other timetabling tools, such as pin
and sponge
. No more multiple clicks. - No need to leave the master timetable view.
- Unlimited undo/redo works as expected.
- It works great with instant validation as you get instant feedback on any change you make using the marker.
- You can easily see and verify marks below the cards, because cards are becoming more transparent once the marker is selected.
- You can see already scheduled cards while using the marker.
- You can use markers in any view: master, individual or extra views. You can even switch views while using the marker to mark resources in other views.
For more information about markers refer to using markers to set time request in our help or read follow-up blog post introducing a new scheduling tool – the marker.
Ignoring cards to use automatic timetable generator
Jul 25th
One of the main purposes of school scheduling/timetabling software is to help schools with automatic timetable generation and validation. In order to use automatic generator and validator you should follow the basic timetabling rule which says:
One school resource during one school period can be scheduled in only one lesson. Otherwise, there is a conflict.
In the Prime Timetable, the conflicted cards are rotated so you can easily spot and fix them. There are two common approaches to fixing conflicts:
- Add more than one teacher or class/group in the lesson or remove redundant lessons/cards.
- Just ignore conflicted cards.
Add more than one teacher or class/group
If there is more than one teacher or more than one class/group attending a lesson, you should not create more than one lesson for it. The example is in the screenshot below. Teachers John and Jim are giving lectures for two classes/grades 7A and 7B at the same time.

Screenshot with two conflicted cards instead of one. The owl gives a helpful hint how to resolve the issue.
When adding a new lesson (Manage > Lessons > Add) just add another teacher or class/group to it. Thus, you’ve created only 1 lesson/card and therefore there are no conflicts/rotation and automatic timetable generation and validation will work as expected.
Ignore cards
If for some reason you want to keep the position of conflicted cards and still take advantage of automatic timetable generation and validation, you might want to ignore them.

When there are lots of conflicted cards, it might be easier to just ignore them
In this screenshot there are lots of classes/grades using the Fellowship Hall/Gym at the same time, which creates many conflicts in the room view. Nevertheless, you can create only one lesson and include all those classes or just ignore the Gym.
In order to ignore cards, do the following:
- Set “-” (without quotes) as a short name for any school resource which is part of the lesson/card you want to ignore. For instance, you can set short name to “-” for subject Lunch or for Gym room.
- Check Help > Options > Exclude fake lessons while generating timetable.
- Click Ok.
And that’s all you need to do. Automatic timetable generator will just ignore those cards and treat them as if they are not part of the timetable.
Prime Timetable 5.0 + summer discount
Jun 30th

Dear timetablers,
In just 1 year we have released 3.0, 4.0, and now 5.0 release. We would like to thank you all for your support, and especially for spreading the word. Ever since the beginning of our journey, we’ve been promoting the concept of “enjoyable timetabling” and today Prime Timetable is used in more than 110 countries around the world! Here is what’s new in the latest 5.0 release:

Custom period intervals
The most requested feature is here. You can enter any period interval for any day/period (and class/teacher/room/subject), and appropriate cards will be resized and repositioned accordingly. Custom periods are logically and smartly grouped in the grid and can be easily filtered. Furthermore, you can add custom intervals inside the card by checking Help > Options > Show period intervals instead of numbers.
Special summer offer, up to 50% discount
It’s prime time to buy Prime Timetable for as low as $14/month in US and €14/month in Europe (prices are based on 5 years plan). Are we serious? You bet! Many have already taken advantage of this offer, so hurry up! Until August 1st, we are offering up to 50% discount for 2 or more years purchase. Use the slider on the plans and pricing page to choose your billing term and special discount. If you are an existing user and looking for upgrade, just choose Help > Purchase/Update.

New web server
Having an ever increasing number of schools using our services, we had to make sure that all teachers and students get their timetables timely and efficiently. The new web server means faster, more reliable, secure and efficient timetabling and so much more. And yes, you can download and start Prime Timetable in just 1 second now.
Desktop application
Desktop application is now available for both Basic and Premium plans. Choose Help > Options > Install Prime Timetable and the software will be installed on your computer, so when you start the application by clicking desktop icon it will automatically do the log in for you. Desktop version is available for both Mac OS X and Windows and we especially recommend using it on school computers with a slower Internet connection.

Web site redesign and other improvements
More than 20 new timetable examples are added from various countries around the world. There are lots of minor improvements and fixes that you have suggested, such as: setting 1 minute interval on the period form, the ability to print conflicts, the new context menu (use right mouse click on the card to edit lesson, access card designer, pin/unpin and clear), etc. Our help and manual has been updated to reflect the latest changes.
The web site has been redesigned in order to present our services more clearly and user friendly. If you are satisfied with our product, please share http://primetimetable.com link with other teachers, principals, principal assistants, and others. You can also use the new “Spread the word” section in the footer of every web page to like us on Facebook, share a link on Twitter, Google Plus or LinkedIn. Your help is much appreciated!
Enjoy the new release and use online user voice to suggest a feature or add new ideas that you would like to see in the Prime Timetable. Happy summer timetabling!
Special summer offer, up to 50% discount
Jun 24th
When is the perfect time to purchase a school scheduling software? When there is a discount, of course
. So you might want to check our special summer offer. Until August 1st, we are offering special discounts for long term service. For some countries special discounts are up to 50%, so hurry up!
If you already have an account, choose Help > Purchase and if you are new to Prime Timetable just click here. Once on Plans and Pricing page, choose Basic or Premium plan based on the size of your school and drag the year slider to choose the billing term and special discounts.

For example, in the US and Canada, the price for Basic plan is $25/month for 1 year billing period, but if you choose 5 years the price is down to only $14/month which is 47% discount!
Discounts are offered for 2 or more billing years, but we are also offering special discounts for periods less than a year, e.g. 6 months, and if that’s what you need just contact us.
This offer is valid until August October 1st. We hope you will make the best of it, and wish you enjoyable timetabling!
New Prime Timetable web server
Jun 19th
Having an ever increasing number of schools using our services, we had to make sure that all teachers and students get their timetables timely and efficiently. Therefore, we are very pleased to announce that the new Prime Timetable web server is at your service! In a nutshell, the new web server means a faster, more reliable, secure and efficient scheduling/timetabling, and so much more.

Download Prime Timetable in 1 second!
The new server is able to fully utilize fast Internet connection. In a number of cases, we have detected Prime Timetable being downloaded in just 1 second on the very first visit! With an average Internet connection, Prime Timetable starts in just a couple of seconds. Of course, every subsequent opening of Prime Timetable is immediate (the browser caches the application)! The new web server is physically located in Toronto, Canada, so Canadian and US schools may even notice slightly faster responses.
Reliable timetabling
With 99,99% guaranteed uptime by our hosting partner you can rest assured that your timetables are accessible everywhere and whenever students or teachers need them on Mac & PC, tablets, smartphones and mobiles. With our improved and automated daily backup system your data is safe, e.g. we can fully recover your timetable even if you delete it.
Thank you for your support
Thanks to your continuous support and promoting, we have been able to improve our services to a great extent. The new server is far more superior to the previous one in so many ways: it is faster, more reliable, has better uptime and download time and overall we hope it will serve you well. So, enjoy an even faster timetabling.
Custom periods for classes, subjects, teachers and rooms
Apr 24th
By a very popular demand, the ability to add different period intervals on specific day(s) and period(s) for specific class(es)/subject(s)/room(s) and teacher(s) is now available in the Prime Timetable. This unique timetabling feature will show up in all timetable views, both master and individual, and in extra views, too. Appropriate cards will be repositioned and resized according to specified intervals, so you can print highly flexible timetables. Before getting down to details, we would like to thank all of you who requested or voted for this feature in our online user voice (idea 1, idea 2, idea 3), and all of you who have sent us your timetables created in Microsoft Excel or similar software. Guess what? Your Excel timetabling days might be over… Read on.

Adding custom periods
In order to enter custom period interval(s) for specific day(s)/class(es)/subject(s)/room(s)/teacher(s) do the following:
- Click on a period you wish to modify and then click Add.
- Change period interval: start time and end time.
- Choose class, subject, room, or teacher custom period.
- Choose day(s)/class(es)/subject(s)/room(s)/teacher(s) where the new interval applies.
- Click Ok.
When you enter new custom period(s), appropriate cards will be resized and repositioned based on specified custom interval.
Editing and filtering custom periods
If a timetable has custom periods, the filters will appear above the periods grid where you can choose whether to show custom periods or not. If you check “Show custom periods”, all custom periods will be listed in the grid logically and smartly grouped, e.g. all periods with the same name and intervals will be grouped in a single row. You can filter custom periods by choosing specific day and/or class/subject/room/teacher. To edit (grouped) custom periods, select period row and click Edit.
Custom period intervals displayed on the cards
If you want to display custom intervals on the cards, do the following:
- Choose Help > Options > Show period intervals instead of numbers.
- Click Ok.
Start time will be displayed in the upper left corner and end time will be in the bottom left corner of the custom cards.
Dragging custom cards
When you drag a card, the card’s shadow changes its size and position according to default or custom periods below. Thus, you will know the size and the position of dragged card before it is even dropped. In case there is more than one custom period defined for a single card, the subject custom period will have the highest priority, followed by room, teacher and class custom period.
Printing timetable with custom periods
In the Prime Timetable what you see on the screen is what is going to be printed. So, when you are finished with custom periods and optionally card designer settings, just choose: Print > Print timetable view or Print > Print all individual timetables.
Automatic timetable generator and other recommendations
Although custom periods give you the ability to create extremely flexible timetables, there are a couple of things to keep in mind. We recommend that you create a valid timetable first, and then adjust custom period intervals. Currently, custom periods are not supported in your published timetables. Using custom periods you can put 2 or more cards on the same position. At the moment, these cards are considered as conflicts by automatic timetable generator. To overcome this limitation:
- Change one of the resource’s short name to “-”.
- Check Help > Options > Exclude fake lessons while generating timetable.
- Click Ok.
Conflicted cards are rotated by default, so you might want to disable rotating conflicts:
- Uncheck Help > Options > Rotate conflicts.
- Click Ok.
Give us feedback
Wow! We didn’t even get a chance to update our Help or write this blog post and custom periods are already heavily used by many timetablers. We are excited more than ever to see what you are going to create. As always, your feedback is very much appreciated. Online user voice is open for anyone who want to participate in shaping our software. All in all, we hope you will use this feature wisely and wish you a very happy timetable customization!
Automatic timetable generation – solving the unsolvable?
Feb 27th
Posted by danko in School scheduling/timetabling software
If you’ve searched the web for “school scheduling/timetabling software”, “automatic timetable generator”, “school timetable generation”, etc. you probably noticed that there are none of the “big names”, such as Apple, Microsoft, Google, etc. in the search results. Furthermore, school scheduling software cannot be found as part of any larger software package for schools. Neither does it exist in various schedulers, calendars, spreadsheets, etc. Why?
Automatic timetable generation is complicated!
It is complicated to make a machine allocate lessons that certain lecturers are to teach to certain groups of students in certain rooms and certain periods of time… and that all works out well in the end. It is that complicated that, generally, there is no solution. It is that complicated that only enthusiasts working in the field of artificial intelligence have been trying to find a solution to this problem.
PATAT conference to the rescue?
In 1995, the 1st International Conference for the Practice and Theory of Automated Timetabling (PATAT) was held in Napier University, Edinburgh, UK. It was the founding conference with a new one being held every third year and later every other year. So far there has been eight conferences and the ninth one will be held at Son, Norway, from 28th to 31st August, 2012. In order to better understand the complexity of the problem of “computer-aided timetable generation”, you may take a look at the official website of the ninth conference at www.patat2012.com. However, not even a series of conferences presenting the highest academic names from all over the world was enough to cope with such a difficult problem.
International Timetabling Competition
In order to intensify research in this field an “International Timetabling Competition” was organized in 2002 and held in 2003. The competition was sponsored by PATAT who offered prizes for the winners. From that year on, the competition is traditionally organized every four years. Currently, ITC2011 is being held, and since it is open for all, anyone can submit their work. In the meantime, the prizes have become even more appealing
.
Euclid’s Fifth Postulate of Discrete Mathematics
Even though thousands of different experts have been dealing with the problem of automatic timetabling generation for 17 years, the problem remains unsolved. The only mathematically proven thing is the proof that the problem is unsolvable! Over the past couple of decades, the writer of this blog post has witnessed numerous unsuccessful attempts of creating an exact algorithm for school timetable generation. There are also anecdotes in which a programming teachers would give their ambitious students this problem as homework offering the highest grade as a prize until the end of their schooling. On various forums people desperately search for ”logical model for timetable generation”, “Help! I have to write a timetabling program for tomorrow”… This much resembles an unsuccessful 2000-year-old attempt to prove the parallel postulate using Euclid’s first four postulates which was “proven” by proving it can’t be proven.
The question is why organize all the conferences and competitions if the problem is unsolvable? What are we at Prime Timetable actually doing? Are we trying to solve the unsolvable? Have we succeeded? More about that and the parallels with “parallel postulate” in the future posts…
