Getting Started

MacOS, Windows, iOS, Linux, tablet, phone, smartphone, iPad, iPhone, Android, Chromebook, primary, secondary

Overview

Prime Timetable is a school scheduling software designed for automatic and manual timetabling on any device. Trusted in over 120 countries worldwide, it efficiently schedules elementary, middle and high schools, universities and similar institutions.

Video tutorial: Introduction

Check release blog posts for the latest updates. The full features list is available on this web page.

pdf,localization,Afrikaans,Albanian,Amharic,Arabic,Armenian,Assamese,Aymara,Azerbaijani,Bambara,Basque,Belarusian,Bengali,Bhojpuri,Bosnian,Bulgarian,Catalan,Cebuano,Chichewa,Chinese (Simplified),Chinese (Traditional),Corsican,Croatian,Czech,Danish,Dhivehi,Dogri,Dutch,English,Esperanto,Estonian,Ewe,Filipino,Finnish,check,French,Frisian,Galician,Georgian,German,Greek,Guarani,Gujarati,Haitian Creole,Hausa,Hawaiian,Hebrew,Hindi,Hmong,Hungarian,Icelandic,Igbo,Ilocano,Indonesian,Irish,Italian,Japanese,Javanese,Kannada,Kazakh,Khmer,Kinyarwanda,Konkani,Korean,Krio,Kurdish (Kurmanji),Kurdish (Sorani),Kyrgyz,Lao,Latin,Latvian,Lingala,Lithuanian,Luganda,Luxembourgish,Macedonian,Maithili,Malagasy,Malay,Malayalam,Maltese,Maori,Marathi,Meiteilon (Manipuri),Mizo,Mongolian,Myanmar (Burmese),Nepali,Norwegian,Odia (Oriya),Oromo,Pashto,Persian,Polish,Portuguese,Punjabi,Quechua,Romanian,Russian,Samoan,Sanskrit,Scots Gaelic,Sepedi,Serbian,Sesotho,Shona,Sindhi,Sinhala,Slovak,Slovenian,Somali,Spanish,Sundanese,Swahili,Swedish,Tajik,Tamil,Tatar,Telugu,Thai,Tigrinya,Tsonga,Turkish,Turkmen,Twi,Ukrainian,Urdu,Uyghur,Uzbek,Vietnamese,Welsh,Xhosa,Yiddish,Yoruba,Zulu

tips, tricks, introduction, guidance, cheat sheets

Video Tutorials

Watch our popular "Getting Started" tutorials with 150K+ views - equivalent to a week-long training seminar, yet condensed into just a few minutes for quick, helpful insight. Subscribe to our YouTube channel for the latest free tutorials.

basic,terms,glossary,dictionary

Interpret the following terms to suit your organization, e.g. use grade instead of class or course instead of subject.

School
Institution designed to facilitate student attendance at supervised activities
Subject / Course
An academic discipline like Math, English, Biology but also recess, lunch, and non-class activities like teacher meetings
Room
The location where school activities occur, like biology room, history room, gym, but also dining room and reception hall
Teacher / Educator / Professor / Instructor
An individual guiding others in the learning process
Student
An individual attending an educational institution
Class / Grade
A group of students identified by a common grade level, e.g. Grade 5 or Year 8
Group
A subset of a class attending a specific activity, such as English, French or Italian groups
Resource
Refers to Class, Teacher or Room
Period / Time slot
A block of time allocated for activities
Activity
A structured period of time for a school activity, such as lesson, prep-time, lunch or recess
Card
A visual representation of an activity, e.g. a teacher having 5 lessons of Math which corresponds to 5 cards
Timetable / Schedule
A table displaying cards that represent scheduled activities
Unscheduled card
A card waiting to be scheduled, temporarily placed outside the timetable
Pinned card
A card locked to a specific period, preventing rescheduling during timetable improvement
Timetable view
Master or individual view displaying activities, like class, teacher, room master view or Grade 8 view
Timetabler
A person creating a school timetable
Conflict / Clash
Multiple cards occupying the same position or overlapping
Gap / Pause / Window
An empty period between school activities
Constraint
A requirement that should be met in the final timetable, e.g. gaps forbidden for all classes
Time constraint
Specifying whether a school resource or activity is forbidden, unwanted or mandatory in a certain period
Manual timetabling
Working on timetable by manually dragging cards
Automatic timetable generator
An algorithm improving a school timetable based on entered data and constraints
Timetable validation
Identifying errors and warnings if the timetable is not valid
School scheduling/timetabling software
Software designed to simplify and automate the scheduling/timetabling process

Account

account,trial

Sign Up

To access the software, follow these steps:

  1. Click Sign Up on the home page
  2. Select the Free plan
  3. Enter your email and password, and optionally, provide additional information about the school
  4. Click Start my free month

A new timetable will be opened, allowing you to begin importing or entering your own data.

login,sign in,log out,logout,sign out

Log In

  1. Click Log In on the home page
  2. Enter your email and password
  3. Click Log In

forget,forgot,lost,account,retrieve

  1. Go to the Forgot Password page
  2. Enter your email and click Send code
  3. An email containing a code (random alphanumeric string) will be sent to you
  4. Copy and paste the code from the email and enter the new password
  5. Click Change password

A window will open where you can log in using the new password.

  1. Click in the top right corner
  2. Click Log out

Your session will end, and the home page will appear.

user,account

Profile

To update your profile in the app:

  1. Click in the top right corner and then My Profile
  2. Set your email, password, first name and last name
  3. Click Edit

renew

If your subscription is about to expire or the evaluation period is over:

  1. Go to Plans and Pricing page
  2. Select Basic (up to 40 teachers) or Premium plan (up to 100 teachers)
  3. Optionally, choose a billing term by dragging the year slider to take advantage of special discounts
  4. If you are not logged in, enter your email and password
  5. Click Buy Now

Contact us for alternative payment methods or if your school/campus requires a plan that supports more than 100 teachers.

  1. Click in the top right corner
  2. Click Purchase and then select the Free plan
  3. Click Add more info in "Step 2. School Account"
  4. Enter your school name, address, contact name, phone and other info
  5. Click Continue Evaluation to save changes
If there is more than one account for your school, contact us to merge them.

zip, backup

  1. Click in the top right corner, go to My Profile and expand
  2. Click Create Archive
  3. Click Download Now

The created archive will be available for download within the next 24 hours and contains your school info, timetables and users.

delete,gdpr,terminate,unsubscribe,deactivate,cancel,cancellation request,suspension,termination,disposal,erase

  1. Click in the top right corner, go to My Profile and expand
  2. Click Delete school account and confirm

The whole account including timetables, users and all related school data will be deleted in the next two weeks. Note that only an Owner can delete a school account.

Application

UI, interface, layout

Intro

To start the app on any device:

  1. Open a browser and navigate to https://primetimetable.com
  2. Log In if you already have an account, or Sign Up if you are a new user

The app consists of a timetable view and top/bottom boards.

The top board contains owl icon which opens the main menu. Next to it is a quick toolbar letting you save changes, access history or open timetable. Timetable name is at the center, while bell and profile icons are in the right corner.

The bottom board contains card details, play icon at the center and marker, pin, sponge and zoom icons in the right corner.

Application layout

A screenshot of K-12 school with opened main menu and pop-ups showing the list of subjects and notifications

MacOS, Windows, iOS, Linux, tablet, phone, smartphone, iPad, iPhone, Android, Chromebook, laptop

System Requirements

windows,mac,ios,ipad,iphone,android,windows phone,chromebook,linux

To create a quick and easy shortcut, bookmark https://primetimetable.com/#app while in the browser. For even faster access, consider adding a desktop icon. For instance, in the latest Chrome browser:

  • Click the Install Prime Timetable icon in the URL bar
  • Alternatively, choose Menu > Save and share > Create shortcut... > Create

This will add the owl icon to your desktop. You can customize the shortcut to launch the app in full screen mode, similar to other desktop apps. For other browsers, learn how to create a desktop shortcut to a website. On tablets and phones, use the add to the homescreen feature.

Timetable

Create a New Timetable

  1. Choose Open > New Timetable
  2. Enter the name of the timetable and description
  3. Click Ok

Open Timetable

  1. Click or choose Open > Open Timetable
  2. Select a timetable from the list
  3. Click Open

search,find

  1. Click or choose Open > Open Timetable
  2. Choose All timetables, Recent, Past year, Published or other
  3. Optionally, choose a tag to further filter timetables (available only if you have previously assigned tags to the timetable)

The default filter is Recent, showing timetables modified in the last 3 months or up to 3 older timetables.

The URL is updated while changing filters, allowing you to copy/paste it and send it to others to filter/open only a specific set of timetables.

rename,example

  1. Click or choose Open > Open Timetable
  2. Select a timetable from the list and click Edit
  3. Change the name, description and/or tags
  4. Click Ok
  1. Choose Open > Open Examples
  2. Select an example from the list
  3. Click Open

Examples include:

  • K-12, PreK-8 and K-5 schools
  • Elementary/Primary, Middle and High/Secondary schools
  • International and Art schools
  • Schools from the US, Canada, UK, Australia, Europe, Asia, Africa, etc.

Open from File

To open a timetable from a previously saved file:

  1. Choose Open > Open from File
  2. Use Choose File to locate the file on your device
  3. Click Open
  4. To keep the timetable on your list, click

Save Changes

  1. Click to save changes
  2. All changes will be synchronized and merged across any device you or your colleagues might be using

Create a Copy of Timetable

copy timetable,make copy,copy schedule

  1. Choose Save as > Copy of Timetable
  2. Enter the name of the timetable and description
  3. Click Ok

Delete/Restore Timetable

  1. Click or choose Open > Open Timetable
  2. Select a timetable from the list
  3. Click Delete

restore,recover,undone,backup

  1. Click or choose Open > Open Timetable
  2. Select Recently deleted
  3. Select the timetable(s) from the list
  4. Click Undelete
After 1 month of inactivity, previously deleted timetables are permanently removed.

Merge Timetables

  1. Open the base timetable
  2. Choose Open > Merge timetables
  3. Select the timetable to merge with and click Merge

If there is already a day, subject, room, teacher, class, group or view with the same name in the base timetable, it will be used as it is; otherwise, it will be added. Periods are going to be merged based on entered start and end times. Activities, clips and marks from the selected timetable will be added to the base timetable.

Merge enables working on separate timetables which can be merged later, useful in the following cases:

  • Separate timetable for lower and upper schools; merge to find any conflicts for shared teachers and rooms
  • Separate timetable for morning and afternoon shifts; merge to create all-in-one timetable
  • Work on n-week timetables separately; merge to create the final e.g. month timetable
  • Any other case with too many days/periods, e.g. too many 5 or 10 minutes periods, where you would want to split a large timetable into several smaller ones and later merge them

Alternatively, merging timetables can be avoided by working on an all-in-one timetable and creating specific views for lower/upper school, morning/afternoon shifts and similar.

Import

Import Resources

To import data from other software using copy/paste, follow these steps:

  1. Open the application where you have a list of resources, such as Excel, Sheets, Word, Docs or Notepad
  2. Select the resources you wish to import, right-click the selection and choose Copy
  3. In Prime Timetable, go to the Import menu and choose the resource type you want to import (e.g. Import > Teachers)
  4. Right-click in the text field provided for import and choose Paste
  5. Click Import

Video tutorial: How to import data

In the Import Sheets document, each sheet provides an example of how to import days, periods, subjects, rooms, teachers, classes/groups, students and activities. For successful import, ensure resources are separated by rows (or new lines) and properties are separated by columns (or TAB character).

A resource with an existing name will not be imported again to prevent duplication.

To import days:

  • Choose Import > Days and follow instructions in the Import document, specifically Days sheet

