Timesheet Hours Tracker — Product overview

Timesheet / Hours Tracker

€8,10
Skip to product information
Timesheet Hours Tracker — Product overview

Timesheet / Hours Tracker

€8,10

Log hours against a client or project, then print a clean per-client summary to bill from — entirely offline, with nothing ever sent to a server.

Log time against a client and project — either as a plain number of hours or a start/end time range — and watch running totals and a per-client breakdown update live. When it's time to bill, filter to a client and date range and print (or save as PDF) a clean, itemized summary using your browser's own print function. Entries live in this browser's local storage, with JSON export/import to move your data to another device — no account, no cloud sync, no per-seat fee.

What it does

Every mainstream time tracker is a cloud product first. Toggl Track and Clockify both give away a free tier, but both require creating an account and syncing your client names and hours to their servers — even the "free" version is a login-gated cloud service, not an offline tool. Harvest's free plan doesn't require quite as much commitment, but it caps you at 2 active projects, which stops working the moment a consultant (the exact buyer this tool is built for) is billing a third client. None of them are actually built to let you just open a file and start logging time with nothing to sign into and nothing leaving your machine.

Who it's for: a freelance consultant, contractor, or small agency owner juggling a handful of clients who wants to log hours through the week and export a clean, correct summary to bill from at month-end, without creating an account for a tool used a few minutes a day.

Example scenario: a consultant works across three clients in a week — some days logged as a plain number of hours, one afternoon logged as an actual start/end time block for a client call. At month-end, they filter the tool to one client and the billing date range, check the live summary (grouped by client, itemized by date/project/description, subtotaled), and click "Print / Save as PDF" to get a clean document to attach to an invoice — then repeat for the next client by switching the filter.

What it explicitly does not do: it does not track time automatically (no idle detection, no active-window monitoring — every entry is logged by hand, on purpose, since automatic tracking requires exactly the kind of background access a local-only browser tool can't and shouldn't have); does not generate an invoice with tax/discount math or payment terms (pair it with a separate invoicing tool, like this line's own Invoice Generator, for that step); does not sync across devices on its own (JSON export/import moves data between devices manually, deliberately — there is no server to sync through); does not support overnight shifts that cross midnight (log those as two same-day entries instead — see Known limitations below); and does not stop you from saving two overlapping time-range entries — it warns you, but the decision to keep both is yours (see the overlap-handling note below).

Features

  • Log time two ways — a plain number of hours, or a start/end time range that computes the hours for you.
  • Live running totals and a per-client hours breakdown that update as you log, edit, or delete entries.
  • Filter by client and by date range (This week / Last week / This month / All time, or a custom range) — the same filter drives the entry list and the printable summary.
  • One-click "Print / Save as PDF" of a clean, per-client summary — itemized by date, project, and description, subtotaled per client — using your browser's own native print engine, no PDF library required.
  • CSV export of the currently filtered entries, plus a full JSON export/import so your data can move between devices without ever touching a server.
  • Built-in validation (blocks zero/negative hours, a missing client name, and an end time before a start time) plus a non-blocking warning — not a hard block — when two time-range entries on the same date overlap, since that's sometimes genuinely intentional.

Browser support

Platform Result Notes
Desktop Chrome (Chromium engine, automated) Verified working Full functional test suite run via Playwright's Chromium browser: adding entries in both Hours mode and Start–End time mode, live running totals and per-client breakdown checked against hand-calculated expected values (10.50h across 4 entries, then 11.50h after an edit, then 6.50h after a delete — all matched exactly), zero/negative-hours validation blocking save with a visible error banner, missing-client validation, end-time-before-start-time validation, non-blocking overlap warning correctly firing for two overlapping Start–End entries on the same date (and correctly not saving the entry) while still saving the entry itself, per-client filter narrowing both the entry list and the live summary correctly, edit-in-place round trip, delete, CSV export (correct header and rows), a full JSON export → clear all → re-import round trip restoring the exact same entries and total hours, Enter-key-submits-the-form keyboard flow, a 220-entry/one-year performance test (entries rendered and totaled correctly in well under 100ms including a full page reload), print-media emulation confirming only the summary panel is shown, and zero console errors or page errors across the entire run.
Desktop Chrome (real Google Chrome.app) Verified working (visual) Opened the actual installed application and visually confirmed clean load, correct layout, and correct rendering via screenshot.
Desktop Safari (real Safari.app, WebKit engine) Verified working (visual) Opened the actual installed application and visually confirmed clean load, correct layout, fonts, and form rendering via screenshot. This machine cannot grant Accessibility permission for UI-scripting, so the deep interaction test above was not separately re-run by clicking through real Safari — but the tool uses no Chromium-specific APIs (plain DOM, `localStorage`, standard form/date/time inputs, `@media print`), so the WebKit render being visually correct is a meaningful, not just cosmetic, check.
Desktop Firefox (real Firefox.app, Gecko engine) Verified working (visual) Same method and same caveat as Safari above — opened the real application, confirmed clean load and layout via screenshot.
Print / Save-as-PDF output Verified working Rendered via Chromium's print-media emulation and its native PDF pipeline: confirmed the summary fills the page from the top-left in normal document flow, grouped per client with correct subtotals and a grand total when more than one client is shown, with the editor form, filters, and stat boxes correctly hidden. The print pipeline deliberately reuses the exact fix already verified in Invoice Generator (`display:none` on everything but the preview element, kept in normal flow, rather than the `position:absolute`-on-a-`position:sticky`-ancestor trick that broke Invoice Generator's first version) — reused on purpose instead of re-discovering the same bug.
Small-viewport / touch (390×844, emulated) Verified working Confirmed no horizontal page overflow via direct DOM measurement (`scrollWidth` vs `clientWidth`), both on the empty state and with real entries logged. Responsive single-column layout confirmed by screenshot; the entries table scrolls horizontally within its own container on very narrow screens rather than forcing the page wider, which is by design.
Dark mode (`prefers-color-scheme: dark`) Verified working Editor UI switches to the dark palette correctly; the summary preview itself was confirmed via computed style to stay pure white (`rgb(255,255,255)`) regardless of theme — the print output is deliberately theme-independent, same convention as Invoice Generator and EXIF/GPS Stripper.
iOS Safari Not tested No iOS device or simulator available on this machine — do not claim iOS support until checked on a real device.
Android Chrome Full Tested on a real Android device in Chrome — works.

