2.5Resource Calendars & Availability
The essentials in 30 seconds
- Each work resource has its own calendar (hours, working days, leave), separate from the project calendar, and an availability that can vary over time.
- Leave and absences are declared as exceptions in 'Change Working Time' — far more reliable than fiddling with dates by hand.
- Variable availability is defined through ranges with different maximum units (e.g. 100% one month, 50% the next); without these settings, the schedule is too optimistic.
Running mini-case — Meriem models real availability
Meriem, project manager at an engineering & construction (BTP) company in Algiers, knows that her teams are not available at 100% all the time. One colleague works part time (60%), another goes on leave for two weeks in August, and a reinforcement will only be there next month. She sets the maximum capacity of the part-timer in the Resource Sheet, then declares the leave via Project > Change Working Time, choosing the resource and setting an exception over the period. For the reinforcement, she defines an availability range (0% this month, 100% the next). She checks that no task is scheduled during an absence. Without these settings, Project would have assumed everyone was available all the time and produced an over-optimistic schedule.
Standalone case for this section: it comes back in the lesson, the diagram, the script and the 48h challenge of section 2.5.
1. Availability that varies
Resources are not always available at 100%, all the time. Each work resource has its own calendar (hours, working days, leave) and an availability that can vary over time. A colleague working part time (60%), a person on leave for two weeks, a reinforcement available only next month: all this is set up so that Project plans realistically.
2. Where to set availability
You set a resource's calendar via Change Working Time (choosing the resource): there you declare exceptions (leave, absences). For variable availability, the resource sheet lets you define ranges with different maximum units.
3. Project and resource combine
The project calendar gives the general rules (working days, weekends, holidays) that apply by default; the resource calendar adds a person's specifics. Project combines the two: a task is scheduled only when the project AND the resource are available. Without these settings, Project assumes everyone is available all the time and produces an over-optimistic schedule.
🔎 Concrete example — 🔎 Concrete example — Project + resource combine
Two calendar levels: Meriem combines general rules and specifics.
Project: Mon-Fri (general rules).
Karim (resource calendar): not on Wednesdays.
-> his tasks skip Wednesdays ON TOP OF weekends.
Reading : project (collective) + resource (individual) combine
Reflex : declare leave as an exception, do not 'hack' the dates
Reading: a task is scheduled only when the project AND the assigned resource are available.
Lesson: credible dates give reliable overload detection; declare leave as an exception, do not fiddle with dates.
Section vocabulary
- Resource calendar
- Definition of the days and hours worked and the absences specific to a resource, separate from the project calendar.
Simple example: Meriem sets 'not on Wednesdays' in Karim's calendar.
What it is not: collective public holidays defined at project level.
Reflex: specifics of a person → resource calendar.
- Availability
- Share of a resource that can actually be mobilised (full time, part time), which may vary by period.
Simple example: Meriem sets a colleague's part time to 60%.
What it is not: the resource's daily cost rate.
Reflex: how much can be mobilised → availability.
- Calendar exception
- Declared deviation from standard working time (leave, specific holiday, particular hours).
Simple example: Meriem declares two weeks of leave in August as an exception.
What it is not: an ordinary weekend, already excluded by the calendar.
Reflex: leave or absence → an exception.
- Variable availability
- Different maximum units over date ranges (e.g. 100% one month, 50% the next).
Simple example: Meriem defines 0% this month and 100% the next for a reinforcement.
What it is not: a single constant capacity over the whole project.
Reflex: capacity that changes over time → ranges.
- Maximum units
- A resource's maximum capacity over a period; exceeded, it is an overallocation.
Simple example: Meriem caps the part-timer at 60% to avoid an overload.
What it is not: the units actually assigned to a given task.
Reflex: cap over a period → maximum units.
In practice — In practice — Managing resource availability
- For a part-time resource, set its maximum capacity (e.g. 60%) in the Resource Sheet, like Meriem.
- Declare leave and absences via Project > Change Working Time (selecting the resource) as exceptions.
- For availability that changes, define date ranges with different maximum units (resource sheet).
- Check that the schedule takes these unavailabilities into account (a task is not scheduled during leave).
Step-by-step script — setting availability like Meriem (4 min)
1) In the Resource Sheet, set the part-timer's maximum capacity to 60%. 2) Open Project > Change Working Time, select the resource. 3) Set a two-week exception for the August leave (marked as non-working). 4) For a reinforcement, define a range: 0% this month, 100% the next. 5) Check that none of this person's tasks is scheduled during an absence.
The project calendar (collective) and the resource calendar (individual) combine: a task moves forward only if both are open.
Copy-paste template — my availability per resource
Project : Mon-Fri (general rules)
Resource : own calendar + max capacity
Part time : max capacity 60%
Leave : exception (Change Working Time)
Variations : ranges (0% this month, 100% the next)
Rule: project AND resource must be available
Part time
Meriem sets a colleague's maximum capacity to 60% in the Resource Sheet.
Declared leave
Meriem sets a two-week exception in August: the person's tasks shift.
Upcoming reinforcement
Meriem defines a range at 0% this month and 100% the next for a reinforcement not yet available.
Non-working day
Meriem removes Wednesday from Karim's calendar: his tasks skip that day in addition to weekends.
✓ Best practices
- Set the maximum capacity for part-timers.
- Declare leave and absences as exceptions.
- Use ranges for variable availability.
✗ Common pitfalls
- Believing everyone is available at 100% all the time.
- Fiddling with dates instead of declaring leave.
- Confusing the project calendar (collective) with the resource calendar (individual).
Key takeaways
- Each resource has its own calendar (hours, working days, leave), separate from the project calendar.
- Availability can vary over time (part time, ranges with different max units).
- Leave and absences are declared as exceptions in 'Change Working Time'.
- Without realistic availability, Project assumes everyone is available all the time (over-optimistic schedule).
48h challenge — apply it tomorrow
Like Meriem, model an unavailability in your schedule: set a resource's maximum capacity to 50%, then declare a one-week leave exception via 'Change Working Time'. Check that a task where the resource is assigned shifts during that absence, and explain in one sentence why the project calendar and the resource calendar combine.
- I can set the maximum capacity of a part-time resource.
- I declare leave as exceptions instead of fiddling with dates.
- I understand how the project calendar and the resource calendar combine.
Frequently asked questions
How do I handle a person's leave in the schedule?
Declare it in their resource calendar: Project > Change Working Time, select the resource, add an exception covering the absence. Project will then schedule no work for that person during that period, and the tasks where they are assigned will shift.
What is the difference between the project calendar and a resource calendar?
The project calendar sets the general rules (working days, weekends, holidays); the resource calendar adds a person's specifics (part time, leave, hours). Project combines the two: a task is scheduled only when both are available.
How do you model a person working part time or on leave?