The imported days will be inserted after the last selected day.

Name Short
Monday Mon
Tuesday Tue
Wednesday Wed
Thursday Thu
Friday Fri

Columns when importing days

To import periods:

  • Choose Import > Periods and follow instructions in the Import document, specifically Periods sheet

Imported periods are inserted/merged based on period intervals.

Start time End time Name Short
08:25 09:15
09:20 10:15
10:30 11:20
11:25 12:15
12:15 13:10 Lunch Lunch
13:10 14:00
14:05 14:55
15:10 16:00
16:05 17:00 After school After

Columns when importing periods

  • Choose Import > Subjects
  • Follow instructions in the Import document, specifically the Subjects sheet

You can choose to import only the Name column and the short name and color will be auto-generated with default values for remaining columns. Alternatively, you can import as many columns as you need, as shown in Advanced import document and the example below.

Name Short Color Tags Notes
?
Custom ID
?
Difficulty
Taught more than once a day Insert day off if taught 2 times per cycle Insert day off if taught 3 times per cycle Exclude from statistics Exclude from the generator and notifications
English Eng #a52a00 Language English language EngID +
French Fre #c4b4ff Language French language FrenchID
Science Sci #004f13 STEM ScienceID 2 + +
Math Mat #00305e STEM MathID 2 + +
Tech TW #00008b STEM TechID
Art Art #4b0082 Art ArtID
Music Mus #593c00 Art MusicID
Physical education PE #800022 PE PeID 0
Lunch Lu #ff6820 LunchID 0 + +

Columns when importing subjects

  • Choose Import > Rooms
  • Follow instructions in the Import document, specifically the Rooms sheet

You can choose to import only the Name column and the short name and color will be auto-generated with default values for remaining columns. Alternatively, you can import as many columns as you need, as shown in Advanced import document and the example below.

Name Short Color Tags Notes
?
Custom ID
?
Capacity 
Building
Room 101 101 #a52a00 1st floor R101 Main
Room 102 102 #c4b4ff 1st floor R102 Main
Room 201 201 #004f13 2nd floor R201 Main
Room 202 202 #00305e 2nd floor R202 Main
Room 203 203 #00008b 2nd floor R203 Main
Room 204 204 #4b0082 2nd floor R204 Main
Sport Hall 1 SH1 #593c00 SH1 60
Sport Hall 2 SH2 #800022 N/A on Friday SH2 30
Technical Works TW #ff6820 TW 30 Main

Columns when importing rooms

  • Choose Import > Teachers
  • Follow instructions in the Import document, specifically the Teachers sheet

You can choose to import only the Name column and the short name and color will be auto-generated with default values for remaining columns. Alternatively, you can import as many columns as you need, as shown in Advanced import document and the example below.

Name Short Color Tags Notes
?
Custom ID
?
Max. activities in a row
?
Max. gaps per cycle
?
Max. gaps per day
?
Min. activities to allow gaps
?
Max. deviation from average daily load
?
Min. activities per day
?
Max. activities per day
?
Max. moves between buildings
Count all moves
Emma Willard Emma #a52a00 Language Emma 4 3 1 2 2 2 6 1 +
Jaime Escalante Jaime #c4b4ff STEM Jaime 4 2 2 6
Maya Angelou Maya #004f13 STEM N/A on Friday Maya 4 2 2 6
Clara Barton Clara #00305e Art Clara 4 2 2 6

Columns when importing teachers

  • Choose Import > Classes
  • Follow instructions in the Import document, specifically Classes/Groups sheet

You can choose to import only the Name column and the short name and color will be auto-generated with default values for remaining columns. Alternatively, you can import as many columns as you need, as shown in Advanced import document and the example below.

Name Short Color Tags Notes
?
Custom ID
Groups Start on 1st period Forbid gaps Groups finish at the same time
?
Allowed difference between max. and min. daily activities
5A 5a #a52a00 5th 5A Boys,Girls|Group 1,Group 2,Group 3 + + + 2
5B 5b #c4b4ff 5th 5B + + + 2
7A 7a #004f13 7th 7A French,German|Art,Chemistry,Music + + 2
7B 7b #004f13 7th 7B + + 2

Columns when importing classes and their groups

To import students:

Name Short Groups
Alice Toole Alice
Allen Elliott Allen
Andy Welch Andy Group 1, Boys
Billy Austin Billy Group 2, Girls
Brian Sternberg Brian Group 1, Girls
Bruce Hayes Bruce Group 1, Boys
Donna Gordon Donna Group 1, Boys
Eric Reeves Eric Group 1, Girls
Eva Simon Eva

Columns when importing students

  1. Go to the Import menu and select the type of resource you want to import, e.g. choose Import > Teachers
  2. Copy and paste the columns you need from the spreadsheet app based on the Advanced import document
  3. Hold CtrlCmd while clicking Import

By doing this, the provided columns/properties will overwrite the corresponding properties in existing resources starting from the last selected item in the grid. This method allows for a quick update of specific properties, such as day names, period names/intervals, or specific constraints for multiple resources.

Import Activities

To import activities and optionally the entire timetable using copy/paste:

  • Choose Import > Activities
  • Follow the instructions provided in the Import document, specifically the Activities sheet
  • Watch the video tutorial titled How to import data for a visual guide

Note: Resources with non-existing names will be added during the import. Use a comma as a delimiter when there are multiple teachers, classes/groups or rooms involved in an activity.

Subject Teacher(s) Class(es) Group(s) Count Length Desired room(s) Alternative room(s)
Math Roberta 7A 3 1 Room 1 Room 2, Room 3
English {Eng} Maya, Dan 8A, 7A G1, G2 1 2 Room 4 Room 1, Room 2

Columns when importing activities

The short name is autogenerated based on the imported name. Alternatively, you can specify it the first time that item appears. For example, "English {Eng}" will add a new subject called "English" and a short name will be set to "Eng".

  1. Choose Import > Activities
  2. Paste importing data from the spreadsheet app
  3. Hold CtrlCmd while clicking Import

While importing activities, if there is no existing resource with a custom id or short name equal to the specified name in the imported row, then a new resource will be added with that name, and the short name and color are auto-generated.

  • Choose Import > Activities
  • Follow instructions in the Advanced import document, specifically Activities + Clips sheet
  • Cards from the rows with the same Clips column value will be clipped together while importing activities.

Data

Basics

Resources are displayed in grids allowing you to manage data efficiently.

order,move up,move down,alphabetic,ascending,descending

  1. Choose Manage in the main menu
  2. Select the resource type you want to manage
  3. Use buttons on the right side of the grid

Adding a resource:

  • Click Add
  • Enter the name and short name
  • Click Add to insert resource after the last selected item

Editting a resource:

  • Click Edit
  • Modify the currently selected item in the grid
  • Click Edit

Copying a resource:

  • Click Copy to create an independent duplicate of the selected item
  • Optionally, modify the copied item
  • Click Add

Deleting a resource:

  • Select the item(s) in the grid
  • Click Delete (the app warns if related data may be affected)

Remember to exercise caution when deleting resources, as it may impact associated data. For example, deleting a teacher will also delete all related activities. Therefore, it's advisable to delete or modify related data prior to deleting a resource. The undo option is available in case of errors.

Sorting data:

  1. Choose Manage > [Resource Type], e.g. Manage > Teachers
  2. Click the desired column name in the grid header, for instance, to sort resources by name, click the Name column
  3. Click the column again to reverse the order

Reordering items:

  1. Select the item(s) in the grid
  2. Use the up and down arrows in the bottom right corner of the grid
    • Alternatively, use the keyboard shortcut: hold Alt and press

Selecting single items:

  • Click the desired row
  • Start typing the first letters of the name
  • Use keys like PgUp PgDn Home End for navigation

Selecting multiple items:

  • Hold down CtrlCmd and click the desired rows
  • Click the start row, hold down Shift and then click the end row for a consecutive group
  • Hold down CtrlCmd and press A to select all items

After selection, use the up and down arrows in the bottom right corner of the grid for reordering or click Delete.

The multi-selector is a powerful tool for selecting resources, particularly when assigning activities to classes/groups, teachers or rooms, or when copying constraints to specific set of resources. Here's how to use it:

  1. Optionally, filter resources in the selection list:
    • For better organization and especially in larger schools, consider adding tags, to filter resources more efficiently
    • The multi-selector retains the selected tag for future use
    • Resize the window to make lists more accessible
  2. Click an item in the source list to select it, or click an item in the selection list to remove it
    • Alternatively, use Select all and Remove all when you want to select or remove all resources
  3. Click Ok to confirm the selection

The multi-selector is also accessible using the keyboard:

  • Use Tab to set focus on the source or selection list
  • Type the first letters to find a resource or navigate with keys like PgUp PgDn Home and End
  • Press Space to (de)select and Enter to confirm the selection
  • Hold CtrlCmd and press A or X to select/remove all
  • Hold Alt while pressing or to reorder selection

info,title,change

Timetable Info

To update timetable info, follow these steps:

  1. Choose Open > Timetable Info (or click the timetable name)
  2. Update timetable name and description, school name and school year (e.g. "2023/2024")
  3. Click Ok
The school name and school year are displayed as a title and subtitle on the published page and when printing.

Expand to align the timetable with your school's branding , set tags or copy the unique timetable identifier.

rotated,rotation,day A,day B,cycle,rotating,6 day,5 day,two-week

Days

To configure your timetable's days:

  1. Choose Manage > Days (or click the day name in the view)
  2. Set the number of days in the timetable cycle by choosing the desired value in the combo box above the displayed grid:
    • Set 5 days for a 1-week cycle or opt for 6 days if you are scheduling Saturdays
    • Choose 10 days for a 2-week timetable, 15 days for a 3-week timetable and so on
  3. Click Add, Edit and Delete to manage days
  4. Each day is identified by a name and a short name for easy reference
  5. Alternatively, explore other approaches, e.g.:
    • Create separate timetables for each week or month which later can be merged into all-in-one timetable
    • Set only one or two days, like "Day A" and "Day B," suitable for rotating schedules
  • Utilize horizontal zoom to focus on specific day(s)
  • Consider breaking down the timetable into smaller ones, each containing a subset of days and/or periods; optionally, merge them later into all-in-one timetable
  • Create customized views where certain days and/or periods are excluded
  1. Right-click the day name in the view
  2. Choose Copy from the context menu
  3. Right-click the target day
  4. Choose Paste from the context menu

For additional information, refer to the section on copying cards.

There are two ways to switch days:

  1. Reorder and rename:
    • Choose Manage > Days
    • Use arrows in the bottom right corner of the grid to reorder days and related cards will follow
    • After reordering, select the reordered days and click Edit to rename them
  2. Add temporary day:
    • Choose Manage > Days and click Add to create a new day
    • In the view, click the first day name while holding CtrlCmd to select all cards on the first day
    • Drag cards to the newly created day
    • Click the second day name while holding CtrlCmd to select all cards on the second day
    • Drag cards to the first day
    • Click the newly created day name while holding CtrlCmd
    • Drag the cards to the second day
    • In the view, click the newly created day and then click Delete to remove the temporarily created day

Yes, you can rename a day to a specific date, for example "9/5/2024", instead of using traditional day names like "Monday". Additionally, you have the option to import or merge days using dates for convenience.

Here are some options to consider:

  • Add more days, for example, "Day A" representing the 1st semester and "Day B" representing the 2nd semester. You can copy/paste cards from one day to another and then make necessary changes.
  • Similar to above but with the addition of creating custom views for each semestar/term. For instance, create a "Semestar 1" view and exclude days that are not valid for the 1st semestar. Create a 'Semestar 2' view and exclude days not valid for the 2nd semester. This allows you to work on one timetable but have all views in one document.
  • Instead of creating an all-in-one timetable, create one timetable for the first semester/term and then create a copy to modify it for the second semester/term. Later, you can merge timetables if needed.

