Most teams already live in Slack. Standups happen there. Project updates happen there. Client conversations happen there. So why is time tracking still happening somewhere else — in a separate app, a browser tab nobody bookmarks properly, or a spreadsheet that’s always three days out of date?
The short answer: it doesn’t have to be. Time tracking can happen directly inside Slack, in the same channel where the work is being discussed, with a single command that takes two seconds. This guide covers exactly how to do it — from setup to reporting — and why time tracking that lives where work lives gets used consistently in a way that standalone tools rarely do.
Why time tracking in Slack works when standalone tools don’t
The reason most time tracking implementations fail isn’t the tool — it’s the friction. Standalone time tracking apps require a context switch: you finish a task, you open a different app, you find the right project, you log the time. That process takes 30–60 seconds and requires enough discipline to do it every time, for every task, every day.
In practice, most people don’t. They log time in batches, reconstructing what they did from memory, at the end of the day or the end of the week. The data is inaccurate by design, and managers who try to use it for project planning or client billing quickly discover it doesn’t reflect reality.
Time tracking in Slack removes the context switch entirely. You’re already in Slack — you type the task description to start your work and send a brief message to your team, and you type a command to switch tasks or finish for the day. The time log is created as a natural byproduct of how you already communicate, not as an additional administrative burden on top of it.
The result is consistent, accurate, real-time time data — not because the team is more disciplined, but because the barrier to logging time is as low as the barrier to sending a Slack message.
How to set up time tracking in Slack
Time Bot is available from the Slack app directory. Adding it takes under two minutes.
Step 1 — Add Time Bot to your Slack workspace
Go to timebot.chat and click “Add Time to Slack.” You’ll be redirected to Slack’s OAuth flow to authorise the app. Time Bot requests only the permissions it needs to function — it does not read, copy, or store your conversations.
Step 2 — Configure your workspace settings
Once installed, access the settings dashboard at app.timebot.chat. The key settings to configure before inviting the team:
Working hours — set the start time for each timezone represented in your team. This is what /t online uses to show who’s currently working and in which timezone.
Daily reports — enable the email report and add the addresses that should receive it. The daily report arrives at a scheduled time each day with a breakdown of what each team member worked on, organised by project.
Notifications — set the maximum task and break duration before Time Bot nudges someone that they may have forgotten to switch tasks. Configurable from 30 minutes to unlimited.
Permissions — decide who can edit task and break durations after the fact. Managers typically have full edit access; team members can be granted it if needed.
Step 3 — Set up projects and channels
Time Bot associates tasks with the Slack channel where the /t command is typed. If your team uses #project-alpha for one client and #project-beta for another, the time logged in each channel automatically maps to that project in reports. No separate project configuration needed — the channel structure you already have becomes the project structure.
Step 4 — Invite the team
Send the team a brief message explaining the three commands they need to know: /t task description to start tracking, /t break to take a break, and /t finish to end the day. That’s the entire onboarding for most team members.
The commands: how daily time tracking actually works
Time Bot is designed so the entire interface for day-to-day time tracking is four commands. No dashboards to navigate, no dropdowns to click, no forms to fill in.
Starting your day: /t task description
Type /t followed by a brief description of what you’re working on. This starts the time clock for that task.
/t writing client proposal
Time Bot responds with a confirmation showing what you’ve started and when. Your Slack status updates automatically to show your colleagues what you’re working on — without anyone having to ask.
When you switch to a new task, type /t again with the new description. The previous task is automatically closed and the new one starts. Time Bot handles the transition — you never need to explicitly “stop” a task before starting the next one.
/t reviewing pull request — client API
The task description becomes the log entry. Brief is fine. “Client call” is a valid entry. So is “debugging the auth flow on the payments service.” The level of detail is up to the team — whatever makes the reports useful.
Taking a break: /t break
/t break
/t break lunch
/t b
Breaks are tracked separately from tasks so they don’t inflate project time. /t b is the shortcut for a quick break. /t break lunch adds a description to the break log.
Ending the day: /t finish
/t finish
/t f
This closes all open tasks, updates your Slack status to show limited availability (a red cross appears next to your name), and signals to colleagues that you’re done for the day. For remote and async teams this is particularly useful — it removes the ambiguity about whether someone is available or just quiet.
Checking who’s online: /t online
/t online
Returns a list of everyone currently working, what they’re working on, and their timezone. This is the fastest way for a manager or colleague to get a real-time team status without interrupting anyone. No meeting required.
If you forget to log something: /t help
/t help
Returns the full list of available commands directly in Slack. Nothing to look up externally.
Admin view: /t status
Available to admins only. Returns the current status of all team members — what they’re working on and how long they’ve been at it — at a glance.
Reports: what the data looks like and how to use it
The time data logged through Slack commands flows automatically into Time Bot’s reporting dashboard at app.timebot.chat/status.
Daily report by email
Each day at a configured time, Time Bot emails a structured summary to whoever is set to receive it. The report shows each team member’s activity for the day — tasks worked on, time per task, breaks taken, total hours. Organised by project/channel.
This is the report managers find most useful for daily oversight of distributed teams. It arrives without anyone having to request it, compile it, or chase anyone for their hours.
Weekly and monthly reports
The dashboard shows time breakdowns by date range, team member, project, or task. Filterable and exportable to CSV.
The most useful views for different roles:
For project managers: filter by project channel to see total hours spent on a project, broken down by team member and task type. Compare against estimates.
For finance teams: the CSV export maps directly to billing calculations — hours per person per project, ready for invoicing.
For individual contributors: the self-monitor view shows your own time breakdown — how much time went to deep work vs meetings vs breaks, across any date range.
The punctuality meter
A feature specific to Time Bot: a visual indicator showing whether team members are starting and finishing on time relative to their configured working hours. On time (green), delayed (amber), late (red), on break (grey). Useful for managing teams spread across timezones where schedule adherence is part of the working arrangement.
Leave management in Slack
Time Bot includes a full leave management system — employees request time off, managers approve or decline, and the calendar updates automatically to reflect approved leave.
Requesting leave:
Team members submit requests through the Time Bot Leave tab — selecting the leave type (vacation, sick, personal, parental, etc.), the dates, and an optional note. The request goes to the designated approver.
Approving leave:
Managers receive a Slack notification for incoming leave requests. Approve or decline directly from Slack — no need to log into a separate HR system. If declining, a reason can be provided.
Company holidays:
Administrators set up company-wide public holidays in Settings. These appear automatically on every team member’s leave calendar and are factored into leave duration calculations. For remote teams spread across multiple countries, holidays can be configured per country.
Why this matters for time tracking:
Leave is reflected in the time data. When someone is on approved leave, their absence is visible in the daily reports and the dashboard without requiring manual adjustments. Project capacity planning based on Time Bot data is therefore accurate — it accounts for who’s actually working, not who’s theoretically scheduled.
Invoicing from time data
For agencies, consultancies, and freelancers who bill clients by the hour, Time Bot’s invoicing feature closes the loop between time logged and invoices sent.
Time Bot generates invoices directly from the time data — selecting a project (channel), a date range, and the configured hourly rate. The invoice is generated in PDF format, line-itemised by task and team member.
Settings for invoicing are in the admin panel: hourly rate (configurable per project), invoice currency, and whether invoices are enabled for the workspace.
The combination of accurate time data (logged in real time, not reconstructed at end of week) and automatic invoice generation is the primary workflow for Time Bot users who bill clients by time. The accuracy of the time log directly affects the accuracy of the invoice — which is the main reason these users cite for choosing a Slack-native tool over a standalone one. The time is logged when it happens, not when someone remembers to log it.
Stand-ups in Slack
Time Bot’s stand-up feature sends a configurable set of questions to each team member at the start of their working day. Responses are broadcast to a designated channel.
The default questions:
- What have you finished since yesterday?
- What will you do today?
- Any impediments in your way?
All three are customisable. Add questions, remove them, change the wording. The stand-up fires at the time each person starts their day — based on their timezone — so a global team doesn’t all receive the questions at 9am London time regardless of where they are.
The stand-up data compounds with the time tracking data in useful ways. The “what will you do today” response becomes context for interpreting the day’s time log. If someone logged six hours on a single task that wasn’t in their stand-up, that’s a useful signal. If the stand-up consistently mentions blockers that don’t appear in the time data as resolved, that’s another.
Time tracking in Slack for remote and distributed teams
Remote teams are Time Bot’s natural home. The challenges of distributed work — visibility, timezone coordination, accurate reporting for async teams — are exactly what the product is built for.
Visibility without surveillance
The most common objection to time tracking on remote teams is that it feels like surveillance — an implication that people can’t be trusted to work without being watched. Time Bot’s approach is different: the time data is primarily for the team member and their manager, not for auditing individuals. The /t online command and the live dashboard exist to answer the practical question of who’s available right now and what they’re working on — not to catch anyone doing something wrong.
Timezone coordination
/t online returns current team status across timezones. The working hours configuration in settings accounts for each person’s timezone when calculating punctuality and sending daily reports. A team with members in London, New York, and Singapore each have their reports generated and their working hours tracked against their own local time — not a single reference timezone.
Async communication about time
For fully async teams, Time Bot’s daily report email is the primary communication about who worked on what. It arrives at a configured time each day — without requiring anyone to compile it, and without requiring synchronous standup meetings that only work for teams in overlapping timezones.
FAQ
How does time tracking in Slack work?
Time tracking in Slack works through commands typed directly in any Slack channel or the Time Bot app. /t task description starts tracking time for a task, associating it with the channel where the command is typed. /t break pauses tracking for a break. /t finish ends the day. The time data flows automatically into a reporting dashboard and daily email reports.
Does Time Bot read my Slack messages?
No. Time Bot only processes the specific commands addressed to it — messages starting with /t. It does not read, copy, or store other conversations. Time Bot complies with Slack’s strict privacy requirements and GDPR.
How much does Time Bot cost?
Time Bot costs $1 per active user per month when billed annually (minimum 5 users). There is a 7-day free trial with full access to all features. No credit card is required for the trial.
Can Time Bot track time across multiple projects?
Yes. Time Bot associates time entries with the Slack channel where the command is typed. If your team uses separate channels for separate projects, the time tracking is automatically organised by project. Reports can be filtered by channel/project, team member, or date range.
Does Time Bot work for remote and distributed teams?
Yes — remote teams are the primary use case. Time Bot tracks working hours relative to each team member’s configured timezone, sends daily reports that cover the team’s full working day across multiple timezones, and includes /t online to show real-time team status across timezones.
Can I export time tracking data?
Yes. Time data is exportable to CSV from the reports dashboard at any time. The export is structured by date, team member, project, and task — ready to use for payroll, client billing, or project analysis.
Is there a free trial?
Yes — a 7-day free trial with full feature access, no credit card required. After the trial, the workspace stops functioning until a paid plan is activated. Start your free trial →
Start tracking time where work already happens
Time Bot adds time tracking to Slack without adding overhead. Two seconds to start a task. One command to finish the day. Daily reports delivered automatically.