Time Off in Slack & Microsoft Teams: The Guide
How to request, approve, and track time off in Slack and Microsoft Teams as your team grows, and how to choose between a simple time off bot and a real leave system behind the chat.
Your team already lives in Slack or Microsoft Teams. They post standups there, share files there, decide things there. So when someone wants a week off, why are they emailing a manager, filling out a form, or pinging HR in a separate app nobody remembers to open?
This guide covers how time off works inside Slack and Teams as your team grows: requesting, approving, and tracking PTO or annual leave without leaving the chat your people already use. We'll show what a good workflow looks like, where Slack and Teams differ, and how to tell a thin notification bot apart from a real leave system sitting behind the chat.
Why time off belongs where your team already works
Every extra app is a tax on adoption. The leave tool that lives in a separate dashboard nobody logs into is the leave tool that quietly turns back into a spreadsheet within a month.
When time off requests and approvals happen in Slack or Teams, three things change for a growing team:
- Requests actually get submitted. People ask for leave in the same place they already chat. No new login, no bookmarked URL they forget.
- Approvals stop being a bottleneck. A manager taps Approve or Decline on a message instead of hunting through email. Less context-switching means faster turnaround.
- Everyone can see who's out. A daily digest in a channel beats six people asking "is Sarah off this week?" in DMs.
That's the whole pitch for chat-based leave: the friction that makes leave tracking fail at 10, 50, or 150 people is the friction of asking everyone to go somewhere else. Remove it and the process runs itself.
TimeLeaf's Slack and Microsoft Teams integrations are available on the Professional plan and above. The sections below describe how that workflow runs end to end.
How does requesting time off in Slack work?
An employee requests time off by submitting a leave request, choosing a leave type, dates, and whether it's a full day, multiple days, or a half day if your policies allow it. They get a confirmation message in Slack, and their manager gets an interactive approve/decline message to act on. The balance isn't deducted until the request is approved.
Here's what happens under the hood. When you connect Slack, TimeLeaf matches Slack users to employees by email, so the request routes to the right person automatically. Employees can request any leave type you've defined (vacation, sick, personal, parental, unpaid, bereavement, jury duty), and each request carries a status of Pending, Approved, Declined, or Cancelled.
The balance behaviour matters and trips up a lot of tools. With TimeLeaf, the balance is deducted on approval, not on request. If someone asks for five days and the manager declines, nothing is taken. If an approved request is later cancelled, the balance is restored. No manual correction, no negative-balance surprises.
For the full step-by-step on connecting your workspace and configuring the bot, see how to set up a Slack PTO tracker.
How do managers approve time off in Microsoft Teams?
When an employee requests leave, their direct manager receives an approval notification in Teams and can approve or decline it right there. If there's no direct manager assigned, the request falls back to HR. The balance is deducted only once the request is approved.
Approval routing is configurable per leave type, and a growing org usually needs more than a single rubber stamp. TimeLeaf supports four routing types:
- Direct manager. The default. Routes to the requester's manager, falls back to HR if none is set.
- Multi-level. Escalates to a higher approver above a day threshold you set, so a half-day waved through goes one place and a three-week request goes up the chain.
- Designated approver. A specific person approves a specific leave type (useful for parental or medical leave).
- Auto-approve. For leave types you don't want to gate at all.
A few things keep approvals from stalling. You can set approval delegation for date ranges, so when an approving manager is themselves on holiday, requests reroute instead of piling up. And TimeLeaf sends reminders after 48 hours, then escalates after 5 days if a request is still sitting (both configurable). For a deeper look at building the routing, read the Teams approval workflow guide and our Microsoft Teams leave management walkthrough.
Note that multi-level approval is a Professional-plan capability; fully custom approval workflows are Business plan and up.
Who's off today? Daily digests and the team calendar
The single most useful thing chat-based leave does is answer "who's off?" without anyone asking. TimeLeaf posts a daily digest (by default at 8:00 AM) to Slack or Teams showing who's out that day, and you can route absence notifications to a dedicated team channel.
Behind the digest sits a shared team calendar with an in/out/upcoming view. On higher plans it goes org-wide, and it syncs both ways with the tools your team already keeps open:
- Google Calendar and Outlook sync, so an approved holiday shows up as an all-day event on personal and team calendars.
- A public iCal feed you can subscribe to from anything that reads calendars.
- Optional automatic Outlook Out-of-Office replies when someone's leave starts, if you connect Microsoft 365.
For growing teams the digest is what kills the "I didn't know they were out" coverage gaps. See the who's-off-today Slack digest setup for how to configure timing and channels.
Slack vs Microsoft Teams: does the workflow differ?
The core workflow is the same in both: employees request leave, managers approve or decline from an interactive message, employees get a confirmation, and a daily digest shows who's out. The difference is in the surrounding integrations each platform unlocks, not in how requesting and approving works.
Where they diverge is the ecosystem each one plugs into:
- Slack gives you interactive approve/decline DMs to managers, confirmation messages to employees, the daily digest, and an optional team absence channel. Users are matched to employees by email.
- Microsoft Teams adds the Microsoft 365 stack: Entra ID (Azure AD) directory sync that re-syncs every 6 hours to keep your employee list current, SSO via Microsoft account, Outlook calendar sync for all-day leave events, and optional automatic Out-of-Office replies.
If your company runs on Microsoft 365, Teams is the stronger fit purely because of the directory sync and SSO. You onboard and offboard people in one place and TimeLeaf keeps up. If you're a Slack shop, you get the same request-and-approve loop plus Google Workspace directory sync and Google Calendar sync, and approval cards can also post to Google Chat spaces if part of your org lives there.
Either way, the part your employees touch (ask for time off, get an answer) looks and feels the same.
PTO, annual leave, holiday: same workflow, your wording
US teams say PTO and time off. UK and EU teams say annual leave and holiday. The workflow is identical. What changes is the label, the allowance rules, and the public-holiday calendar behind it. TimeLeaf lets you define all of that per policy, so the tool speaks your team's language rather than forcing one.
Leave policies are where the regional differences actually live:
- Per-policy rulesets like "Full-time UK" or "Part-time US," each with its own allowance.
- Fixed or accrued allowance, accruing monthly, on the hire anniversary, or pro-rated, accruing at the start of the period by default, switchable to end-of-period.
- Carryover set to none, unlimited, or capped.
- Working-days and public-holiday calendars, so a UK bank holiday or a US federal holiday isn't counted against someone's balance.
- Advance-notice minimums and required documentation per type, plus blackout periods for peak seasons.
Assign policies per employee or in bulk, and a mid-year reassignment recalculates the balance for you. If you're hiring across the UK and US from one account, this is what keeps "holiday" and "PTO" running side by side without a second system. UK teams running staff holiday booking through chat may also want our UK staff holiday booking guide, and anyone formalising allowances should start with how to set up leave policies.
One honest caveat: blackout periods and overlapping requests are flagged and the manager is notified, not hard-blocked. TimeLeaf warns so a human can make the call, rather than silently rejecting a request someone genuinely needs.
What you need before you connect Slack or Teams (Professional plan and up)
The Slack and Microsoft Teams integrations require the Professional plan ($90/month) or above. The Starter plan ($50/month) covers leave management, the team calendar, email notifications, CSV export, blackout periods, and GDPR tools, but chat integrations, directory sync, calendar sync, and SSO start at Professional.
Here's the practical checklist before you connect:
- A Professional, Business, or Enterprise plan. Every plan includes 10 employees, then a flat per-extra rate (+$9/employee on Professional). See pricing for the full breakdown.
- Admin access to your Slack workspace or Teams tenant to authorise the app.
- Email addresses that match. Slack matches users to employees by email, so make sure your employee records use the same addresses as Slack or Microsoft 365.
- Optionally, your directory. Connect Azure AD (Entra ID) or Google Workspace and TimeLeaf auto-syncs employees, teams, and org structure, re-syncing every 6 hours. Directory write-back to your IdP is Enterprise-only; read sync is Professional and up.
If you're weighing Starter against Professional purely for chat, the deciding factor is simple: Starter is leave-only and notifies by email, while Professional is where time off actually moves through Slack or Teams.
Setting it up in under 30 minutes
Most teams get from signup to a working time off flow in Slack or Teams in under half an hour. The order that works:
- Start a trial and add your team. Every plan has a 7-day free trial (a credit card is required). Bulk-import employees from CSV, or connect Azure AD / Google Workspace to pull them in automatically.
- Set up at least one leave policy. Pick fixed or accrued, set carryover, attach the right public-holiday calendar. Assign it in bulk.
- Define your approval routing. Direct manager is the default and fine for most teams; add multi-level or a designated approver per leave type if you need it.
- Connect Slack or Microsoft Teams. Authorise the app, confirm email matching, pick the channel for your daily digest, and decide on an absence channel.
- Test one request end to end. Submit a request as an employee, approve it as a manager, and confirm it lands on the calendar and the digest.
The docs walk through each step with screenshots. The whole point is that once it's wired up, you stop touching it, and requests and approvals just flow through the chat.
Choosing a tool: bot-only vs a real leave system behind the chat
This is the decision that actually matters. A lot of "time off bots" are exactly that: a Slack app that collects a request and pings a manager, with no real system of record behind it. They look fine in a demo and fall apart at scale.
Ask these questions of any tool:
- Does it track balances correctly? Accrual, carryover, pro-rating, half-days, and deducting on approval (not on request) are the difference between a tracker and a glorified form.
- Can it handle two terminologies and two holiday calendars? If you're hiring across the US and UK, "PTO" and "annual leave" need to coexist with the right working-days and public-holiday rules.
- Does the chat integration sit on a real platform? With TimeLeaf, Slack and Teams are a front-end onto leave policies, a team calendar, directory sync, time tracking, overtime, and contracts, not a standalone bot. The same plan that runs your time off also runs time tracking and timesheets, shift scheduling, and payroll-ready CSV or QuickBooks/Xero export.
- Does it grow with you? Multi-level approvals at Professional, fully custom workflows at Business, directory write-back at Enterprise, and the workflow shouldn't cap out at 20 people.
If a bot-only tool covers a five-person team with one leave type, fine. But the teams this guide is for, scaling from 10 toward 200, outgrow that fast. For a direct comparison against a popular bot-style option, see TimeLeaf vs Vacation Tracker.
The short version: put time off where your team already works, but make sure there's a real leave system behind the chat. Start a free trial and have it running in Slack or Teams before lunch.
Ready to simplify leave management?
Start your 7-day free trial. Set up your team in under 30 minutes.
Start Free Trial