There are two ways to create a two-week timetable. For majority of cases it is perfectly fine to create one timetable and set 10 days for the number of days in the timetable cycle. For instance, you can copy activities from one day to another, you can create subjects called "Math Week 1" and "Math Week 2", add related activities and use the red marker to forbid time slots for these subjects in the non-related weeks and you can make any manual adjustments for specific days.

The other option is to create two separate weekly timetables and optionally merge them later. For example, let's assume that 4 days in a week have exactly the same timetable and there are some differences only on Friday. In this scenario we have two types of activities:

  • (A) Activities that are held the same number of times in both weeks
  • (B) Activities that are held over one week but not the other.

All other variations boil down to these (A) and (B) types. For instance, there could be an activity occurring 1.5 times per week, which means there are two activities in the first week and one in the second. In that case one activity is type (A) and the other (0.5) is type (B).

Here is the procedure of scheduling such two-week timetables:

  1. Create a new timetable with 5 days
  2. Add all type (A) activities (choose Manage > Activities and click Add)
  3. Forbid Friday: pick the red marker and click the Friday
  4. Click to generate timetable
  5. Pin all cards: pick Pin tool and click in the top right corner of the timetable
  6. Pick Red marker and click the top right corner to forbid all time slots, then click Friday to free time slots on that day
  7. Save two copies of this timetable: "Week 1" and "Week 2" by choosing Save As > Copy of Timetable
  8. For each timetable add type (B) activities and generate the timetable again.

Of course, there are many more variations but the procedure is similar.

Periods

time slot,time,times,bell

To configure your timetable's periods, follow these steps:

  1. Choose Manage > Periods (or click the period name in the view)
  2. Set the number of periods in a day by selecting the desired value in the combo box above the displayed grid

    If you are scheduling breaks, lunch, after-school activities or similar, increase the number of periods accordingly.

  3. Click Add, Edit and Delete to manage periods
  4. For each period, specify the start/end time (using the 24-hour clock) and optionally add a name
  1. Choose Help > Options
  2. Set Period format to one of the following:
    • Name or period number
    • Name or 12-hour clock
    • Name or 24-hour clock
    • Period number
    • 12-hour clock
    • 24-hour clock

Here are some options to consider:

  1. Set a detailed period name

    Instead of displaying an interval, you might set a period name as "08:30 - 09:00 (Friday: 08:40 - 09:10)". Alternatively, use names like P1, P2, P3 and put additional info into the legend, e.g. P1: 08:30 - 09:00 (Friday: 08:40 - 09:10), P2: 09:15 - 09:45, etc.

  2. Work with 15-minute or 10-minute schedules

    Find the least common denominator, e.g. if some activities last 45 minutes and others 15 minutes, add periods with 15-minute intervals and choose Triple length when adding an activity that lasts 45 minutes (3 * 15min = 45min).

  3. Use custom periods to handle exceptions

    Custom periods let you create flexible schedules where card interval depends on specific resource/day and it's displayed within the cards. Also, custom periods handle scenarios when only specific class(es) have different period intervals on all days.

  4. Create a separate timetable for specific days

    For day(s) with different period intervals create a copy of timetable and then make necessary changes.

  5. Create your own timetable views

    Creating your own views enables scheduling, publishing, exporting, customizing and printing specific resources, days and periods. For instance, create views and exclude specific days/periods.

  6. Overwrite period intervals before printing

    Ignore differences until you want to print different day(s) and then overwrite period intervals with the list kept in the spreadsheet app. Thanks to history you can undo overwrites after printing.

  1. Choose Manage > Periods and set the maximum number of periods
  2. Use Forbidden position marker to forbid positions that are not allowed
  3. Additionally, create your own view, e.g. "Lower grades view", and exclude forbidden periods
  1. Multi-select all periods except one and click Delete
  2. Click Edit and set start time to e.g. 08:00 and end time to 08:15
  3. From the list above the periods grid, select the number of periods you need

Alternatively, import/overwrite periods from the spreadsheet app using copy/paste.

Custom Periods

Period intervals might vary across classes, e.g. when scheduling both lower and higher grades in one timetable. If you don't want to work with a load of 15, 10 or even 5 minute period intervals to accomodate differences, you might consider using custom periods. In order to add a custom period:

  1. Choose Manage > Periods
  2. Select a default period to link a custom interval with and then click Add
  3. Set the start/end time and expand to choose class, teacher, room or subject custom period
  4. Select Drag related cards to specified interval action
  5. Choose resources/days that custom interval applies to and click Add
  6. Choose Help > Options and set Period format to e.g. 12-hour clock or 24-hour clock

Video tutorial: How to use custom periods

When custom period(s) are added, related cards will be resized and repositioned based on the specified custom interval and its default period.

When you drag a card, the card's shadow changes its length and position according to default and custom periods below. Thus, you will know exactly where to drop the card. Also, filters will appear above the periods grid if a timetable has custom periods. Choose a specific resource/day to filter custom periods.

The generator and notifications "understand" only default periods. Therefore, there may be instances where conflicts related to custom periods are inaccurately reported or overlooked.

Shorter cards than related default period interval

If two or more cards are placed on custom periods which are linked to the same default period, these cards will be listed as conflicts regardless of their (custom) period intervals. For instance, if there are two custom cards in one default period (09:00 - 10:00) from 09:00 - 09:30 and 09:30 - 10:00, they are considered to be on the same default period and reported as a conflict. Here are some options to resolve that:

  • Pin cards to resolve conflict
  • Ignore rotation of these cards because rotating conflicts is disabled by default in the published web page or choose Help > Options, expand and uncheck Rotate conflicted cards
  • Add custom period with an interval you need but linked to default period where there are no cards, e.g. lunch, then place the conflicted card there, and the app will not recognize cards as conflicts because they are related to different default periods
  • Try using default periods with reduced period intervals, e.g. 15-minute, 10-minute or even 5-minute period intervals, instead of custom periods.

Longer cards than related default period interval

A conflict when a "custom" card overlaps a card placed in another default period won't be reported, so you need to manually (e.g. visually) check whether such conflicts exist in your timetable.

It's easiest to just replace default periods with custom periods only in specified classes and their related individual views:

  1. Choose Manage > Periods
  2. Select a default period to link a custom interval with and then click Add
  3. Set the start/end time, expand and choose class custom period
  4. Choose Show custom period instead of default in the related individual views action
  5. Select classes that custom interval applies to and click Add

For instance, the first period in Grade 6A starts at 08:25, while in Grade 12 IB starts at 08:15 in the same timetable.

  • Select custom period(s)
  • Use up and down arrows in the bottom right corner of the grid
  • Set custom period name in the following format: "!9:15-9:45" (without quotes)

Cards on custom periods are resized and positioned based on the related default period only, without taking into account potentially different intervals of nearby periods or gaps between them in case custom periods are stretching over them. In the K-5 example, all default periods are 30 minutes and with no gaps between them, so custom periods are properly positioned and there is no need for further adjusting.

Basically, it's much easier if you can have identical surrounding default period intervals and no gaps between them. Otherwise, you might need to adjust period intervals to accommodate for potential gaps or differences between these default period intervals. Note that you can put any custom period interval, e.g. 10:30-11:30, but set a different period name to display whatever you need inside the card, e.g. "!10:45-11:20". This way, you can fine-tune the size and position of cards even in scenarios when custom periods are not designed to work seamlessly.

Subjects

course,courses,edit subject,edit course

  1. Choose Manage > Subjects
  2. Click Add, Edit, Delete and Copy to manage subjects
  3. For each subject, specify a Name (e.g. "Math"), Short name (e.g. "Ma") and Color
    • Optionally, set Difficulty, check or uncheck Taught more than once per day, set tags, notes and more
  1. Switch to the subject master view
  2. Use Forbidden position marker to draw forbidden positions

If you want to forbid positions only for a specific subject and class, create a new "combined" subject e.g. "7A Math" and then switch to the subject master view and forbid positions for this subject. After that you will want to use the newly created subject when adding/editing related activities.

Difficulty can be set to Low, Medium or High and the generator will try to avoid scheduling too many difficult or too many easy subjects per day. Otherwise, notifications will show adequate warnings.

Set difficulty to Low for each subject if you want to ignore all related notifications, e.g.:

  1. Choose Manage > Subjects, select the subject and click Edit
  2. Expand and set difficulty to Low
  3. Click Copy to then Select all and confirm by clicking Ok and subsequently Edit
  1. Choose Manage > Subjects, select the subject and click Edit
  2. Expand and set constraints to desired values
  3. Optionally, click Copy to to apply the same constraints to other subjects
  4. Click Edit

If Taught more than once per day is unchecked, scheduling the same subject for a class more than once a day will be reported as an error. For example, scheduling two English cards on Monday for class 5A will result in an error. However, if there are 10 English cards for 5A in a 1-week timetable, errors will not be displayed because there are more cards than days in a cycle, making it impossible to fix these errors. Otherwise, if this option is checked, placing a subject's card more than once in a day will never be reported as an error. Also, notification won't show up if the same subject is taught in different class groups.

If the Insert day off if taught 2 times per cycle option is checked, the subject will not be scheduled on subsequent days. For instance, having the subject on Monday and Tuesday will trigger an error notification.

In case that Insert day off if taught 3 times per cycle is checked, having the subject on Monday, Tuesday and Wednesday will cause error notification for a specific class, whereas Monday, Tuesday and Thursday would be considered valid.

If you intend to schedule English activities involving different classes or groups, it's advisable to add only one subject named "English" or something similar, such as "English 5 + 6". Afterward, add an English activity that includes more classes/groups.

Alternatively, you can add several different activities using different subjects and then clip related cards enabling them to be scheduled or dragged together.

  1. Choose Manage > Subjects, select the subject and click Edit
  2. Expand
  3. Check the Exclude from statistics option
  4. Click Edit

Activities associated with subjects marked as excluded from statistics will not be factored into the generated statistics. This is particularly useful for disregarding non-teaching activities like lunch, breaks, recess, teacher meetings, preparation time, duty, assembly, after-school activities (e.g. study hall, pack-up) or similar. Excluded subjects are displayed in italic font for easy identification.

  1. Choose Manage > Subjects, select the subject and click Edit
  2. Expand
  3. Check Exclude from the generator and notifications
  4. Click Edit

This option is useful for non-teaching activities like teacher meeting, preparation time, duty, lunch, etc., where you may want to avoid affecting teacher/class load considerations such as maximum activities in a row, maximum/minimum activities per day, etc. It also helps when dealing with numerous "desired conflicts", such as scheduling Physical Education (PE) in the Gym. You can resolve these conflicts by merging or pinning conflicted cards or by excluding the related subject from the generator and notifications.

For better optimization, consider forbidding time slots where ignored cards are placed to prevent the generator from utilizing them for regular cards or counting them as gaps. Ignored subjects are visually marked in the grid by underlining, while related cards appear transparent and italicized.

classroom,classrooms

Rooms

  1. Choose Manage > Rooms
  2. Click Add, Edit, Delete and Copy to manage rooms
  3. For each room, provide the Name (e.g. "Physics lab", "Bio lab", "Playground", "Meeting room"), Short name and Color
    • Optionally, set Capacity, Building name, tags, notes and more
  1. Switch to the room master view
  2. Use Red marker to draw forbidden positions

Room capacity represents the maximum student seat number and can be used for optimizing room usage for students:

  1. Choose Manage > Rooms, select room and click Edit
  2. Expand
  3. Set capacity to the desired value
  4. Optionally, use Copy to to copy the capacity value to other rooms
  5. Click Edit to confirm

