File
SMF·TOGGL-TRACK
Received on
31.07.2026
Reviewed on
28.09.2026
Exhibits annexed
3
Questions
4

SMF·TOGGL-TRACK

Can a prompt replace Toggl Track?

Time tracking — timer with a reporting layer

Almost Verdict recorded on 28.09.2026 · Verified on 31.07.2026
Price
$9/moSource: toggl.com · Checked on July 31, 2026
Per year
$108
Build time
One sitting
Votes
0 votes
YesAlmost (checked)Not yet

Exhibit tracking slip

Exhibit A The prompt
Exhibit B What you lose
Exhibit C Why people still pay: capture everywhere and reporting polish
Exhibit Q Questions

Verdict

Toggl's stopwatch is an evening. What the subscription buys is that the stopwatch is everywhere — a browser extension that puts a start button inside a hundred other web apps, plus desktop and mobile clients — and a reporting layer that turns entries into something a client will accept. The rebuild here goes after the reporting half, because that is the part a personal build can genuinely match, and is honest that the capture half is where the money goes.

Exhibit B — What you lose

Exhibit A — The prompt

Received on31.07.2026
Build a time tracker whose strongest feature is the report you hand to a client.

Stack: your choice, Postgres, Docker Compose, a domain with TLS for the share links.

Tracking basics: Clients, Projects, Tasks, Tags, TimeEntries with start, end, description, billable flag. A running timer, manual entry, duplicate-yesterday, and bulk edit over a selection.

Keyboard-first entry: a global shortcut opens a single input where typing a description, `@project` and `#tag` starts a timer in one line, with fuzzy matching ranked by recent use. This is the closest a self-hosted tool gets to the extension, and it is worth the hour.

The reporting layer:
- Group by any two of client, project, task, tag, person, day, with subtotals at each level.
- Rounding applied **at report time only**, configurable to 5, 6, 15 or 30 minutes, up, down or nearest, with the unrounded total always shown beside it. Never round the stored entry.
- A rounding-difference line — the gap between raw and rounded — so nobody can accuse the report of hiding it.
- Share links: a read-only public report on a long random token, with an optional expiry date and an optional revoke. Compare tokens in constant time, do not expose any listing endpoint, and set noindex on the page.
- Export the same report as CSV and as a print-clean HTML page that produces a decent PDF through the browser.
- Saved report definitions with a name, re-runnable against a new date range in one click.

Detail worth building: a "no project" warning on the report screen that refuses to generate a share link while any entry in the range has no project, since that is the failure that makes a client ask what the missing four hours were.

Write tests for each rounding mode at exact boundaries, for two-level grouping subtotals summing to the total, and for share-token expiry and revocation.

Do not build a browser extension, mobile apps, or billable rates and profitability — those are the Harvest entry's territory.

Opening prefills the prompt — press enter to run it.

Exhibit B — What you lose

  • B.1 the browser extension that adds a timer inside other web apps
  • B.2 the desktop and mobile clients, and the idle-time prompt
  • B.3 billable rates, team dashboards and project profitability
  • B.4 calendar integration that turns a meeting into an entry
  • B.5 the polish of exported reports and their branding

Prior art

Exhibit C — Why people still pay: capture everywhere and reporting polish

Because time only gets tracked if starting the timer costs nothing, and the extension plus the apps are what make that true. Everything else in Toggl is replaceable; that part is what you are paying for.

Questions

Why show the rounding difference explicitly?

Because rounding to the nearest fifteen minutes across forty entries can add a few hours to an invoice, and a client who discovers that on their own will assume the worst. Printing the difference makes it a policy instead of a surprise.

Can a keyboard shortcut really replace the browser extension?

For starting and stopping, mostly — one line with fuzzy project matching is fast. What it cannot do is put a start button inside the issue you are already looking at, which is what makes the extension worth paying for.

Are public share links safe?

Only with care. A long random token, constant-time comparison, no listing endpoint, noindex, and an expiry date make them acceptable for a report. Anything shorter or guessable is a client's billing data on the open web.

Does Toggl export everything?

Entries, projects, clients and tags all export as CSV, and the API covers the rest including saved reports. It is one of the cleaner exports in this category, which makes trying a replacement low-risk.

Receipt

Already built this yourself?