Support Team Scheduling: Staffing, Shifts and Business Hours
Support team scheduling with a worked example: compute agents needed from volume, handle time and occupancy, plus shift patterns, holidays and time zones.
In this article
A support schedule usually starts as a guess: "we get a lot of chats around noon, so put more people there." That works until a holiday week or a new campaign, and then someone is answering 40 chats alone at 12:30. Support team scheduling gets easier once you turn the guess into a short calculation you can redo each month.
This guide walks through one worked example with every number shown, then covers shift patterns, weekends and holidays, time zones, and what to tell customers when nobody is online.
Step 1: Work out how many agents you need
You need three inputs from your own reports:
- Volume: conversations (chats, tickets, messages) per day, ideally for a typical weekday and a typical weekend day.
- Handle time: the average agent minutes spent per conversation, including the wrap-up after the customer leaves.
- Occupancy: the share of logged-in time an agent spends actually working on conversations. Aiming for 100% means a queue forms every time two chats arrive together, so most teams plan for something lower. We use 75% below.
Add one more: shrinkage, the share of paid time when an agent is not available (breaks, meetings, training, sick leave, holidays). We use 30%.
The worked example
Assume a weekday with 240 conversations, an average handle time of 12 minutes, and opening hours of 9:00 to 18:00 (9 hours).
| Step | Calculation | Result |
|---|---|---|
| Workload | 240 × 12 min = 2,880 min | 48 hours of work |
| Agents busy on average | 48 h ÷ 9 open hours | 5.33 |
| Agents logged in at 75% occupancy | 5.33 ÷ 0.75 | 7.1 |
| Paid hours with 30% shrinkage | (7.1 × 9 h) ÷ 0.70 | about 91 hours |
| Eight-hour shifts per day | 91 ÷ 8 | about 11.4 |
So roughly 11 to 12 shifts per weekday, even though only about 7 people are logged in at any moment. The gap is breaks, meetings and leave, and it surprises almost everyone the first time.
Check the busiest hour separately
An average hides the peak. Suppose the busiest hour carries 15% of the day:
- 240 × 0.15 = 36 conversations
- 36 × 12 min = 432 min = 7.2 hours of work in one hour
- At 85% maximum occupancy for a peak hour: 7.2 ÷ 0.85 = 8.5, so 9 agents logged in
Seven people, the daily average, would be at 7.2 ÷ 7.1, about 101% of capacity. The queue grows all hour. This is why the same total hours can still produce slow replies if they are spread flat across the day. Read the hourly distribution from your own history; 15% is only an assumption for this example.
The weekend version
Say a Saturday has 96 conversations and you open for 6 hours (10:00 to 16:00):
- 96 × 12 min = 1,152 min = 19.2 hours
- 19.2 ÷ 6 = 3.2 busy agents, ÷ 0.75 = 4.3
- Plan 5 people logged in
If an agent handles two chats at once, use the real agent minutes per conversation you see in your reports, not the elapsed chat length. Every number here depends on your team, so replace ours with yours.
Shift patterns that work for small and mid-size teams
| Pattern | How it works | Good for | Watch out for |
|---|---|---|---|
| Fixed shifts | Same hours every week | Teams where people want routine | Evenings and weekends fall on the same people |
| Staggered starts | Starts at 9:00, 10:00 and 11:00 | Covering a midday peak without a full extra shift | Hand-over notes at each overlap |
| Early/late split | One group 8:00–16:00, one 11:00–19:00 | Longer opening hours | Thin coverage at the very start and end |
| Rotating weekends | One in every three or four weekends | Fairness | Publish the rota at least a month ahead |
| Four 10-hour days | Longer days, fewer of them | Long opening hours | Fatigue in the last two hours of the shift |
Whatever you choose, schedule the busiest hours first and breaks second, and keep one person per shift responsible for the queue, so it is clear who is watching it.
Weekends and holidays
- Keep a holiday calendar for the whole year and agree it before the year starts. Include the days customers are off too, since some sectors get busier then.
- Expect a backlog on the first working day after a closure. Add people there, not on the holiday itself.
- Decide per holiday whether you are closed, on reduced hours or fully open, and tell customers in advance.
- Count holidays as shrinkage in your calculation, otherwise the roster looks fine on paper and falls short every December.
Time zones
If customers and agents are in the same region, state your hours and the time zone name once and everywhere: widget, email footer, help page. If you serve several regions, you have two options. Either extend hours with a shift in the second region, or stay with one set of hours and make the wait clear. A half-way option, being "sometimes available", confuses people more than either.
When you write hours, include the zone ("Monday to Friday, 9:00 to 18:00 Tehran time") and avoid "business hours" without a clock. Check daylight saving changes twice a year if any of your teams observe them.
What to tell customers outside hours
Tell them three things: their message arrived, when a person will reply, and what to do if it is urgent. For ready-to-copy wording for evenings, weekends and holidays, see after-hours messages for live chat. If you promise response times, make the SLA clock count only open hours, as described in SLA in customer support.
Business hours and holidays in Hodhod
Hodhod does not build your roster, which stays in your spreadsheet or HR tool. It handles the customer-facing side:
- Business hours per inbox: set days, hours and time zone for each inbox, so website chat and Telegram can have different hours.
- Holidays: mark days when the team is away so customers see the right status.
- After-hours mode: with "Ticket outside business hours", the chat becomes a ticket form when you are closed, so no message is lost.
- SLA and automation: an SLA can count only during business hours, and routing and escalation rules can be limited to them.
- Reports: "Agent workload" and "Unanswered conversations" show whether your plan matches reality. See 10 customer support KPIs.
A monthly scheduling checklist
- Pull last month's volume per weekday and per hour.
- Update average handle time and shrinkage.
- Recompute weekday, peak-hour and weekend staffing with the formula above.
- Compare against the "Unanswered conversations" report for the busiest hours.
- Publish the rota, with holidays, at least four weeks ahead.
- Confirm business hours and holidays in each inbox match the rota.
To see business hours, routing and reports working together, request a free demo. More on live-chat response times: live chat response time.
Frequently asked questions
How many agents do I need for a given volume?
Multiply conversations by average handle time to get hours of work, divide by open hours, then by your target occupancy, and finally account for shrinkage. In our example, 240 conversations at 12 minutes needs about 7 agents logged in and 11 to 12 shifts per day.
What occupancy should I plan for?
It depends on your channel and team. Chat tolerates higher occupancy than work that needs deep focus, but a team planned at full occupancy has no room for spikes. We used 75% for the day and 85% for a peak hour as examples; test your own numbers against your queue reports.
Do I need 24/7 support?
Not necessarily. Many teams answer clearly within set hours, collect messages after hours, and reply first thing next morning. If your reports show a steady stream of overnight messages, consider extending hours or adding a late shift.
How do I schedule across time zones?
Pick the hours you can really cover, state them with the time zone name, and use a shift in the other region only if the volume justifies it. Hodhod lets you set the time zone per inbox.