Rooms can be filtered based on the desired capacity. This allows you to select the appropriate desired and alternative rooms when adding activities.

  1. Choose Manage > Rooms, select the room and click Edit
  2. Expand
  3. Set building name
  4. Optionally, click Copy to to copy the building name to other rooms
  5. Click Edit to confirm

Rooms can be filtered based on the desired building name. This allows you to select the appropriate desired and alternative rooms when adding activities. Furthermore, optimizing teacher moves between buildings is possible by setting related teacher constraints.

staff,educator,professor,part time

Teachers

  1. Choose Manage > Teachers
  2. Click Add, Edit, Delete and Copy to manage teachers
  3. For each teacher, provide the Name, Short name and Color
    • Optionally, set constraints related to teacher's gaps, load and moving between buildings, set tags, notes and more
  1. Switch to the teacher master view
  2. Use Red marker to draw forbidden positions
  1. Choose Manage > Teachers, select the teacher and click Edit
  2. Expand
  3. Set the Maximum activities in a row to the desired value
  4. Optionally, click Copy to to copy gaps constraints to other teachers
  5. Click Edit

Maximum activities in a row assures that the teacher doesn't have more than specified number of subsequent activities.

  1. Choose Manage > Teachers, select the teacher and click Edit
  2. Expand
  3. Set Maximum gaps per cycle/day and Minimum activities to allow gaps to desired values
  4. Optionally, click Copy to to copy gaps constraints to other teachers
  5. Click Edit

Maximum gaps per cycle/day can minimize the number of teacher gaps (pauses/windows) per cycle/day.

Minimum activities to allow gaps assures the teacher has a specified number of subsequent activities before gaps (pauses/windows) are allowed.

  1. Choose Manage > Teachers, select the teacher and click Edit
  2. Expand
  3. Set Maximum deviation from average daily load and Minimum and maximum activities per day to desired values
  4. Optionally, click Copy to to copy load constraints to other teachers
  5. Click Edit

Maximum deviation from average daily load is used to evenly distribute a teacher's activities across the cycle. For instance, if a teacher has a 5-day cycle with a total of 20 activities, the average daily load is 20 / 5 = 4. If the value is set to 1, it means that the allowed daily load can be 3, 4 or 5 activities, while 2 or 6 activities in a day will be reported as an error because the deviation is greater than 1.

Minimum and maximum activities per day ensure that the teacher doesn't have too few or too many activities per day.

  1. Choose Manage > Teachers, select the teacher and click Edit
  2. Expand
  3. Set Max. moves between buildings to the desired value
  4. Choose whether moving after a gap should be ignored or counted
  5. Optionally, click Copy to to copy Buildings constraints to other teachers
  6. Click Edit

Max. moves between buildings helps minimize unnecessary teacher moves. This constraint requires the Building name to be set for related rooms.

The generator will strive to optimize teacher moves and notifications will alert you when moving between rooms/buildings is not optimized as requested.

grade,grades

Classes

  1. Choose Manage > Classes
  2. Click Add, Edit, Delete and Copy to manage classes
  3. For each class, provide the Name (e.g. "5A", "5B", "Grade 9", "Year 10"), Short name and Color
    • Optionally, set constraints related to load and gaps, tags, notes and more
  4. Upon adding a new class, the following set of groups is automatically created: Boys and Girls and Group 1 and Group 2
  1. Switch to the class master view
  2. Use Red marker to draw forbidden positions
  1. Choose Manage > Classes, select the class and click Edit
  2. Expand
  3. Set gap constraints
  4. Optionally, click Copy to to copy gap settings to other classes
  5. Click Edit

When Start on 1st period is checked, the class activities start from the first period. Otherwise, a gap will be reported as an error.

When Forbid gaps is checked, the class will have no gaps (pauses/windows), meaning there will be no empty periods between activities. Otherwise, each gap will be reported as an error. Also, if a group is missing during a period (e.g. when you divide a class into groups), that period will be reported as an error.

When Groups finish at the same time is checked, each group will finish activities at the same time. Otherwise, missing group(s) will be reported as an error.

  1. Choose Manage > Classes, select the class you want to optimize and click Edit
  2. Expand
  3. Set the desired value for Allowed difference between maximum and minimum daily activities
  4. Optionally, click Copy to to copy load settings to other classes
  5. Click Edit

Allowed difference between maximum and minimum daily activities assures that the class has nearly the same or equal number of activities per day. For instance, if the value is set to 1 and class has 4 activities on Monday and 6 on Tuesday, this difference of 2 activities between days will be reported as an error as it is greater than the set value (1).

groups,division,divisions

Groups

A class can be divided into one or more sets of groups to handle electives (choices/selections):

  1. Choose Manage > Classes, select the class on the list and click Groups
  2. Click Add to add a new group set with 2 predefined groups: "Group 1" and "Group 2"
  3. Click Edit to manage groups for the selected group set:
    • Click Add, Edit and Delete to manage groups within a group set
    • For each group, provide the Name and Short name
Manage group sets and groups

Manage group sets and groups for Grade 12 IB in United States International example

Let's explore some examples. In Example 3, the 5-A class is divided into French and German groups, and related cards are clipped so they will always be scheduled in the same position. In the Egypt example the 11A class is divided into Art, Cooking and Music groups. Open the United States International example and choose Manage > Classes, select "Grade 12 IB" and click Groups to inspect groups.

Keep in mind that dragging cards related to different set of groups on the same day and period causes a conflict (red notification). For instance, if there are 2 group sets, Boys and Girls and another group set English, French and Spanish, then mixing Boys with English group will cause a conflict. To avoid this, use groups from the same set of groups (the same row), e.g. Boys and Girls, or English and French group. Another way is to pin cards to ignore conflicts.

Suppose two or more classes have the same or similar group sets. Instead of adding group sets for each class, you can simply add them once and then copy to other classes:

  1. Choose Manage > Classes, select the class and click Groups
  2. Select group set(s) and click Copy
  3. Select the classes you want to copy group set(s) to
  4. Click Ok

Students

learner,pupil,junior,scholar,add student

  1. Choose Manage > Classes, select the class on the list and click Students
  2. Click Add, Edit and Delete to manage students
  3. For each student provide the Name, Short name and Groups they belong to
    • By adding activities for specific groups, students belonging to these groups will be assigned to these activities as well

Students can be imported, sorted, reordered, printed and you can view their statistics.

To resolve student conflicts, ensure that each student is assigned to only one (or none) of the groups within a group set. For example, if the group set consists of French Spanish and German groups, each student should be assigned to only one of these groups. If the curriculum allows students to choose two or more languages, modify the group set to include groups like French + Spanish, French + German, Spanish + German and so on.

The generator will automatically check and avoid mixing groups from different sets at the same position, helping prevent and resolve student conflicts. Notifications will also alert you to any conflicts that may arise.

You can obtain a direct link to an individual student's timetable through the following methods:

  1. Filter by student in the class view:
    • Access the individual class view
    • Use the filter options to select the specific student
    • The browser's URL will be updated accordingly, providing a direct link to that student's timetable
  2. During timetable publishing:
    • Generate links to all student timetables while publishing the timetable
    • These links can then be shared with individual students

Yes, you have the flexibility to manage students either individually or as part of classes/groups. For example, in scenarios where there are fewer students, you can manage them directly like in English College Example. However, in instances where there are larger numbers, grouping them into classes/groups can be a more organized approach. The choice depends on the specific needs and size of your student body.

lesson,lessons,activities,section,assignment,assign,allocate,allocation

Activities

  1. Choose Manage > Activities to manage and filter activities or view statistics
  2. Click Add, Edit, Delete and Copy to manage activities
  3. For each activity the following can be specified:
    • Teacher(s): Assign a teacher or No teacher, or click More.. to select more teachers
    • Subject: Select a subject, such as Math, English, Biology, but also Lunch, Teacher meeting and similar
    • Class: Assign a class e.g. "Grade 5A" or choose No class
      • Alternatively, click Groups to select class(es)/group(s) involved in activity
    • Activities per cycle: Set the total number of recurring activities in one cycle (e.g. 5 English lessons per week)
    • Activity length: Define the duration as Single, Double, Triple, etc. aligning with the period interval, e.g. set Double for 30-minute period intervals for an activity that lasts 1 hour
    • Desired room: Choose the primary room where the activity occurs or No room
      • Click More... when more desired rooms are needed, e.g. PE might require "Sports Hall" and "Gym"
      • Alternative room(s): The generator will use these rooms if the desired room is unavailable

By adding activities, cards are created for specified resources. These cards can be freely dragged to the desired time slot or you can let the generator create the schedule for you.

Let's take the example of Math teacher John having 3 Single and 1 Double activity in Grade 5. By following below steps, you can easily add any combination of activities and their respective lengths:

  1. Choose Manage > Activities and click Add
  2. Select Math, teacher John, Grade 5, set it to occur 3 times per cycle, choose Single length and click Add
  3. Click Add again to add another activity
  4. Select Math, John, Grade 5, and set it to occur 1 time per cycle, choose Double length and click Add
  1. Choose Manage > Activities and click Add
  2. Click More... and Groups to include additional teachers, classes, groups and rooms

This allows you to combine groups from different classes, involve more teachers for meetings or add more classes for lunch.

Click on "Total:" above the activities grid to switch between displaying full and short names.

recess,snack,break,cafeteria

Lunch

To manage lunch, snack, recess, break or similar activities, add a new "Lunch" period. You can then place pinned cards during this period or forbid the entire period based on your scheduling needs.

  1. Add a new subject called "Lunch"
  2. Add lunch activities and select related resources:
    • Click Groups to add more classes/groups
    • Click More... to add more teachers
  3. Drag lunch cards to the "Lunch" period (note that all cards will be moved together)
  4. Pin lunch cards so they won't be moved by the generator
Lunch as pinned cards

Kindergarten through 5th grade example shows lunch (abbreviated as "LUN") as pinned cards

  1. Use Red marker to mark lunch periods as forbidden for all days
  2. Avoid dragging cards to forbidden lunch period (will be reported as an error)
  3. Alternatively, click and let the generator handle it for you
Lunch as forbidden positions

United States International example shows lunch as forbidden periods

meetings, preparatory, prep, prep time, prep-time, preparation, prepare

Other teacher activities

Other teacher activities include meetings, prep time and similar. Scheduling meetings can be approached in two common ways: either add one activity for multiple teachers or add a separate meeting activity for each teacher and then clip cards.

  1. Add a new subject, e.g. "Teacher meeting"
  2. Add a new activity:
    • Choose "Teacher meeting" as the subject
    • Click More... to assign related teachers
    • Choose No class
    • Optionally, choose desired room
  3. Switch to the teacher master view
  4. Drag meeting cards to the desired position and optionally pin them
  1. Add a meeting activity for each teacher separately
  2. Switch to the teacher master view
  3. Drag meeting cards to the desired position
  4. Clip meeting cards so they are scheduled and dragged together
  1. Add a new subject called "Prep"
  2. Add an activity:
    • Select the teacher
    • Choose "Prep" as the subject
    • Choose No class
    • Set 5 activities per cycle and choose Single length

That will create 5 prep cards for the teacher which you can freely drag to the desired time slot and pin them.

If you want the generator to schedule prep time for you and ensure only one prep time per day/teacher, follow these steps:

  1. Add a new class for each teacher, e.g. "Prep class for John" and similar
  2. When adding Prep activity, assign for each teacher the related Prep class
  3. Optionally, create a custom class view to display only "real" classes so that you don't see Prep classes

The generator will make sure that the "Prep" class/teacher has only one Prep activity per day or show related warnings otherwise.

Tags

