Check-in & Check-out System
Learn how Clocky tracks your work time through the check-in and check-out system.
How it works
Clocky uses a simple session-based time tracking system:
- Check in when you start working - creates a session with a start timestamp
- Work on your tasks - the session remains active
- Check out when finished - closes the session and calculates total time
- View statistics - all session data is aggregated into your stats
Key concepts
- Name
Sessions- Description
A session is a single period of tracked time from check-in to check-out. Each session has a start time, end time, and duration.
- Name
Active session- Description
You can only have one active (checked-in) session at a time, in one server. This prevents double-counting time.
- Name
Server isolation- Description
Sessions are tracked per Discord server. Your work time in Server A is separate from Server B.
- Name
Automatic tracking- Description
Once checked in, time is tracked automatically. You don't need to do anything until you check out.
Checking in
Basic check-in
Start tracking your work time:
/checkin
Response:
✅ Checked in at 9:00 AM
Your work session has started!
What happens when you check in
- Session creation: A new work session is created in the database
- Timestamp recorded: Your check-in time is saved (accurate to the second)
- Server association: The session is linked to the current Discord server
- Status update: Your status changes to "checked in"
Restrictions
One session at a time: If you're already checked in to another server, you'll need to check out there first.
If you try to check in while already checked in elsewhere:
❌ Already checked in
You're currently checked in to: Work Server
Started: 8:00 AM (1 hour ago)
Please check out there first with /checkout
User limits by tier
Servers have user limits based on subscription tier:
| Tier | Active Users |
|---|---|
| Free | 5 users |
| Premium | 100 users |
| Pro | Unlimited |
| Lifetime | Unlimited |
If your server reaches the limit, new users cannot check in until:
- Inactive users are pruned (after data retention period)
- The server upgrades to a higher tier
- An admin manually cleans up old users
Checking out
Basic check-out
Stop tracking your work time:
/checkout
Response:
✅ Checked out at 5:00 PM
📊 Session Summary
Check-in: 9:00 AM
Check-out: 5:00 PM
Break time: 1 hour 0 minutes
Net worked: 7 hours 0 minutes
Great work today! 🎉
What happens when you check out
- Session closed: Your active session is marked as complete
- Duration calculated: Total time = check-out time - check-in time - break time
- Stats updated: Your statistics are automatically updated
- Status cleared: You're now available to check in again
Checkout requirements
- Name
Must be checked in- Description
You can only check out if you have an active session. If not checked in, you'll get an error.
- Name
Same server- Description
You must check out in the same server where you checked in.
- Name
Manual or automatic- Description
Sessions can be closed manually with /checkout or automatically via auto-close.
Auto-close system
What is auto-close?
Auto-close automatically ends sessions that have been active for too long. This prevents inflated time tracking when users forget to check out.
Default behavior
By default, sessions auto-close after 12 hours.
Example:
- Check in: Monday 9:00 AM
- Forget to check out
- Auto-close: Monday 9:00 PM (12 hours later)
- Recorded time: 12 hours (minus any breaks)
Configuring auto-close
Server administrators can adjust the auto-close duration:
/admin-set-autoclose hours:8
Valid range: 1-24 hours
When changes take effect: The auto-close setting only affects new sessions. Existing sessions use the duration that was set when they started.
How auto-close works
- Background job: Clocky runs a periodic job that checks for old sessions
- Time comparison: Sessions older than the configured duration are identified
- Automatic closure: These sessions are closed automatically
- Notification: Users are NOT notified when sessions are auto-closed
Viewing auto-close status
Check your current session to see when it will auto-close:
/status
⏱️ Currently checked in
Server: Work Server
Started: 9:00 AM (3 hours ago)
Auto-close in: 9 hours
Session status
Checking your status
See if you're currently checked in:
/status
If checked in:
⏱️ Currently checked in
Server: Work Server
Started: 9:00 AM (3 hours ago)
Duration: 3 hours 0 minutes
Break: 30 minutes (active)
Auto-close in: 9 hours
If not checked in:
ℹ️ Not checked in
You don't have an active work session.
Use /checkin to start tracking time.
Status information
The status command shows:
- Whether you're checked in
- Which server you're checked in to
- Check-in time
- Current duration
- Break status (if applicable)
- Time until auto-close
Best practices
For accurate time tracking
Follow these tips for the most accurate time tracking:
- Check in immediately when you start working - don't wait
- Use breaks for lunch, meetings, etc. instead of checking out
- Check out promptly when done for the day
- Check your status periodically to ensure you're still checked in
- Set reminders if you frequently forget to check out
Common workflows
Full workday:
# Morning
/checkin
# Lunch break
/break start
# ... eat lunch ...
/break end
# End of day
/checkout
Short focused session:
# Start task
/checkin
# Finish task (2 hours later)
/checkout
Multiple servers:
# Server A
/checkin
# ... work ...
/checkout
# Switch to Server B
/checkin
# ... work ...
/checkout
Troubleshooting
Forgot to check out
Problem: You forgot to check out yesterday and now your session is inflated.
Solutions:
- Auto-close handled it: Check your stats - the session was probably auto-closed at the configured duration
- Ask an admin: An admin can manually close your session with
/admin-close-session - Prevention: Set a calendar reminder to check out at end of day
Can't check in (already checked in)
Problem: Error says you're already checked in elsewhere.
Solution:
- Run
/statusto see which server - Go to that server
- Run
/checkout - Return to desired server and run
/checkin
Session closed unexpectedly
Problem: Your session was closed but you didn't check out.
Possible causes:
- Auto-close: Session exceeded the configured duration (default: 12 hours)
- Admin action: An admin manually closed your session
- Bot restart: In rare cases, bot maintenance might affect sessions
Check your history:
/history limit:5
Review recent sessions to see what happened.
Admin controls
Server administrators have additional tools for managing sessions:
Manually close a session
If a user forgets to check out or their session is stuck:
/admin-close-session user:@username
This calculates the worked time from check-in until now and closes the session.
View session statistics
Admins can view any user's stats:
/stats user:@username range:today
Related features
- Break Tracking: Learn how to track breaks during sessions
- Statistics: Understand how session data becomes statistics
- History: View your past sessions
- Admin Guide: Managing user sessions as an admin