Time Tracking
Ever Gauzy provides multiple time tracking methods to accommodate different workflows and preferences.
Tracking Methods
| Method | Source | Auto-Screenshot | Best For |
|---|---|---|---|
| Desktop Timer | DESKTOP | ✅ | Daily tracking with screenshots |
| Web Timer | WEB_TIMER | ❌ | Quick tracking from browser |
| Manual Entry | WEB_TIMER | ❌ | Retroactive time logging |
| Browser Extension | BROWSER_EXTENSION | ❌ | Tab-based tracking |
| Integration | HUBSTAFF/UPWORK | ✅ | Imported from external tools |
Desktop Timer
The Gauzy Desktop Timer is an Electron-based application that provides:
Features
- One-click timer — start/stop with project and task selection
- Screenshot capture — periodic screenshots at configurable intervals
- Activity tracking — keyboard and mouse activity percentage
- App tracking — applications used during tracking
- URL tracking — websites visited (browser extension)
- Idle detection — detects and handles idle time
- System tray — runs in background with tray icon
- Offline support — tracks time when disconnected, syncs later
Timer Flow
Time Slots
Time is recorded in 10-minute time slots:
| Field | Description |
|---|---|
startedAt | Slot start time |
duration | Duration in seconds (max 600) |
keyboard | Keyboard activity count |
mouse | Mouse activity count |
overall | Overall activity percentage |
screenshots | Associated screenshot records |
Web Timer
Available in the web UI at Time Tracker section:
- Select organization, project, and task
- Click Start to begin tracking
- Optionally add a description
- Click Stop when done
- Time log is created and visible in timesheets
Manual Time Entry
For logging time retroactively:
- Navigate to Time Tracker → Add Time
- Select date, start/end times
- Choose project and task
- Add description and billable status
- Submit — creates a time log with
logType: MANUAL
Time Log Data Model
interface ITimeLog {
id: string;
startedAt: Date;
stoppedAt: Date;
duration: number; // Seconds
logType: TimeLogType; // TRACKED | MANUAL | IDLE | RESUMED
source: TimeLogSourceEnum; // DESKTOP | WEB_TIMER | MOBILE | etc.
description?: string;
isBillable: boolean;
isRunning: boolean;
// Relations
employeeId: string;
projectId?: string;
taskId?: string;
organizationId: string;
tenantId: string;
timeSlots: ITimeSlot[];
}
Idle Handling
The Desktop Timer detects idle periods:
- Idle detection — triggered after configurable idle threshold
- Idle prompt — asks user what to do with idle time
- Options:
- Keep idle time (tracked as
IDLElog type) - Remove idle time (deletes the idle period)
- Resume from idle (
RESUMEDlog type)
- Keep idle time (tracked as
Activity Levels
Activity is calculated from keyboard and mouse events:
| Level | Percentage | Indicator |
|---|---|---|
| High | 75–100% | 🟢 Green |
| Medium | 50–74% | 🟡 Yellow |
| Low | 25–49% | 🟠 Orange |
| Very Low | 0–24% | 🔴 Red |