To efficiently organize and utilize entered data, set tags for resources. Use commas to separate multiple tags, for example, "9th graders, High school" or "Eng, Middle school". This enables quick filtering of activities (and exporting related statistics) or selecting resources without the need to pick them individually.

  1. Choose Manage > Teachers, select the desired teacher in the grid and click Edit
  2. Expand
  3. Set tags, for example, "Eng, Upper school" (without quotes)
  4. Optionally, click Copy to to assign the same tags to other teachers
  5. Click Edit

Now you can filter activities by English teachers and export related statistics, or filter only English teachers when adding activities or creating views.

  1. Choose Manage > Classes, select the desired class in the grid and click Edit
  2. Expand
  3. Set tags, for example, "5th graders" (without quotes)
  4. Optionally, click Copy to to assign the same tags to other classes
  5. Click Edit

Now you can filter activities by 5th graders and export related statistics, or filter only 5th graders when adding activities or creating views.

  1. Choose Manage > Rooms, select the desired room in the grid and click Edit
  2. Expand
  3. Set tags, for example, "Lab, 1st floor" (without quotes)
  4. Optionally, click Copy to to assign the same tags to other rooms
  5. Optionally, set Capacity and Building name
  6. Click Edit

Now you can filter activities by specific tag, e.g. "Lab" or "1st floor", capacity or building name and export related statistics or filter rooms by tags, capacity or building name, e.g when adding activities or creating views.

  1. Choose Manage > Subjects, select the desired subject in the grid and click Edit
  2. Expand
  3. Set tags, for example, "Eng, Language" (without quotes)
  4. Optionally, click Copy to to assign the same tags to other subjects
  5. Click Edit

Now you can filter activities by English subjects and export related statistics or create related views.

History

The states of timetables can be controlled using the Undo/Redo commands and the History panel:

  1. Click to undo the latest action
  2. Click to redo the latest undone action
  3. Click to show or hide the History panel
Timetabling history

Use the History panel to undo or redo several actions at once

Use the History panel to navigate to any recent state of the timetable created during the current working session. Each time you make a change to the timetable, a new state is added to the panel. For example, if you drag a card, draw constraints, improve the timetable or modify the timetable in any way, each of those states is listed separately in the panel. When you select one of the states, the timetable reverts to how it was when that change was first applied, allowing you to work from that specific state.

Once you reopen or save the document, all states from the working session are cleared from the panel.

Any action that results in a change to data is recorded in the History panel. However, instantly saved actions, such as publishing the timetable, changing the school name or selecting a different skin, will not be listed.

The History panel displays the oldest state at the top of the list, with the most recent state at the bottom. When you select a state, the states below it are dimmed, providing a visual indication of which changes will be discarded if you continue working from the selected state. If needed, you can resize and relocate the History panel.

The History panel retains the previous 100 states, and you can adjust this number in the options.

stats,report,reports,track,tracking,hours

Statistics

  1. Choose Manage > Activities
  2. The row just above the activities grid displays the total number of resources, activities and hours
  3. At the beginning of the row, click to cycle through teachers, classes, rooms and subjects statistics.
  1. Choose Manage > Activities
  2. Select a teacher or a tag from the combo box just above the activities grid
  3. See the total activities count and total working hours for the selected teacher(s)

Additionally, teacher's activities can be filtered by specific subject in case they teach two or more subjects.

  1. Choose Manage > Activities
  2. Click above the activities grid to filter activities by class
  3. Select a class, tag, group or a student from the combo box
  4. See the total activities count and total working hours
  1. Choose Manage > Activities
  2. Set desired filters above the grid
  3. Click to export a report in a tab-separated values file
  4. Open the file with a spreadsheet app or copy/paste the content into a spreadsheet app to customize and print

Based on selected filters, you can export statistics for teachers, classes, rooms or subjects, as well as individual teacher, class, group, student, room or subject statistics. Individual statistics provide more details. For example, if a teacher teaches two or more subjects, the statistics will be displayed for each subject separately. If some activities are not scheduled, total hours will be approximated based on the average period length.

To export more detailed (individual) statistics in one file:

  1. Hold CtrlCmd when no filter is selected or when filtering by tags, capacity or building name
  2. Click

Views

Timetable Views

Each view consists of:

  • View type icon which opens the view picker (located in the top left corner, just below the owl)
  • Timetable with cards for displayed resource(s) scheduled on desired days and periods
  • Area with unscheduled cards

Adjust the timetable width by dragging the vertical splitter that separates scheduled from unscheduled cards.

Views are highly interactive, providing various functionalities:

  • Hovering over the timetable highlights related day, period and resource names for precise positioning
  • Horizontal and vertical scrollbars aid navigation in larger or zoomed in timetables
  • Interactive timetabling tools like markers, pin and sponge can be used in any view
  • Changing the view updates the browser's URL, allowing for easy sharing of specific master/individual views, and the Back/Forward buttons facilitate navigation between previously opened views
  • Right-clicking on any card, day, period or resource name opens a context menu with additional options
  • Changes made in one view, such as dragging a card or improving the timetable, are instantly reflected in all other open views and notifications
  • The shadow of a dragged card is visible in all extra views, helping you avoid conflicts

Master Views

By default, there are four predefined views showing classes, teachers, rooms and subjects. To navigate between master views:

  1. Open the view picker
  2. Choose , , or to switch to the corresponding master view

If needed, you can create your own views. Each master view displays a list of resources in the first column along with cards in the respective rows. Unscheduled cards are grouped by subject and placed outside of the timetable, aligning with the row of the respective resource.

Individual Views

An individual view provides a focused look at a specific resource. To switch to an individual class, teacher, room, or subject view, click the first column (resource name) in the related master view. An individual class view can be filtered by specific student or group (if added). Click on a student or group to view their individual timetable and click again to remove the filter.

Filtering class view to get individual student timetable

Filtering 6A view to get an individual student timetable for Donna Gordon

When you change the view, the browser's URL is updated accordingly. Copy and share the specific URL of a student, class or teacher's timetable with others, as long as they have the necessary access or the timetable is published online.

Extra Views

Extra views provide an extended perspective, helping to avoid conflicts by displaying additional master and individual views simultaneously. This feature eliminates the need to switch between views frequently, offering a comprehensive overview of the entire timetable. Moreover, the shadow of the dragged card appears in all open views, so you can easily avoid conflicts.

To show or hide extra view:

  1. Click any card to display card details in the bottom left corner
  2. Click , , or in the card details

Video tutorial: How to use extra views

  1. Click , , or in the card details
  2. In the top right corner of the opened extra view, click
    • The floated extra view can be freely dragged and resized

The height of the main and extra views can be adjusted by dragging the horizontal splitters up and down.

custom view

Manage Views

To create a customized view, e.g. to display 5th graders or English teachers:

  1. Choose from the view picker and click Add
  2. Provide a name and short name for your view
  3. Choose the view type (classes, teachers, rooms or subjects)
  4. Select the specific resources you want include
  5. Optionally, exclude certain days or periods and click Add

Now, you can schedule, publish, export, customize or print created view according to your preferences.

Video tutorial: How to manage views

  • Click the icon of the newly created view in the view picker

The icon contains the first 3 letters of its short name. For instance, if you create a view named "English Teachers" with the short name "Eng", you would click the "Eng" icon in the view picker to switch to that view. Explore customized views in our examples:

  1. Choose Open > Open Examples
  2. Select United States International example and click Open
  3. Open the view picker and select "7th" to view 7th graders or select "Eng" to view English teachers
  1. Choose from the view picker
  2. Use the up/down arrows to reorder views
  3. Select a view and click Edit
  4. Change visibility settings
  5. Click Edit

Hidden on the web means the view won't be displayed on the published page. For example, the subjects view is often used to mark forbidden positions for demanding subjects, but it may not be of interest to others, so it can be hidden on the published page. Hidden in the app is the opposite option.

If a view is not needed, e.g. rooms are not scheduled, you can hide rooms view by setting its visibility to Hidden.

  1. Open the view picker
  2. Hold CtrlCmd while clicking the desired view to toggle extra view

Zoom

  1. Click in the bottom right corner
  2. Use the vertical slider to adjust row height (master and individual views are adjusted separately)
  3. Use the horizontal slider to adjust column width, especially helpful when dealing with many days and periods

Note: Row height is also preserved when printing.

The browser also comes with a built-in zoom feature:

  • Hold CtrlCmd and press + or - to zoom in or out
  • Hold CtrlCmd and press 0 to reset the zoom to the default value

Cards

Timetable Cards

Cards are a visual representation of an activity. For example, if an activity occurs five times a week, then five cards will be displayed in the related view. Initially, cards are placed in the same row as the related resource, within the area containing other unscheduled cards. You can freely drag them to the desired time slot or let the generator create the schedule for you.

The size of cards depend on the activity length and whether they include the whole class or only a group. For example, if the activity length is set to Double, the related card requires two (empty) time slots. If a card is created for a specific group in the group set containing two groups, then it will take only half the size, leaving space for the other group card to be scheduled at the same time slot. The size of cards scheduled on custom periods depends on the period interval rather than the activity length.

When you add an activity involving multiple resources, individual cards are created for each resource associated with the activity. For instance, if you add a lunch activity for five classes, you will get five cards in the class master view, with one card assigned to each class. When you start dragging one card, the others will follow. Similarly, adding an activity that involves three teachers, such as a teacher meeting, will produce three cards in the teacher master view, each corresponding to one teacher. Again, when you start dragging one card, the others will follow.

Alternatively, in cases where you're uncertain about which resources should participate in a meeting, physical education or any other activity, you have the flexibility to add a separate activity for each resource. That way, you can decide later which resources should go together by merging or clipping individual cards.

  1. Click a card with the left mouse button to select it:
    • The selected card blinks for easy identification
    • Details of the card are displayed in the bottom left corner
    • The same card will be automatically selected and scrolled to in all open views
    • When switching the view, the selected card is automatically selected and scrolled to
  2. To deselect a card, click an empty space in the timetable:
    • Previously selected card stops blinking
    • Details in the bottom left corner are hidden

Drag and Drop

move,change,move card

  1. Select a card by clicking it with the left mouse button
  2. While keeping the left mouse button pressed, drag the card to a new position
  3. Drop the card by releasing the left mouse button

On touch devices, use a finger to drag cards.

If there are two or more cards on the same position, they will be slightly rotated, and a conflict notification will appear. Clicking a card below will bring it on top.

There are several ways to resolve conflicts:

Cards can only be dragged horizontally across the class, teacher and subject master views to prevent changing the resource by mistake. The room master view allows dragging cards vertically to change the scheduled, desired or alternative room. In individual views, cards can also be dragged both ways because it only affects the day/period.

Note that dragging a card to a non desired/alternative room will change the desired/alternative room for that activity and potentially the scheduled room for other related cards. Similarly, if you change desired/alternative rooms while editing an activity, all related cards will be updated as well. If this behavior is not desired and you want to freely drag cards in the room master view without affecting related cards, add all rooms as alternative rooms for that activity.

status, status bar, card info

Card Details

The details of the last selected card (or the mouse-overed card if there is no selection) are displayed in the bottom left corner:

  1. Click , , or to show or hide related extra views
  2. Click the resource name to select that resource in the related grid
  3. Click to select the activity in the grid represented by the current card
Card details

Showing details of the last selected card: subject, teachers, classes and scheduled + [desired] + (alternative) rooms

Select Multiple Cards

  1. Click an empty area in the timetable and start dragging the cursor across the timetable
  2. A rectangular marquee will appear, with one corner where you started dragging and the opposite where you stopped
  3. Stop dragging by releasing the left mouse button and all cards inside the marquee will be selected
  4. Right-click any selected card and choose the desired action from the card's context menu

