The 60-second answer
Weekly business hours are not enough. Add an explicit holiday schedule with dated entries, set it two years out, give someone a one-touch closure override for storm days, and review the calendar every December. A statutory holiday is a weekday, and your system does not know the difference unless you tell it.
The failure nobody reports
It is 9am on Canada Day. A customer calls. The auto-attendant answers cheerfully, offers the usual menu, rings the sales group for thirty seconds, and drops them into a voicemail box belonging to someone on vacation. The caller assumes nobody wants their business, and they are not wrong to.
Nobody reports this, because the only people who experience it are outside the company. The staff who could fix it were not there. This is why after-hours routing is the single most under-maintained part of most phone systems: its failures are invisible from the inside.
A statutory holiday is a Tuesday. Your phone system agrees, and that is the whole problem.
Three schedules, not one
Reliable routing needs three layers, evaluated in order of priority. The signalling protocol carrying the call has no concept of time or business hours at all [4] — every bit of this lives in call control, which means it is yours to design.
- Manual override — highest priority. Someone flipped the closure switch this morning. Storm, power failure, funeral, burst pipe. Overrides everything below.
- Holiday schedule — specific dates. Overrides weekly hours. This is the layer most businesses are missing entirely.
- Weekly hours — the default. Open Monday to Friday, 8:30 to 4:30, closed otherwise.
With all three, the system is correct on ordinary days by default, correct on holidays because you dated them, and correct on unplanned days because a human said so. Missing any one layer produces a specific, predictable failure.
Building the holiday calendar
Start from the statutory list under the Canada Labour Code [1], and note the rule that matters most: when a general holiday falls on a day that is not a working day for the employee, the holiday is generally observed on an adjacent working day. The Interpretation Act carries a parallel rule for holidays falling on a Sunday, and also captures days appointed provincially [3]. Your greeting needs to reflect the day you are actually closed, not the calendar date of the holiday.
The federal statutory dates are a floor. Most businesses close on more days than the statute requires:
- Boxing Day, which is not a federal general holiday but is observed almost universally.
- December 24th afternoon — a half-day, which needs its own dated entry with a time.
- The stretch between Christmas and New Year, if you close.
- Provincial civic holidays — the first Monday in August under various names, New Brunswick Day among them.
- Truth and Reconciliation Day, observed by many employers whether or not it is statutory for them.
- Local shutdowns, inventory days, all-hands meetings.
CRA publishes observed dates year by year, which is the fastest cross-check when a date moves [2]. Enter each as a specific date rather than a rule, and enter two years' worth. Moving holidays — Good Friday, Victoria Day, Thanksgiving — are the ones that silently expire, because a schedule with only fixed dates looks configured while being wrong.
The override for the days you cannot plan
Storm closures are decided at 6:40am by whoever is awake, and that person is not the phone system administrator. Federal guidance on planning for disruption makes the general point well: the plan has to be executable by whoever is actually present [6].
So the override must be trivially usable. Dial a short code from any handset or a mobile, enter a PIN, and the whole call flow switches to a closed greeting. Something equally simple to switch back, plus a reminder if it stays on past the next business day, because the second failure mode is a closure toggle left on through Wednesday.
What the closed greeting should say
Four elements, in about fifteen seconds:
- That you are closed. Immediately, not after thirty seconds of menu.
- When you reopen, in words. "We reopen Tuesday at 8:30" beats "outside normal business hours," which tells a caller nothing they did not already suspect.
- What they can do now. Leave a message, use the website, book online.
- Genuine emergencies. An option that routes to the on-call person — routes to, not announces. A recorded greeting that reads out a personal mobile number is broadcasting personal information to every caller including automated ones, which sits badly against your safeguards obligations [5].
The edge cases that break schedules
The 4:31pm caller
Business hours ending at 4:30 means a call arriving at 4:31 hears the closed greeting, which is technically correct and commercially poor. Most businesses have someone at their desk until five. The fix is to end the auto-attendant's open window a little after the stated closing time, or to route late-afternoon calls to a small group of people who are reliably still there rather than to the full ring. Either way, decide it deliberately — the default is a hard cutoff at a minute nobody thought about.
Lunch
An office where everyone is genuinely away from 12:00 to 1:00 should say so. Ringing an empty room for thirty seconds before voicemail is worse for the caller than a greeting that states the hour and offers a message. This needs a mid-day closed window inside the weekday schedule, which many systems support but few are configured to use.
Time zones
If you serve customers across the country, remember the schedule runs in your zone. A British Columbia customer calling at 9am Pacific reaches an Atlantic office at 1pm — fine — but the same customer calling at 4pm Pacific reaches you at 8pm, closed. If western business matters to you, that is an argument for extending one department's hours rather than a scheduling bug.
The half-day that becomes a full day
December 24th closures tend to drift earlier as the day goes on. A dated half-day entry set to noon is usually wrong by two o'clock. This is exactly what the manual override exists for, and it is worth telling whoever is last out of the building that flipping it is part of locking up.
Per-department hours
One set of hours for the whole company is usually a simplification nobody asked for. Support running to 8pm, accounts closing at 4:00, and dispatch answering around the clock is a common shape, and each branch of the auto-attendant can carry its own schedule and its own closed behaviour. Callers reach a department that is honest about its own availability rather than the building's.
The December review
Once a year, thirty minutes: enter next year's dated holidays, remove last year's, confirm the moving dates, listen to every closed greeting to check the reopening language is still accurate, verify the emergency option still rings the right person, and confirm the override still works. Call your own main number after hours and on a weekend to hear what a customer hears.
At MapleReceptionist this sits inside the 30 to 60 minutes of monthly admin included with every band — $99, $219, $399 and $699 CAD per month at 10, 25, 50 and 100 extensions, plus HST. It is included deliberately, because a holiday schedule that requires a support ticket and a fee is a holiday schedule that will not get updated.
Bottom line
Weekly hours alone guarantee you will be wrong on the statutory calendar [1][3]. Add dated holiday entries two years out, give a non-technical person a one-touch closure override [6], say something useful in the closed greeting, and review it each December. Missed calls on the days you are closed are the ones you never hear about.