ActivityWatch uses configuration files stored in a platform-specific config directory, and most settings can also be changed through the web dashboard Settings page. Each component —Documentation Index
Fetch the complete documentation index at: https://mintlify.com/ActivityWatch/activitywatch/llms.txt
Use this file to discover all available pages before exploring further.
aw-server, aw-watcher-afk, aw-watcher-window, and aw-qt — has its own TOML configuration file in a dedicated subdirectory. You only need to edit these files when you want to override the defaults; ActivityWatch runs without any manual configuration out of the box.
Configuration file locations
The config directory location depends on your operating system:- Windows
- macOS
- Linux
After editing any configuration file, restart ActivityWatch for the changes to take effect.
aw-server settings
aw-server is the local REST API server that stores all activity data and serves the web dashboard. Its config file is located at:
| Setting | Default | Description |
|---|---|---|
host | localhost | Network interface the server listens on. Set to localhost to restrict access to your local machine only. |
port | 5600 | Port for the web UI and REST API. Change this if another application is already using port 5600. |
storage | peewee | Storage backend. Use peewee (SQLite via the peewee ORM) for normal use, or memory for testing (data is not persisted). |
aw-server.toml:
aw-server.toml
aw-watcher-afk settings
aw-watcher-afk monitors keyboard and mouse activity to determine whether you are active or away from keyboard. Its config file is located at:
| Setting | Default | Description |
|---|---|---|
timeout | 180 | Seconds of inactivity before marking you as AFK. Increase this if you frequently read long documents without interacting with your keyboard or mouse. |
poll_time | 5 | How often (in seconds) the watcher checks for keyboard and mouse input. |
aw-watcher-afk.toml:
aw-watcher-afk.toml
aw-watcher-window settings
aw-watcher-window tracks the currently active application and its window title. Its config file is located at:
| Setting | Default | Description |
|---|---|---|
poll_time | 1 | How often (in seconds) the watcher checks which window is in focus. Lower values give finer time resolution; higher values reduce CPU usage. |
exclude_title | false | When set to true, window titles are not stored — only the application name is recorded. Useful when window titles may contain sensitive information. |
aw-watcher-window.toml:
aw-watcher-window.toml
Autostart on login
ActivityWatch does not configure autostart during installation on all platforms. The setup varies by operating system.- Windows
- macOS
- Linux
Open the system tray, right-click the ActivityWatch icon, and navigate to Settings → Start at login to toggle autostart. ActivityWatch adds itself to the Windows startup registry.
Privacy
Learn what data ActivityWatch collects and how it stays on your device.
Sync
Set up experimental data sync across devices with aw-sync.
REST API
Explore the REST API to query and export your activity data programmatically.