Select multiple cards to perform actions on more than one card. For instance, you can drag and drop cards, and also edit multiple cards, clip, copy, pin/unpin, merge/split, etc. via the card's context menu.

Selecting multiple cards by surrounding desired cards with the mouse

Selecting multiple cards using rectangular marquee

  1. Hold CtrlCmd while clicking cards to add or remove cards from the selection
  2. Hold CtrlCmd while clicking on a day, period or resource name to (de)select all the cards for that day, period or resource
  3. Hold Shift while you click the last card that you want to include in the new selection:
    • The rectangular range between the active card and the card that you click becomes the new selection

To reset selection, click an empty space in the timetable.

  • Hold CtrlCmd and click the top right corner of the timetable to select all (un)scheduled cards

If there are no unscheduled cards, then all scheduled cards will be selected. This feature is useful for actions like pinning, deleting or editing all (un)scheduled cards. Simply right-click any selected card and choose the desired option from the context menu. For example, pinned unscheduled cards are ignored by the generator.

Edit Cards

change,change cards,teaching

  1. Select one or multiple cards
  2. Right-click any selected card and choose Edit cards
  3. Change subject, teacher(s), class(es)/group(s), length, desired or alternative rooms
  4. Click Edit

substitute,substitution,absence

  1. Switch to the teacher master view
  2. Hold CtrlCmd while clicking the teacher's name to select all their cards
  3. Right-click any selected card and choose Edit cards
  4. Select a different teacher
  5. Click Edit

homeroom,home room

  1. Switch to the teacher master view
  2. Hold CtrlCmd while clicking the teacher's name to select all their cards
  3. Right-click any selected card and choose Edit cards
  4. Choose the desired room
  5. Click Edit
  1. Select one or multiple cards where teacher assistant(s) are needed
  2. Right-click any selected card and choose Edit cards
  3. Click More... next to selected teachers (currently selected teachers are displayed as "Current")
  4. Select teacher assistant(s) and click Ok
  5. Click Edit

repeat

Copy/Paste Cards

Cards can be copied from one resource, day or period to another:

  1. Select one or multiple cards
  2. Right-click any selected card, day or period and choose Copy
  3. Right-click the desired resource name, day or period and choose Paste
Copy/paste cards

Right-click day to open the context menu

clear,remove,delete

Clear/Delete Cards

  1. Click the and then click card, day, period or resource name
  2. Alternatively, right-click any card, day, period or resource name and choose Clear

Cleared cards will be placed outside the timetable, along with other unscheduled cards.

  1. Click the and then click the timetable's top right corner (the area above unscheduled cards)
  2. Alternatively, hold Shift key while clicking the
  • Right-click unscheduled card(s) and choose Delete from the context menu
  • Select one or multiple unscheduled cards and then press CtrlCmd + Backspace
  • Choose Manage > Activities, multi-select activities and click Delete

Merge/Split Cards

Merge allows combining two or more cards into one, thus avoiding conflicts:

  1. Right-click any conflicted/rotated card to open the context menu
  2. Choose Merge
Cards can be merged if teachers and/or classes/groups are different and everything else is equal: position, subject, length and (scheduled, desired and alternative) rooms.

Video tutorial: How to merge cards

Merging cards is essentially the same as adding an activity with more resources. The only difference is that merging allows you to decide later which resources will be included in the activity. For instance, you can add separate PE activities for each class and merge the cards later when you finally decide what classes are going to be involved in a specific lesson.

In essence, merging or splitting cards offers another convenient way to edit the resources involved in an activity directly in the view. Instead of choosing Manage > Activities and clicking Edit followed by More... or Groups to select resources, you can simply drag one card over another, right-click the card and choose Merge.

Split is the opposite of merge, creating more cards from one when there are more groups or teachers. For instance, if a card has 2 teachers and 3 groups, 6 new cards will be created after split, each with only one teacher and one group. To split cards:

  1. Select card(s) which have more than one teacher or group
  2. Right-click any selected card to open the context menu
  3. Choose Split

Customize Cards

change text,template,style,custom text,edit card text,change card text,change card name,edit card name,rename card,card text,change text

To change the text, background color and border for all cards in the view:

  1. Switch to the desired master, individual or your own created view
  2. Right-click the card and choose Customize (or choose Print > Customize Cards)
  3. Choose the displayed card's text, background color and border
Customization for master and individual views is independent, e.g. use short names for the master view and full names for individual views.

Video tutorial: How to customize cards

  1. Select the text option from the combo box to add the related text to the cards:
    • The text can be any combination of class, teacher, room or subject names, their short names or even custom text
    • Click a row in the enlarged card to remove the text
  2. Set the background color to be from the card's class, teacher, room or subject, or opt for no background color
  3. Set card borders to Round, Square, Round (no border) or Square (no border)

For additional customization options, refer to the Advanced Customization.

  1. Select one or more cards
  2. Right-click any selected card and choose Customize
  3. Choose Set custom text option from the list:
    • Enter the text that will be displayed in individual views
    • Enter the short text that will be displayed in master views
    • If you change your mind, click Use default to remove custom text

All textual fields support HTML tags, allowing you to get creative and further style the appearance of your timetable.

  1. Switch to the teacher master view
  2. Right-click any card, choose Customize
  3. Choose Add room short name to add short name to all cards in the teacher master view
  4. Continue by switching to any teacher individual view
  5. Choose Add room name to add room name to all individual teacher timetables

Follow similar steps to customize any other master and individual view. Additionally, create your own view and customize it independently. Styles are inherited from the related predefined master or individual view unless customized otherwise.

All changes are preserved when you create a copy of timetable. Also, when you create a new timetable, customization changes are copied from the previously opened one, saving you the effort of repeating the customization process.

Constraints

time request,block,forbid,restrict,availability,not allowed,time off,part-time teacher

Markers

Markers are essential tools for defining constraints for any resource:

  1. Select one of the following from the toolbar in the bottom right corner:
    • Red marker marks forbidden positions and leaves red minuses while drawing
    • Yellow marker marks unwanted positions and leaves yellow exclamation marks while drawing
    • Blue marker marks mandatory positions and leaves blue plus signs while drawing
    • Eraser icon erases previously drawn marks

    When a marker is selected, previously drawn marks will be colored (red, yellow and blue), while the cards fade away

  2. Click on any position, day or period to draw marks (clicking again will erase marks)
  3. To release the marker, press Esc or click outside of the timetable
Use markers in any master, individual, extra or your own view and notifications will be updated upon any change.
Specifying constraints with markers

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

  • Pick Eraser marker
  • Click on any position, day, period or resource to erase previously drawn marks
  • Click the timetable's top right corner to erase all marks
  1. Pick Yellow marker, Yellow marker or Yellow marker
  2. Mouse over the first column in the timetable
  3. Click Copy to
  4. Select the resources where you want to copy the marks
  5. Click Ok

block,forbid,time off,time request,break

Red Marker

The red marker is used to define forbidden positions for any resource:

  1. Switch to the desired view, such as class, teacher, room or subject master view
  2. Pick Red marker and draw minus signs by clicking on any position, day or period

For example, you can specify when a part-time teacher is not available, avoid scheduling students for the last period on Fridays, forbid a room that is already booked, prevent difficult subjects from being scheduled in the last period or ignore gaps.

Video tutorial: How to draw forbidden positions

Yellow Marker

The yellow marker is used to indicate positions that should be avoided or missed for specific resources:

  1. Switch to the desired view and pick Yellow marker
  2. Draw yellow exclamation marks by clicking on any position, day or period
  3. Mouse over the first column (resource name) to access unwanted settings:
    • Set Allowed number of unwanted activities per week/day to desired value
If Allowed number of unwanted activities per week/day is set to Arbitrary, which is the default value, unwanted positions will be completely ignored by the generator.
  1. Choose Open > Open Examples and open Example 3 where all classes have 2 lessons of Physics per week
  2. Switch to the subject master view and pick Yellow marker
  3. Note that there are 5 drawn unwanted marks displayed as exclamation marks for Physics at the end of every day
  4. Mouse over the Physics subject to note that Allowed number of unwanted activities per week is set to 1

This means that only one lesson of Physics is allowed at the last period. Otherwise, a warning will be reported and the generator will try to fix this for you.

Blue Marker

The blue marker is used to indicate preferred or mandated positions for specific resources:

  1. Switch to the desired view and pick Blue marker
  2. Draw blue pluses by clicking on any position, day or period
  3. Mouse over the first column (resource name) to access mandatory settings:
    • Set Allowed number of missed mandatory activities per week/day to desired value
If Allowed number of missed mandatory activities is set to Arbitrary, which is the default value, mandatory positions will be completely ignored by the generator.
Mandatory settings

Marker settings when the blue marker is selected

  1. Choose Open > Open Examples and open Example 3 where all classes have 2 lessons of Physics per week
  2. Switch to the subject master view and pick Blue marker
  3. Note that there are 15 drawn mandatory marks (plus signs) for Physics (3 first periods x 5 days)
  4. Mouse over the Physics subject to find that the Allowed number of missed mandatory activities per week is set to 14

This implies that one lesson (15 mandatory - 14 allowed to be missed = 1 mandatory) of Physics per class must be scheduled within the first three periods. Failure to do so will trigger a warning, and the generator will try to fix this for you.

lock cards, fix cards

Pin

The pin tool, located in the bottom right corner, ensures cards won't move while improving the timetable and more:

  1. Click Pin tool and then click on the cards, days, periods or resources you want to pin/unpin
    • Alternatively, right-click any card, day, period or resource and choose Pin or Unpin from the context menu
    • Pinned cards have a little pin icon in the top right corner
  2. Pin conflicts, unscheduled cards and other issues you want to ignore to eliminate related notifications
  3. To release the pin, press Esc or click on an empty cell

Video tutorial: How to pin cards

join,clipping,link,relation

Clip

Clipping allows you to group and schedule multiple cards together:

  1. Select multiple cards
  2. Right-click any selected card and choose Clip
    • Clipped cards have a little clip icon in the top left corner and will be scheduled as a group

For instance, clipping is useful for scheduling electives, when one group has French and another has German (see Example 3).

Video tutorial: How to clip cards

The rules for clipping cards are:

  1. Cards needs to be scheduled on the same day/period and have the same length
    • Otherwise, the Clip option won't be visible in the card's context menu
  2. Clipping conflicts is forbidden to prevent making the impossible-to-improve timetable, so additional rules are:
    • Cards shouldn't include the same teachers: consider merging cards or adding an activity with more resources, instead
    • If the cards belong to the same class, each card should have a different group from the same group set; otherwise, consider revising groups or using pin to ignore conflicts
    • There should be enough rooms to accommodate all clipped cards, e.g. if two cards have the same desired room with no alternatives, consider merging cards instead

Clipping is the preferred option when scheduling together activities with different subjects, such as electives, as adding an activity with more subjects is not allowed. Alternatively, you can create a combined subject, e.g. "French + German" and then add an activity for that subject and include the whole class.

When scheduling together activities with the same subjects, like meetings, there are several options:

  1. Add an activity with multiple resources:
    • Choose Manage > Activities and click Add
    • Use Groups and More... to include multiple resources in the activity
  2. Add separate activities for each resource and do one of the following:
    • Merge related cards, which will effectively give you the same result as the first option
    • Clip related cards

The differences are subtle so you can decide based on your preferences. For example, you might prefer to have a visual cue (a little clip icon) for cards that go together.

  1. Click on any card that is already part of the clipped group
  2. Hold CtrlCmd while clicking on additional cards you want to add to the selection
  3. Right-click any selected card and choose Clip
  1. Right-click on any card that is already part of the clipped group
  2. Choose Unclip

