ActivityWatch
Privacy-first open-source time tracker for Windows, macOS, Linux, and Android
About ActivityWatch
ActivityWatch is a free, open-source time tracking tool that automatically logs your device usage. Designed as a privacy-focused alternative to commercial solutions, it keeps all data local and never uploads it to the cloud. Use it to analyze productivity, monitor screen time, track work hours, or simply understand your daily habits across multiple platforms.
FAQ
Yes. ActivityWatch is completely free and open-source software, licensed under the MPL-2.0 license. There are no premium tiers, no usage limits, and no ads.
ActivityWatch runs on Windows (10 and later), macOS (10.15+), Linux (most distributions), and Android. Browser extensions are available for Chrome, Firefox, and Edge to track your web activity.
Yes. ActivityWatch follows a local-first approach , all your time tracking data is stored on your own device and is never sent to any server. You have full control over your data and can export, delete, or back it up at any time.
Yes! ActivityWatch has a modular architecture built around “watchers” , small programs that track different things and report to a local server. You can write your own watchers using the REST API. The community has built watchers for VS Code, JetBrains IDEs, Spotify, and more.
On Windows and macOS, we use functionality offered by those platforms to give us the time since last input. On Linux, we monitor all mouse and keyboard activity to calculate the time since last input. We do not store what that activity was, just that it happened. Using this data (seconds since last input) we check if more than 3 minutes have passed without any input. If that is the case, we assume that you’ve been AFK since the last input was received.
The design of ActivityWatch is that it consists of multiple watchers which report different types of activities. Each watcher has its own flaws in accuracy for different reasons. The data that ActivityWatch collects and the stats it can present can only be seen as an estimate. The accuracy will vary depending on use-case and depending on what data you are looking at.
ActivityWatch consists of several processes running independently, so one thing crashing will have limited impact on the rest of the system. If the server crashes or is unavailable, watchers which use the heartbeat queue will queue heartbeats until the server becomes available. If a watcher crashes, its bucket will simply remain untouched until it is restarted.
Alternatives to consider
Community ratings & full listBadges
Promote ActivityWatch giving it more exposure, by adding these badges to your website, documentation, or product listing. Each badge links back to ActivityWatch page on Webfolio.
<a href="https://www.webfolio.to/tools/activitywatch?utm_source=badge&utm_campaign=badge" target="_blank" rel="noopener noreferrer"><img src="https://www.webfolio.to/badges/featured_color.svg" alt="Featured on Webfolio" style="max-width: 150px" /></a>
Categories
Claim this tool
Are you the founder? Claim your profile to update details and track views.