← all SaaS
Self-host Toggl Track
Time tracking ·
Category: CRM, billing & ops
Toggl Track is a per-user time tracker — start/stop a timer, tag with project + client, generate reports for invoicing. The self-hostable replacements all do the timer + project + report triangle; differences are mostly UI polish and team/admin features.
Toggl Track pricing anchor: Free up to 5 users; Starter $9/user/mo; Premium $18/user/mo (annual).
- GitHub
- ★ 4.64k · last commit 2d ago · 324 open issues
- License
-
AGPL-3.0 - Setup time
- 20min docker-compose (PHP/Symfony + MariaDB)
- Monthly cost
- $5/mo VPS for a small team.
Migration sketch. Pull `kimai/kimai2:apache` and `mariadb:11` via the official compose. Toggl export (Reports → Detailed → CSV) imports through Kimai's Bundle/CSV import (community bundle: `kimai-toggl-importer`). Kimai's data model maps cleanly: Toggl's Workspace → Kimai's tenant; Toggl Client → Kimai Customer; Toggl Project → Kimai Project; Toggl Tag → Kimai Tag.
Good fit forFreelancers and agencies that bill hourly and need invoice-ready reporting — Kimai's invoice templates output PDF directly from tracked time.
Weak atMobile UX is a PWA, not a native app; serious mobile users will miss Toggl's native iOS/Android polish.
- GitHub
- ★ 8.53k · last commit 10d ago · 29 open issues
- License
-
AGPL-3.0 - Setup time
- 20min docker-compose (Laravel + Postgres + Redis)
- Monthly cost
- $5-10/mo VPS.
Migration sketch. Pull `solidtime/solidtime` from GitHub Container Registry. Solidtime is a newer Laravel-based timer app — purpose-built as a Toggl replacement. Toggl CSV export imports via Settings → Import → Toggl. Browser extension for one-click timer start; CLI client for terminal-first workflows.
Good fit forTeams that prefer Laravel/Livewire familiarity and want a modern, actively-developed Toggl replacement.
Weak atNewer than Kimai — smaller community, fewer third-party integrations and bundles.
- GitHub
- ★ 1.72k · last commit 4w ago · 92 open issues
- License
-
GPL-3.0 - Setup time
- 10min single-binary or docker run
- Monthly cost
- $3/mo VPS — SQLite-backed and tiny.
Migration sketch. Run `docker run -d -p 80:80 -v $HOME/_timetagger:/root/_timetagger almarklein/timetagger:latest`. TimeTagger uses a tag-first model (no projects/clients hierarchy — just `#client #project #task` tags on a timer). Toggl entries port via the JSON import (Toggl JSON export → script that emits TimeTagger format). Best for individuals; multi-user is bare-bones.
Good fit forSolo users who like a flat tag model — fast to log, no setup overhead.
Weak atNo client/project hierarchy or invoicing module — pair with a separate billing tool.
In a terminal? npx os-alt toggl prints this table —
how the CLI works →