Validate

validator,verify,verification,correct,health,status

Notifications

Notifications are crucial for ensuring that the timetable meets specific constraints and aligns with the school requirements:

  1. Click to show or hide the Notification panel:
    • The notification number shows the total number of errors or warnings
    • You can resize and relocate the panel as needed
  2. The number and notifications are instantly updated upon any change
  3. A red notification indicates a fatal error that needs to be fixed, while a blue one represents a warning
    • Clicking on red or blue notifications makes the related cells blink in the view, helping you spot the issue
    • To stop blinking, click the category title or to hide the panel
  4. The timetable is considered valid if there are no notifications, meaning that all constraints have been resolved

Video tutorial: How to validate a timetable

resolve,ignore,exception,error,warning,errors,warnings,clash

Resolve Notifications

To maximize the generator's efficiency, actively monitor and address the listed errors and warnings. Any "intentional" error or warning must be cleared from the notifications at all costs, before the automatic generator can proceed, for example:

  1. If cards are intentionally scheduled at the same time, use Pin tool to resolve the errors by pinning the conflicted cards
  2. Mark a lunchtime class gap as forbidden using Red marker to prevent it from being listed as an error
  3. Use Pin tool to pin intentionally unscheduled cards to ignore them, ensuring they are not counted as errors

Conflicts should be resolved by merging cards. If merging is not possible or not desired (for example, conflicted cards have different subject, rooms or length), you can pin the conflicted/rotated cards and the related notifications will be removed.

To resolve gaps, you can mark a gap as forbidden and related notifications will be removed. Alternatively, you can address both gaps and Missing groups in the classes by unchecking Forbid gaps:

  1. Choose Manage > Classes, select a class and click Edit
  2. Expand and uncheck Forbid gaps
  3. Click Edit

The notification subject taught more than once a day can be resolved by pinning these cards or:

  1. Choose Manage > Subjects, select a subject and click Edit
  2. Expand and check Taught more than once a day
  3. Click Edit

The notification too many difficult or too few easy subjects in a day can be resolved by setting the difficulty to Low:

  1. Choose Manage > Subjects, select a subject and click Edit
  2. Expand and set the difficulty to Low
  3. Click Copy to, then Select all and confirm the selection with Ok

If you pin unscheduled cards, the generator will ignore them and the related notifications will be removed.

Non-teaching activities (teacher meetings, preparation, lunch, etc.) shouldn't affect teacher/class load, such as max. activities in a row or per day. Additionally, for cases like "desired conflicts", such as Physical Education (PE) in the Gym, it might be more helpful to exclude subjects from the generator and notifications instead of resolving them.

Generate

Improve Timetable

generator,solver,builder,optimizer,creator,scheduler,engine,optimize,play,module,automatic

To start the automatic generator:

  1. Click to schedule cards automatically based on the provided input
  2. If there is no noticeable progress, click Stop to review and revise the data and/or constraints
    • When stopped, resume generation by clicking Continue

Video tutorial: How to automatically generate a school timetable

  • Hold the Shift key while clicking
  • Clear all cards and then click
  • Use the keyboard shortcut: CtrlCmd + Shift + Space

Non-pinned cards will be removed and automatic generator will start improving the timetable.

Best Practices

To get the most out of the generator, you need to follow a couple of rules:

  1. Schedule only one activity per resource/period.

    When adding activities, click More... or Groups to assign additional resources (e.g. for lunch or meetings).

  2. First, generate a timetable without constraints.

    If the timetable can't be generated even without constraints, revise entered data by examining statistics.

  3. Gradually introduce constraints.
  4. If there is no noticeable progress, click Stop to review and adjust constraints and/or data.

  5. Actively monitor and address listed notifications.

    Resolve notifications to enable the generator to focus on constraints that matter, for example:

    • Use Pin tool to ignore the intentionally conflicted cards
    • Mark empty lunch periods as forbidden using Red marker
  6. Lower priority requirements won't be addressed until higher ones are resolved.

    Top priorities include conflicts, forbidden positions and gaps, followed by subject taught more than once a day.

  7. Revert changes.

    Remember that you can undo/redo any change using the history.

Improvement Priorities

The automatic generator is supposed to solve about thirty highly complex requirements. Since these are commonly conflicted and it is usually impossible to solve them all, priority levels have been introduced, which the generator manages in the following way: lower priority requirements will not be solved as long as there are unsolved higher priority requirements.

The problem is that the generator is not always capable of detecting that some requirements cannot be satisfied and will keep trying to solve them at all costs, perpetually working without progress, leaving the rest of the timetable in poor state. That's why it is necessary to prepare quality data in order to help the generator do its best. Notifications are an irreplaceable tool for this task. However, some of the oversights made while entering data cannot be seen even in the notifications. The problem can be solved only if you abide by the following rules:

  1. Do not expect instant perfection:
    • It's impossible to know in advance whether such perfect timetable is even possible
  2. Start with moderate requirements:
    • At first, set moderate requirements and let the generator automatically create the timetable
  3. Gradually introduce constraints:
    • Only when you manage to get a valid timetable should you increase constraints and start the generator again

The generator recognizes three levels of priority, each consisting of a number of individual requirements:

  1. Fatal error level

    This group includes:

    • Card conflicts
    • Cards scheduled on forbidden positions
    • Class gaps
    As long as any of these errors exist, the generator will not be working on improving the rest of the timetable

    Here are some typical beginner mistakes that should be avoided at all costs:

    • A teacher/class has so many forbidden positions that some cards must be placed on a forbidden time slot
    • There are more activities you want to put in a room or assign to a teacher than the total number of periods in the timetable
    • Too many forbidden positions for a specific activity and related resources
  2. Difficult warning level

    This level includes only one item - a subject taught in some classes more than once a day. You should make sure to enter as many subjects as really taught in the school and choose the right subject for each activity.

  3. Warning level

    There are over twenty different warnings that might appear in notifications. The generator will address them only after resolving all fatal errors and difficult warnings.

Export

Save as Local File

  1. Choose Save as > Local File
  2. The timetable will be downloaded to your device as an JSON file, which can be opened later
You can find more details about our JSON timetable format here.
The app utilizes a RESTful API, allowing any software to access published timetables and parse the data. For instance, you can directly access Example 3 in JSON. Additionally, the app offers CSV/TSV outputs that can be parsed easily.

SIS,MIS,integration,integrate,Student Information Systems,School Management Information System,third-party software

Save as Custom File

Save your timetable in different formats like PowerSchool, iSAMS, SmartSchool or Siged with these steps:

  1. Choose Save as > Custom File
  2. Select PowerSchool, iSAMS, SmartSchool or Siged format
  3. Customize options and click Download

Use the downloaded file to import the timetable into other software such as SIS, MIS or similar systems.

  1. Choose Save as > Custom File and select PowerSchool format
  2. Optionally, set parameters like School ID, Term ID, Block prefix and whether subject names and short names should be switched in the exported columns
  3. Click Download and open downloaded file using Notepad or a similar text editor
  4. Select the file content (e.g. hold down CtrlCmd and press A), right-click and choose Copy
  5. Switch to Excel/Sheets; for example, use this spreadsheet for PowerSchool Import Data Template Instructions
  6. Right-click the desired cell (e.g. B4 in the provided spreadsheet) and choose Paste

The columns in the created PowerSchool file are:

School ID Course Number Course Name Section Number Term ID Teacher Number Teacher Name Room Expression
Specified before exporting Subject ID Subject name Class ID Specified before exporting Teacher ID Teacher name Room ID(s) Period and day short names

* ID is equal to Custom ID or related short name if Custom ID is not specified.

The columns in the iSAMS file are:

PeriodId Set Code Year Group (optional) Subject Teacher Room
= periodCount * (day - 1) + period Class ID + Group ID Class name Group ID Subject ID Teacher ID Room ID

* ID is equal to Custom ID or related short name if Custom ID is not specified.

The columns in the SmartSchool file are:

Activity Class Group (optional) Teacher Subject Room Day Period
Counter Class ID Group ID Teacher ID Subject ID Room ID Day position Period position

* ID is equal to Custom ID or related short name if Custom ID is not specified.

The columns in the Siged file are:

Activity Class Group (optional) Teacher Subject Room Day Start period End period
Counter Class ID Group ID Teacher ID Subject ID Room ID Day position Start position End position

* ID is equal to Custom ID or related short name if Custom ID is not specified.

Hold CtrlCmd and click Download to include period start and end time columns (useful for custom periods).

Save as Spreadsheet(s)

Folow these steps to export timetable(s) to the spreadsheet app:

  1. Switch to the desired master view and choose Save as > Spreadsheet(s)
  2. Choose the Current timetable view or All related individual timetables and click Download
  3. Open the downloaded HTML document and Create a rectangular marquee around the desired timetable(s):
    • Click outside the timetable in the top-left corner
    • Hold the left mouse button and drag the cursor to the bottom-right corner of the timetable
  4. Right-click the selection and choose Copy
  5. Switch to Excel or Sheets, right-click a cell and choose Paste

This allows you to seamlessly transfer your timetable data to spreadsheet applications for further analysis or sharing.

  1. Create a view that displays only 5th graders or only English teachers or specific days/periods
  2. Choose Save as > Spreadsheet(s)

Export Grid Data

To export various types of data from the grid, such as activities, teachers, subjects, rooms, classes/groups, days or periods:

  1. Choose Manage > Activities (or other relevant sections)
  2. Create a rectangular marquee around the grid:
    • Click outside the grid in the top-left corner
    • Hold the left mouse button and drag the cursor to the bottom-right corner of the grid
  3. Right-click inside the selected grid area and choose Copy
  4. Switch to Excel or Sheets, right-click the desired cell and choose Paste

Share

user,users

Share with Others

Users with Owner role can manage access to school timetables:

  1. Choose Share > Share with others
  2. Click Add, Edit and Delete to manage users
  3. When adding or updating users, assign the following roles:
    • Owner - Authority to manage timetables, users and roles
    • Creator - Ability to manage timetables
    • Viewer - Permission to view timetables without making changes

Collaboration

concurrency,multiple users,sync,multi-user

Timetablers can collaborate on the same timetable simultaneously, with all saved changes seamlessly syncing and merging across any device in use. For example, one timetabler can modify a teacher's name while another alters their short name, and the changes will be integrated without any overwrites upon saving.

