Two different products get called “time tracking”, and only one of them can live inside a web app. This separates them, says which Dashee should build, and gives an honest recommendation for monitoring new hires — including where buying beats building.
Dashee is a web app. A browser tab cannot see what other applications are open, what window has focus, or what URL another program is showing. No amount of building changes that — it is an operating-system boundary, not a missing feature.
Rize is not exempt from this either. What Rize sells as “automatic time tracking” is a native desktop application reading window metadata continuously in the background. That agent is the product; the web dashboard is the reporting layer on top of it.
| Rize feature | How it works | Possible in a web app? |
|---|---|---|
| Automatic time tracking | Desktop agent reads app name, window title, URL. No screenshots, no keylogging. | No — needs an agent |
| Smart client/project categorisation | ML groups captured activity by client and project | No — needs the capture first |
| Focus detection & distraction blocking | Agent detects deep work, blocks distracting apps at OS level | No — needs OS access |
| Smart break reminders | Desktop notifications based on tracked activity | Weak in-browser only |
| AI productivity coach | Summarises hours and focus metrics per person | Yes — reporting layer |
| Profitability dashboard | Margin by client, project, team member | Yes — and Dashee does it better |
| Automatic client reports | Recurring billable-hours reports | Yes — and Dashee does it better |
| Utilisation & workload | Team capacity at a glance | Yes — reporting layer |
| Integrations | ClickUp, Jira, QuickBooks, Slack, Google Calendar… | Yes |
A homegrown agent can be quit from the system tray and its sync script disabled. For genuine oversight during a probation period, that undermines the entire purpose.
Commercial monitoring tools exist because the hard parts are the unglamorous ones:
Rebuilding those is a real product, not a weekend. Candidates worth pricing: Hubstaff, Time Doctor, ActivTrak, Insightful. All sell per-seat monthly. Verify current pricing directly — vendor pricing pages change and none of the figures should be taken from this document.
Free, open source, cross-platform, and already in your stack for your own build hours. If the goal is “where is time going” and “is anyone drowning” rather than enforcement, this is a good fit and the data stays entirely yours at no per-seat cost.
Verified limitation: ActivityWatch is local-first and single-user. Its own docs state
“our current security consists only of not allowing non-localhost connections.” There is no
team sync. It does expose a REST API on localhost:5600, which is the hook a sync agent
uses.
This removes the trade-off entirely. You get agents that are tamper-resistant, auto-starting and maintained by someone else — and the data still lands in Dashee next to jobs, clients and invoices, under your own reporting. You never write or maintain a desktop agent.
| Service | Public API? | What you can pull | Verdict |
|---|---|---|---|
| Hubstaff | Yes — REST | Time entries, activity levels, app and URL usage, screenshots. Plus webhooks, pagination and documented rate limits. | Best fit |
| Rize | No public API | Ships an MCP server for querying your data from Claude or ChatGPT — useful for ad-hoc questions, but not something a product dashboard can be built on. | Rules it out |
| Time Doctor · ActivTrak · Insightful | Documented APIs — verify scope | All publish developer docs; confirm that per-user application usage is exposed, not just total hours. | Worth pricing |
Build order matters — it lets you test on one machine before touching any staff computer:
dashee_app_usage keyed to business and user, with a per-employee ingest key. RLS from the start.Several states require notice for workplace monitoring, and disclosure is standard practice in every commercial tool in this category — Rize explicitly markets “without intrusive monitoring,” no screenshots and no keylogging, because that framing is what makes it acceptable to staff. A paragraph in the onboarding pack covers the obligation. It also simply works better: covert monitoring that gets discovered costs more in trust than the data was ever worth. Confirm the specifics for Florida with your attorney before rollout.
Rize’s revenue features answer “which clients are profitable and what do I invoice.”
Dashee is better positioned for those than Rize is, for one structural reason:
Dashee owns the invoice. Rize has to integrate with QuickBooks and hand off. Dashee
already has dashee_jobs, dashee_clients, dashee_invoices and
dashee_payments in the same database.
One new table, dashee_time_entries (business, client, job/task, user, start/stop, duration, billable, rate), plus:
Roughly 900–1,200 lines: one migration, timer UI, two report pages, invoice generation, portal view.
The 9 July note left this undecided. It resolves itself: build client-billable, and team-clock falls out as an aggregate. A time entry already carries a user, so utilisation is the same entries grouped by person instead of by client. Building the clock first produces timesheets nobody invoices from; building billable first produces both.
Hubstaff charges per seat for every team member — whether or not they actively track time. So “we only monitor two new hires” does not mean two seats. Price the whole team, or confirm with sales that inactive members can be excluded. There is a 14-day free trial with no credit card and a 30-day money-back guarantee, so the real number is verifiable before you commit a cent.
| Vendor / tier | Price | Users | App & website tracking | API |
|---|---|---|---|---|
| TimeCamp — Free | $0 | Unlimited | No | Yes — on the free plan |
| TimeCamp — Premium | $6.99/user/mo annual $9.99 month-to-month |
Per user | Yes | Yes |
| Clockify — Free | $0 | Up to 5 | Auto tracker, but… | 30 requests/hour |
| Clockify — PRO | $7.99/seat/mo annual $9.99 monthly |
Per seat | Yes + screenshots | 50 requests/sec |
| Hubstaff | Not readable — JS-rendered 14-day trial, no card |
Bills every team member, tracked or not | Yes + screenshots | Yes — best documented |
It tracks apps and websites, but Clockify’s own wording is that this is “visible only to you” — to the person being tracked, not to a manager. For the stated goal of overseeing new hires it is useless, however good it looks in a feature list. Screenshots and manager visibility begin at PRO. This is the kind of detail that only shows up after you have rolled something out to staff.
The two halves have different price floors, so buy them separately rather than looking for one tool that does both.
Staying inside one vendor also means one API, one integration and one ingest job in Dashee rather than two.
Defaults are illustrative placeholders, not claims. 3% recovered is a deliberately conservative figure — roughly seventy minutes a week per person. Vendors in this category advertise far higher; treat those as marketing until you measure your own.
| Option | Year-one cost | Ongoing | What you are really paying for |
|---|---|---|---|
| Hubstaff + API → Dashee | Licence (per seat, whole team) + ~1 day to build the ingest | Licence only | Someone else maintains tamper resistance, fleet install, OS updates and idle detection — forever. |
| ActivityWatch + Dashee | $0 licence + ~3–5 days build | Your maintenance, indefinitely | Free until an OS update breaks the agent on six machines and it is your Saturday. |
| Do nothing | $0 | Unmeasured | The real cost is invisible, which is exactly why it persists. |
Monitoring new hires has genuine but soft ROI. Its value is deciding in week two rather than month three. Catch one bad hire six weeks earlier and, at the default wage above, that alone is roughly six thousand dollars — more than the licence for a year. But it is a probabilistic saving on an event you hope does not happen, and it cannot be forecast honestly.
Billable-hours tracking has hard, countable ROI. Unbilled work is measurable the day you start recording it, and every recovered hour bills at your rate rather than saving you a wage. Put your billable rate into the calculator and watch which line moves. That is the stronger argument for building the timer half in Dashee — and it does not depend on monitoring anyone.
| Goal | Do this | Why |
|---|---|---|
| Oversight of new hires | TimeCamp Premium — $6.99/user/mo, only the people you monitor | Cheapest verified option with real app tracking + API. ~$168/yr for two hires. Rize is out — no public API. |
| Billable hours for the whole team | TimeCamp Free — $0 | Unlimited users and API access on the free plan. Same vendor, so one integration. |
| Aggregate visibility, zero budget, trusted team | Build — ActivityWatch + Dashee ingest | Free and self-hosted, but the agent can be quit — fine for insight, not for enforcement. |
| Your own build hours | Already solved — Wakapi + ActivityWatch | Decided 9 July; no further work needed. |
| Billable hours & profitability | Build in Dashee — highest value of everything here | Closes timer → invoice → payment in one app. Rize cannot. |
Ordered so that nothing is paid for until it is proven. Phases 0 and 1 cost nothing; stop after either one and you have still gained something.
dashee_time_entries and dashee_app_usage, RLS from the start.