Hospital · 9 min read · 2026-10-18
How to build a hospital department's on-call schedule: a step-by-step method.
To build a hospital department's on-call schedule, you follow seven steps in this order: count the shifts, work out each share, collect unavailability, place the weekends, fill the nights, check, and publish. I apply them here to a fictional department of eight physicians, over a two-month period from January 4 to February 28, 2027.
Co-founder · product and user experience
In short
- The schedule is built in seven steps: count the shifts, work out each physician's share, collect unavailability, place the weekends, fill the nights, check, publish.
- You start by counting the weeknights and weekends to cover. Each physician's share is then worked out from their practice time.
- Weekends go before nights, because there are few of them and that is where gaps between physicians show.
- Eight weekends do not divide evenly among eight physicians when one is half-time. A twelve-month tally takes care of that.
- After the period, you update the tally with what was actually worked, replacements included. That table is what you use to build the next period.
Before the first grid
To follow this method, the department needs four written rules: who can take each type of call, how much rest after a night, the maximums (for example one weekend in three) and how a replacement works. They are decided once a year, in a meeting, not while building the grid. If yours do not exist yet, our article on hospital on-call schedules explains who sets them, between the chief of department and the CMDP. The one on fair distribution shows how to write them on a single page.
Holidays get decided at that point too. Every department handles them differently: some count them separately, others have a rotation over several years, others treat them as a longer weekend. I leave them out of the example.
The example is a fictional department of eight physicians: seven full-time and Dr. H half-time. The schedule is built in two-month periods, and the one we will build runs from Monday 2027-01-04 to Sunday 2027-02-28. There is no holiday in those dates.
The seven-step method
1. Count the shifts in the period
Start from the shifts to cover, not the physicians. Each type of call needs a name every day: ward call, home call, consult call. A department with three of them builds three schedules, with the same physicians, and counts each one separately.
Our department has a single type of call, split in two. Monday to Thursday, a night shift from 5 p.m. to 8 a.m. From Friday 5 p.m. to Monday 8 a.m., a weekend block covered by one person. Over eight weeks, that gives this.
| Column | Shifts | Detail |
|---|---|---|
| Weeknights | 32 | Four nights a week for eight weeks |
| Weekends | 8 | One block per Friday, from January 8 to February 26 |
Keep the two columns separate. A weekend on call weighs a lot more than a Tuesday night, and if you add them up, you can no longer see who did what.
2. Work out each physician's share
Seven full-time physicians and one half-time make 7.5 full-time equivalents. Thirty-two nights divided by 7.5 is 4.27 nights per full-time equivalent, which cannot be handed out as is. The simplest approach is to give everyone the whole part of their share: four nights for each of the seven, two for Dr. H. That makes 30 nights. The two left over go to the two physicians furthest behind in the nights tally, using the same calculation as for weekends.
For weekends the gap matters even more, because there are so few. The department keeps a tally over the last twelve months: 52 blocks before the period starts. With the period's eight, that makes 60 blocks for 7.5 full-time equivalents. By the end of February, each full-time physician should therefore have done eight, and Dr. H four.
| Physician | Practice time | Weekends, last 12 months | Target at February 28 | Blocks to give |
|---|---|---|---|---|
| Dr. A | Full-time | 7 | 8 | 1 |
| Dr. B | Full-time | 7 | 8 | 1 |
| Dr. C | Full-time | 6 | 8 | 2 |
| Dr. D | Full-time | 7 | 8 | 1 |
| Dr. E | Full-time | 7 | 8 | 1 |
| Dr. F | Full-time | 7 | 8 | 1 |
| Dr. G | Full-time | 8 | 8 | 0 |
| Dr. H | Half-time | 3 | 4 | 1 |
The last column adds up to eight, the number of blocks in the period. Without the tally, you would have given one block to each full-time physician and the eighth to anyone. With it, Dr. C, who did one fewer than the others last year, gets two. Dr. G, who did one more, gets none. Dr. H did three weekends, the lowest number in the table, but is half-time: just one block behind, like most of the others.
3. Collect unavailability before a deadline
An unavailability is a date when the physician cannot be on call: approved leave, a training course, a clinic at another site. A preference, like "I'd rather avoid Thursdays", is handled afterwards, if there is room. If you ask for both in the same email, you end up negotiating every cell of the grid.
Announce two dates to the whole department at the same time. For our period, requests close on Monday 2026-11-23 and the schedule comes out on Monday 2026-12-07, four weeks before the first shift. A request that comes in after November 23 is not refused, but it does not change the grid: the physician has to find a swap with a colleague.
In the example, two unavailabilities arrive on time. Dr. C is at a conference the weekend of January 22. Dr. G is on vacation from February 8 to 14.
4. Place weekends first
Weekends go before nights because there are fewer of them and less room to move them around. Follow the last column of the table. Dr. C gets two. They are unavailable on January 22 and the department allows at most one weekend in three, so they take, for example, January 8 and February 5. Dr. B takes January 22, Dr. F February 19, and the other four blocks go to Drs. A, D, E and H.
Dr. G has no weekend in these two months, since they had done one more than the others. By the end of February, all eight physicians are even, given their practice time, and the next period starts from an even tally.
5. Fill the weeknights
Nights are placed last: there are many of them, so more room to arrange them. Each physician gets the share worked out in step 2, without going over the department's maximums. With four or five nights per physician over eight weeks, a rule like "never two nights in the same week" is easy to respect.
Watch for nights right next to a weekend on call. Dr. B's block ends Monday January 25 at 8 a.m. Don't give them the night of Monday the 25th, or Thursday the 21st just before. Dr. G, on vacation the week of February 8, does their four nights in the other seven weeks.
6. Check the grid physician by physician
When you read the calendar day by day, you are mostly checking that every shift has a name. To see what each physician is going to go through, you have to read their whole row. That is where the mistakes turn up. For each of the eight physicians, ask four questions.
- Did they get their share in every column?
- Is the rest rule respected after every night, given what they have the next day (outpatient clinic, operating room, teaching)?
- Are they over a department maximum, counting the previous period?
- Was an unavailability received on time overlooked?
The third question often gets missed. Dr. C starts the period with the January 8 block. If they had also done the last weekend of December, each grid would respect the one-weekend-in-three rule on its own, but not the two put end to end. So look at the end of the previous period too.
7. Publish, then update the tally
Publish the schedule on the announced date, December 7 in the example, with the swap rule on the same page: who approves a swap, and who the shift counts for. The simplest version: the shift counts for whoever works it, in the column of the shift being covered. Avoid swapping a weekend for two nights. It brings back the problem of adding columns together, and most departments end up banning it.
On Sunday February 28, when the period ends, record in the tally what was worked, not what was planned. If Dr. F gave their February 19 block to Dr. A, the weekend goes in Dr. A's column. That updated table is what you use to work out the shares for the next period. It also means nobody has to rely on memory. Our article on on-call shift replacement explains how to handle a withdrawal without making ten phone calls.
The mistakes we see most often
The most common one is filling the calendar in date order. You start on January 4, place the first week's nights, then Friday comes and the weekend goes to whoever is still free. Nobody looked at the tally, and the same physicians often end up with the weekends. Placing weekends first takes no extra time.
The second is keeping the tally in your head. After a few years, the chief of department knows roughly who did what. The day a physician shows up at a meeting with their own count and the numbers don't match, nobody can settle it. An eight-row table, updated every period, avoids that discussion. Whether it lives in an Excel file or in software, our comparison of hospital on-call scheduling software in Quebec covers the options.
The third is accepting requests after the deadline. You then have to redo part of the grid, and the next time nobody bothers sending their unavailability on time. A late request is better handled with a swap between colleagues.
If your next period starts soon
No need to wait for January. Pull out the last twelve months of schedules, count each person's weekends and nights, and start from there. Old schedules are almost always enough. The first grid takes longer, mostly for working out the shares. From the second one on, the tally already exists.
- Count the shifts in the period. For each type of call, count the weeknights and the weekends to cover, separately.
- Work out each physician's share. Divide by the number of full-time-equivalent physicians, then adjust for each person's practice time. Whatever is left after the whole shares goes to the physicians furthest behind in the tally.
- Collect unavailability before a deadline. Leave, training, clinical work elsewhere. A request that comes in after the deadline is handled with a swap.
- Place weekends first. Give them first to the physicians who have done the fewest over twelve months, taking practice time into account.
- Fill the weeknights. Give everyone their share within the department's maximums, without putting a night right next to the same person's weekend block.
- Check the grid physician by physician. For each one: the share, the rest rule, the maximums (counting the previous period) and the unavailability.
- Publish, then update the tally. Publish on the announced date with the swap rule. When the period ends, record what was actually worked, replacements included.
Where Synchro fits in
Synchro follows this method every period. The department chooses what to balance (nights, weekends, and holidays if it counts them separately), and Synchro distributes the shifts accordingly, taking the tally and each person's practice time into account. Each physician writes their unavailability and preferences in plain language, in their own words. Rest rules and maximums are applied when the schedule is generated, not when it is proofread. When someone withdraws, the shift is offered to every eligible physician at once and counted for whoever takes it. Several types of call and several specialties can be managed in the same tool, each with its own eligible physicians.
The limits, to be clear. Synchro does not decide the department's rules: the types of call, the maximums, the rest rule and how holidays are handled remain the ones set by the chief of department and their team, within the CMDP's framework. Synchro does not calculate on-call pay, transmits no data to any provincial system and holds no patient data, only the physicians' schedule. The hospital offering is in beta, free during that phase, and we adjust it with each department that joins.
Further reading
- Hospital department on-call schedule: what differs from an FMG's
- Best on-call scheduling software for a Quebec hospital department: 8 tools compared in 2026
- How to distribute on-call shifts fairly in a medical team
- On-call shift replacement: escaping the phone cascade
- Hospital department on-call scheduling
- Obstetrics on-call schedule
- On-call scheduling software
Frequently asked questions about building an on-call schedule
How do you build a hospital department's on-call schedule?
In seven steps: count the shifts in the period for each type of call, work out each physician's share based on their practice time, collect unavailability before a deadline, place the weekends, fill the weeknights, check the grid physician by physician, then publish and update the tally. Weekends go before nights because there are fewer of them and that is where fairness is won or lost.
How do you calculate how many on-call shifts each physician should take in a period?
Divide the number of shifts in each column (weeknights, weekends) by the number of full-time-equivalent physicians, then multiply by each person's practice time. Everyone gets the whole part of their share, and the shifts left over go to the physicians furthest behind in the tally. With 32 nights and 7.5 full-time equivalents, that is four nights per full-time physician, two for the half-time physician, and two nights assigned by tally.
What do you do when weekends don't divide evenly among the physicians?
Count them over twelve months instead of over the period. A two-month period has eight or nine weekends, which rarely divides evenly by the number of physicians. Keep a tally for each person, work out how many each one should have done by the end of the period given their practice time, and give the weekends to whoever is furthest from that number.
How far ahead should an on-call schedule be published?
The department sets the lead time. What matters is announcing two dates and sticking to them: a deadline for unavailability, then a publication date early enough for swaps to happen before the period starts. For example, close requests six weeks before the start and publish one month before.
Who has the final say on a hospital department's on-call schedule?
The chief of clinical department. Section 189 of Quebec's Act respecting health services and social services (LSSSS) gives them the day-to-day administration of the department, which includes the on-call schedule. They exercise it within the general terms of the on-call system, which the CMDP elaborates under section 214 of the same act and the establishment's board of directors approves.
How much does Synchro cost for a hospital department?
Nothing for the entire hospital beta, with no user limit and every feature included. In return, the Synchro team asks for the department's feedback to adapt the product to the hospital setting.
Public sources cited: Act respecting health services and social services (LSSSS), CQLR c. S-4.2, section 189 for the day-to-day administration given to the chief of clinical department, which includes the on-call schedule, and section 214 for the CMDP's mandate to elaborate the on-call system's terms, approved by the board of directors. The department, physicians, weekend tally and unavailabilities described are examples built for illustration, drawn from observed situations, and are not identifiable real cases. Product names belong to their respective owners and this site is not affiliated with any of them.
About the author
Kamel Gorieze
Co-founder · product and user experience
Co-founder of Synchro. He works on the product, runs the demos and sets up new clinics.
Build your next period faster.
A demo with your types of call and your tally, free during the entire hospital beta.
Book a demo