In the rarest edge case when merging is not possible (e.g. timetablers have both changed the same teacher's name), the app uses the last save wins model: the name saved by the latter timetabler will overwrite the name saved by the former, while all other changes will be properly merged. Changes made to previously deleted resources will be ignored.

In some cases, merging on a property level is not desired, such as when timetablers change the position of the same card. Merging could cause picking the day from one, the period from the second and the room from the third timetabler. The app takes care of this, ensuring that the card's position (day, period and room) set by the last timetabler is respected.

The timetable is updated only when saving changes or when reopened, so timetablers are not being disturbed by potential changes made by others.

Publish to the Web

To publish a timetable:

  1. Choose Share > Publish to the Web
  2. Click Publish
  3. Click Copy to share the link with others
  4. Optionally, click Visit published page to open it in a new window
    • The published web page is accessible from any device, including phones and tablets
    • It automatically updates to ensure the latest changes are delivered to all

This allows a class/group, student or teacher to have direct access to their timetable by bookmarking the web page. Note that the individual class view can be filtered by a specific student or group.

  1. Choose Share > Publish to the Web and click Publish
  2. Choose a skin
  3. Select the period format: period number or name, 12-hour or 24-hour clock
  4. Choose the initially displayed view
  5. Check whether you want to resize periods based on duration
  6. Expand to decide whether switching view is allowed, or to preserve the current zoom values for the master and individual views or to download all links for individual timetables
  7. Choose Open > Timetable Info to set the school name and year displayed on the published web page

By checking Preserve zoom values the current zoom values for the master and individual views will also be used on the published web page. For instance, the following URL shows timetable with 150% vertical zoom set in both master and individual views and 200% horizontal zoom in the master view (note that 'zx=200&zy=150&zy1=150' are added to URL): published page for Example 3.

By default, conflicts are not rotated and forbidden and other marks are not displayed on the published page. You can override this behavior by adding rotate=1 and/or showMarks=1 to the URL.

  1. Create a view for specific resources, days and periods
  2. Choose Share > Publish to the Web
  1. Choose Share > Social Networks
  2. Click Publish
  3. Choose the skin, period format, etc.
  4. Click or to share timetable on Facebook or Twitter
  1. Choose Share > Embed Timetable
  2. Click Publish
  3. Choose the skin, period format, etc.
  4. Copy the generated HTML code and paste it into your website
  5. Optionally, adjust HTML code to suit your website, such as changing background color, size and similar
  1. Choose Share > Publish to the Web
  2. Click Unpublish

Unpublishing a previously published timetable will make it no longer accessible to everyone.

Advanced Customization

Timetables can be completely customized to match your school's branding. With a bit of HTML and CSS knowledge you can:

  1. Add custom school logo
  2. Set custom font family, size and colors, e.g. to match styles in your school's website
  3. Make any other HTML or CSS changes

United States International and K-12 examples are already customized with the most common changes:

  1. Open United States International or K-12 example
  2. Choose Open > Timetable Info and expand
  3. Examine Custom HTML and Custom CSS, copy/paste and adjust to suit your timetable needs
  1. Choose Open > Timetable Info and expand
  2. Copy and customize below CSS and paste it into Custom CSS:
    .c .t {
      font-size: 10px; /* set custom font size in the master view */
    }
    .single .c .t {
      font-size: 11px; /* set custom font size in individual views */
    }
    .title, .year, .dayBorder, .periodBorder, .nameBorder, .c .t {
      font-family: 'Open Sans'; /* change font family */
       font-weight: 300;
    }
  3. Click Ok

All textual fields in the app support HTML tags, allowing you to creatively style the look of your timetable. Here are some examples for customization:

Set period name to:

<b>Lunch</b><br/>11:00 - 11:30

That will display Lunch in bold weight and the time interval will be in the next line.

Set teacher name to:

<span style="font-weight: bold; font-size: 14px; color: red;">Mr. John Cleese</span>

This will display Mr. John Cleese in red, with bold letters and a larger font size.

Print

Help

time

Options

  1. Choose Help > Options to customize:
    • Skin:
      • Choose Blue (default), Green, Red, Violet, Orange, Pink, Cyan, Brown, Gray or Dark skin
    • Period format:
      • Choose Period name, Period number, 12-hour or 24-hour clock for displaying period intervals in the views
      • For instance, if you choose Name or 12-hour clock, you can customize a specific period by setting period name to "Lunch", thus overriding the default 12-hour clock display
    • Default view:
      • Set the master view that will be displayed when the application starts
    • Save reminder:
      • Set the save reminder interval (the default is 20 minutes)
    • Resize periods based on duration:
      • By default, all periods appear to have the same size in the view regardless of their actual duration
      • Check this option if you want to resize periods based on their actual duration
  2. Expand to customize:
    • History states:
      • Set the number of history states that you can undo/redo
    • Show tips & tricks:
      • By default, the owl hoots useful info which experienced timetablers can hide by unchecking this option
    • Rotate conflicted cards:
      • Set whether conflicted cards should be rotated (checked by default)
    • Show notification number:

issue,problem,bug,error

Troubleshooting

  • Click in the top right corner:
    • Click My Profile to ensure you are logged in and have been assigned the Creator or Owner role
    • Verify your expiration date, as your account might have expired and you need to extend subscription

lock,locked,abuse,terminate

  • Ensure you have entered a valid email address for continued access
  • If your account has expired, you'll need to extend your subscription
  • Account misuse, such as creating multiple free accounts, may result in a lockout due to a violation of our terms of service
  1. Save your schedule as a local file to create a backup on your device and optionally save changes on our server
  2. Refresh your browser (e.g. CtrlCmd + F5) to ensure the app loads properly
  3. Try using another modern browser, such as Chrome, Firefox, Safari or Edge
  4. If the issue persists, contact our support team and we will respond to you as soon as possible

Tips & Tricks

prevent,loss,undo,restore,undelete,history

Before making any changes, consider the following:

To restore a previous version:

  • Open a copy from the server, your device or the archive
  • Restore previously deleted timetables
  • Recover data from daily backups:
    • Send us the name and exact date of the timetable you want to retrieve

If your internet connection is lost or our website is temporarily not available:

  • Contact us to make sure there is no workaround for your scenario.
  • Use pin to fix cards on specific positions that resolve your constraint and let the generator handle the rest. If the generator can't make a progress try pinning cards on different positions that also resolve your constraint.
  • Customize related cards so they are easy to spot, e.g. set red as a background color and/or uppercase custom text like 'MUST BE LAST!'. In that way, you can generate several valid solutions until your constraint is resolved. When timetable is finished you can set any other background color and/or remove custom text. Creating custom views which displays only specific resources, days and periods (instead of looking at the whole timetable) can also help in detecting whether constraint is resolved.

Keyboard Shortcuts

Key combination Action Key combination Action
CtrlCmd+O Open timetable CtrlCmd+S Save changes
CtrlCmd+Z,Y Undo/redo Esc Drop marker/pin, cancel, close window
CtrlCmd+1 ... 9 Switch to related view CtrlCmd+Alt+1 ...9 Toggle extra view
CtrlCmd+,,Home,End Navigate through individual views F11 Toggle full-screen
CtrlCmd++,-,0 Zoom in/out/reset, hold Shift for vertical, Alt for horizontal zoom CtrlCmd+D Opens data window
CtrlCmd+Alt+D Manage days CtrlCmd+Alt+P Manage periods
Switch to left/right tab CtrlCmd+Alt+H Show or hide history panel
PgUp PgDn
Home End
Select up/down, page up/down or the first/last item in the grid/list Type first letters Find item in the grid/list
+ or Insert Add new item Enter Edit selected item, submit form
Alt +, Reorder items in the grid CtrlCmd +, Reorder items in the selection list
Backspace or Delete Delete selected items CtrlCmd + click Multi-select
Shift + click Range selection CtrlCmd+A Select all items
CtrlCmd+C Copy selected cards to clipboard CtrlCmd+V Paste items into grid
CtrlCmd+M Toggle marker CtrlCmd+. Toggle pin
CtrlCmd+Backspace Clear/delete selected cards CtrlCmd+Alt+N Toggle notifications
CtrlCmd+Space Improve timetable CtrlCmd+Shift+Space Generate from scratch
CtrlCmd+P Print timetable CtrlCmd+Shift+P Print individual timetables
CtrlCmd+Alt+Shift+P Publish to the Web CtrlCmd+U My Profile
CtrlCmd+Alt+I Timetable info CtrlCmd+Alt+M Merge timetable
CtrlCmd+Alt+O Application options F1 User guide

Frequently Asked Questions

General questions

Begin by watching our "Getting Started" tutorials, which have garnered over 150K views on YouTube. These brief videos provide an overview of the basics, offering the equivalent of a week's worth of training seminar content that you can watch at your own pace. They also serve as a great demonstration of the software's capabilities.

Additionally, you may want to explore automatically generated examples and search the user guide for specific topics of interest, such as "part-time teacher", "lunch", "clip" and similar. The user guide is also available in PDF format for your convenience.

If you have any questions, please don't hesitate to contact us. We're here to help!

The app is suitable for various educational organizations including:

  • Kindergarten, elementary or primary schools
  • Junior/middle/high or secondary schools
  • International schools
  • Private schools, such as language, art, music, dance and special education schools
  • Campus schools
  • Universities

Due to its flexibility, the app can be used for scheduling:

  • School camps
  • Teacher duties
  • Exams
  • Courses
  • Online events, conferences...

However, there are scenarios in which the app has limited capabilities or is not helpful. For instance, American college may require different scheduling software. Also, the app won't assign activities for you. Instead, users have full control over managing activities and the app helps in finding the optimal time slots for already assigned activities by resolving conflicts and constraints such as forbidden positions for part-time teachers and similar. The app will help you to quickly change allocation (via bulk edit) and try different options to see what works for you, but again, it won't do any assignment for you. The only exception is when specifying Alternative rooms, in such cases, if the desired room is unavailable, the generator will attempt to allocate the activity in alternative rooms.

When in doubt, please contact us, and tell us more about your scheduling requirements.

In order to evaluate some printing/exporting options you need to open one of our examples. Apart from that, there are no limitations.

There is no need to create multiple accounts. Instead:

  1. Choose Share > Share with others to manage people who can access school timetables:
    • The following roles are available: Owner, Creator and Viewer
  2. Alternatively, choose Share > Publish to the Web to publish timetables online

Data questions

Yes, you can. You can refer to the K-12 example for an all-in-one timetable. Additionally, you may choose to create custom views for lower, middle and high schools. If needed, explore options for different period intervals for specific days or grades.

Alternatively, if combining all levels into one timetable seems cumbersome, you can create separate schedules for lower, middle, and high schools. Additionally, there's an option to merge timetables later to address potential conflicts with shared teachers or rooms.

Familiarize yourself with options for implementing different period intervals for specific days or grades. For instance, you can utilize custom periods, as demonstrated in the K-5 example.

Set the number of periods per day to the maximum value and then utilize Forbidden position marker to restrict positions that are not needed.

Refer to the 15-minute interval example. Essentially, add periods with 15-minute intervals and while adding activities choose Triple length for those lasting 45 minutes (3 * 15min = 45min). Utilize horizontal zoom if dealing with numerous days/periods.

  1. Choose Manage > Activities and click Add
  2. Utilize More... and Groups to add activities involving multiple teachers, classes, groups or rooms.

For further information, refer to the documentation on activities.

No, you won't lose any data. Timetablers can collaborate on the same timetable simultaneously and all saved changes will be synchronized and merged across any device you or your colleagues might be using.

Generator questions

  1. Switch to teacher master view
  2. Use Forbidden position marker to draw forbidden positions when a part-time teacher is not available

For additional information, consult the documentation on markers.

Clip cards to ensure they are scheduled together.

The objective is to generate an error-free timetable. Many errors and warnings can be easily resolved. For instance, conflicts can be resolved by pinning conflicted/rotated cards or by excluding specific resources. Class gaps can be resolved by marking the gap as forbidden using the Forbidden position marker.

Refer to the documentation for more details on notifications and how to resolve them.

The generator is designed to continually strives to find optimal solutions despite challenging constraints. If there's no discernible progress for a few seconds or so, consider stopping the generator and revising constraints or data.

Refer to the documentation for more information on the generator and its priorities.

Sales questions

  1. Saving changes is disabled
  2. Your account may become locked after a period, preventing you from logging in
  3. Eventually, your data will be deleted

To continue from where you left off, you'll need to purchase the software.

You can find the prices on the home page. We offer special discounts, up to 40%, for multi-year purchases. Simply select a billing term by adjusting the year slider located below the Basic and Premium plans.

Yes. Plans are based on the total number of unique teacher names across all created timetables.

Please contact us directly for pricing details. Generally, the price is proportionally higher - for example, for 150 teachers, it would be 1.5 times the price of the Premium plan. Similar discounts apply for multi-year purchases.

Yes, discounts are offered for multi-year purchases. To take advantage of special discounts, up to 40%, select either the Basic or Premium plan, then choose your billing term by adjusting the year slider below.