Plain-language summary for the listing: Verified on desktop Chrome (including a full automated test of every feature — logging, math, validation, editing, deleting, CSV/JSON export and re-import, print, and a 220-entry performance run), and visually confirmed on desktop Safari and Firefox. Not yet verified on a physical iOS or Android device — if you're on mobile, it's built with only standard, widely-supported web features (plain HTML forms, localStorage, CSS print styles), so it's very likely to work, but this hasn't been confirmed hands-on yet.

FAQ

Does my data get uploaded anywhere?
No. This is a single HTML file with zero network requests — open your browser's developer tools and watch the network tab if you want to verify it yourself. Every entry is saved only in this browser's local storage, on your own machine.

Does this work on my iPhone/iPad?
It hasn't been verified on a physical iOS device yet (see the platform-support table above for exactly what has and hasn't been checked). It uses only standard web features with no exotic APIs, so it's likely to work, but this tool doesn't claim iOS support until that's been confirmed hands-on.

Can I move my entries between my laptop and desktop?
Yes — click "Export JSON (backup)" on one device, then "Import JSON…" on the other. There's no automatic sync (there's no server to sync through), so this is a deliberate, manual step, but it's a genuine round trip: every field of every entry comes back exactly as it was.

What happens to my data if I lose the tool file, or clear my browser data?
Your logged entries live in this browser's local storage, tied to this specific browser and device — they aren't inside the `index.html` file itself, so re-downloading the tool doesn't lose them, but clearing this browser's site data or switching browsers/devices would. That's exactly what "Export JSON (backup)" is for: click it periodically (or right before doing anything that might clear browser storage) and keep the resulting `.json` file somewhere safe — "Import JSON…" restores everything from it exactly.

Does this work offline?
Yes, completely — there's no server involved at any point, online or offline. Open the file and it works, on a plane or anywhere else.

Can I use this for client or commercial work?
Yes. Every summary you generate is entirely yours — no attribution required, no restriction on client-facing or commercial use.

Is there a subscription?
No. This is a one-time purchase of a single, self-contained HTML file. No recurring charges, no per-seat fee, no feature paywall.

  • ✓ Runs 100% offline in your browser
  • ✓ Single HTML file — no install, no dependencies
  • ✓ No account, no telemetry, no tracking
  • ✓ Buy once — yours forever

After checkout you get an instant download link. Open the file in any modern browser and it just works.

✓ 30-day refunds — keep the file either way
report.pdf — opened from your desktop, no installer:
  ✓ runs entirely on your device — Wi-Fi off? Still works.
  accounts sign-ups cloud uploads none
  ✓ your files stay where you put them

Prefer to try before buying? The browser versions of every tool run free at tools.untracked.tools — no upload, ever.

⚡
Instant delivery. Right after checkout, an email arrives with your download link (subject: “Your downloads are ready”). No account needed to receive it.
🔒
30-day refunds, straightforward — keep the file either way.
€
VAT included. The price you see is the price you pay.