AnyTool
Your files never leave your device. All processing happens locally in your browser.

How do I track my work hours and export a timesheet?

Open AnyTool Work Log and either hit Start to time a task live — Stop logs the exact elapsed minutes as an entry — or add an entry manually by typing decimal hours (1.5 = 1h 30m) or a start → end time. Each entry can carry a project/client, a tag, a billable toggle and an hourly rate. The tool totals your time for today, this week and per project, works out the billable amount due, and lets you filter by date range and project. Export a clean CSV for invoicing or timesheets, or a JSON backup. Everything is saved only in your browser’s localStorage and never uploaded.

  • Built-in timer (Start/Stop logs elapsed minutes) or manual entry by decimal hours or start → end times
  • Tag entries with a project/client, a category and an optional billable hourly rate
  • Totals for today, this week and per project, plus the billable amount due
  • Filter by date range and project; export CSV (for invoices/timesheets) or JSON backup
  • Saved only in your browser’s localStorage — nothing uploaded, no account, no tracking

What is

Work log (personal time tracker)

A work log is a personal record of how you spend your working time, kept as a list of entries that each note a date, a task description, usually a project or client, and a duration. Time is captured either with a running timer — you start it when you begin a task and stop it when you finish, and the elapsed time becomes an entry — or by entering the hours after the fact as a decimal number or as a start-and-end time pair. Logs are used to understand where time goes, to bill clients (entries flagged billable are multiplied by an hourly rate to produce an amount), and to fill out timesheets, so the durations are summed into daily, weekly and per-project totals and exported to CSV or a spreadsheet.

Generators

Related terms

TimesheetTime trackingBillable hoursTimerProject hoursCSV export

Frequently Asked Questions

Start records a real timestamp and Stop logs the minutes elapsed since then, so the total stays correct even if the tab is throttled; the live readout, though, can lag in a background tab.

When you press Start the work log stores the current timestamp from the device clock. The big readout that ticks every second is only for display; the truth is always the difference between now and that start timestamp, so when you press Stop the entry is logged with the real elapsed time rounded to whole minutes — even if your computer slept or the browser throttled the tab and the on-screen seconds fell behind. The one caveat is that the live readout itself relies on a timer that browsers slow down in background tabs, so for very long or unattended sessions it is more reliable to just enter the hours manually rather than leave a timer running in a hidden tab.

Yes. Every entry is stored only in your browser’s localStorage and never uploaded — there is no account, no server and no tracking.

AnyTool Work Log is 100% client-side. Your entries — dates, tasks, projects, tags, durations, billable flags, rates and notes — live only in this browser’s localStorage and are never sent to a server. There is no sign-up, no login and no analytics, and the timer, totals and billable amounts are all computed locally on your device. It works offline once the page is cached. Because the data is tied to this browser, you can use Export CSV for invoicing or timesheets and Export JSON to keep a full backup or move your log to another browser or device; clearing your browser data is the only thing that erases your log.

Yes. Mark an entry billable and set an hourly rate; the tool multiplies its hours by the rate and sums the billable amount, and the CSV includes a per-entry amount column.

Each entry has a billable toggle and an optional hourly rate. When an entry is billable, its amount is its duration in hours multiplied by the rate, and the tool adds those up into a billable total alongside the billable time tracked. You can filter the table by date range and project so you see exactly one client’s work for one week, and the CSV export — which respects that filter — carries date, description, project, tag, hours, minutes, billable, rate and amount columns, so it drops straight into an invoice or a payroll/timesheet spreadsheet.

No. It is a personal single-device log with no cloud sync and no team features — export CSV or JSON to move or back up your data.

Because everything is stored locally in this browser, there is no cloud sync between devices, no shared projects and no team or employee-monitoring features. Your data stays in this browser on this device, so opening the tool in a different browser, on another device or in private/incognito mode starts fresh, and clearing browser data erases your log. To keep a backup or move to another device, export a JSON file and re-import it (which can replace your current log or merge alongside it), and export CSV whenever you need to invoice, run a timesheet or hand the numbers to another app.

Detailed Explanation

Methodology

How Time Is Captured: Timer and Manual Entries

AnyTool Work Log is built from entries; each stores a local calendar date (YYYY-MM-DD), a task description, a project/client, a free-text tag, a duration in whole minutes, a billable flag, an optional hourly rate and notes. Time can be captured three ways. The built-in timer is timestamp-based: pressing Start stores Date.now(), a once-a-second interval updates the on-screen readout purely for display, and the true elapsed time is always (now − startedAt) — so pressing Stop logs the real minutes elapsed even when the browser throttles a background tab and the interval fires late. Manual entry accepts either decimal hours, where the value is multiplied by sixty and rounded (1.5 → 90 minutes), or a start-and-end time pair, where the minutes between the two clock times are computed (and a value that crosses midnight is treated as an overnight shift). Every duration is normalised to integer minutes, which keeps the totals and the h:mm formatting exact. Today and the current time are read from the device clock, and all date maths use plain local-time Date objects so there are no timezone surprises.

  • Entry model: date, description, project, tag, minutes, billable, rate, notes
  • Timer is timestamp-based — Stop logs (now − startedAt) in minutes, accurate despite tab throttling
  • Manual entry by decimal hours (×60) or a start → end time pair (overnight-aware)
  • All durations normalised to whole minutes; totals formatted as h:mm
  • Today/now from the device clock; local-time Date maths, no timezone drift
How It Works

Totals, Projects, Billing and CSV Export

Durations are summed into several totals computed locally from the entry minutes: today (entries whose date equals the local today), this week (entries whose Monday-start week matches the current one, so the week runs Monday→Sunday), an all-time total, and a per-project breakdown shown as a sorted bar chart with each project’s share of total time. Billable entries are multiplied by their hourly rate — amount = (minutes ÷ 60) × rate — and summed into a billable amount due alongside the billable time tracked, surfaced only when at least one entry has a rate. A date-range (from/to) and project filter narrows the table, which is grouped by day with a per-day subtotal and entry count, and each entry can be edited inline or deleted. Export produces an RFC-4180-quoted CSV with columns for date, description, project, tag, hours, minutes, billable, rate, amount and notes (a UTF-8 BOM is prepended so spreadsheets read accents correctly), and the CSV honours the active filter so you can pull exactly one client’s week for an invoice or timesheet. A JSON export keeps a full, re-importable backup.

  • Totals: today, this week (Mon→Sun), all-time, and a per-project bar breakdown
  • Billable amount = (minutes ÷ 60) × hourly rate, summed across billable entries
  • Date-range + project filter narrows the day-grouped table; CSV honours the filter
  • CSV is RFC-4180 quoted with a UTF-8 BOM; columns include hours, billable, rate and amount
  • Entries editable/deletable inline; JSON export/import for a full backup
Privacy & Security

Privacy, Backups and Honest Limits

Everything runs locally in the browser with no account, server or tracking. Every entry — its date, task, project, tag, minutes, billable flag, rate and notes — is stored only in the browser’s localStorage and is never uploaded, and the page works offline once cached. You can export to CSV for invoicing or timesheets, export all entries to JSON as a backup or to move to another browser or device, and importing can either replace your current log or merge the imported entries alongside it (with validation/sanitisation on load and import). Honestly, this is a personal single-device time log: because the data lives in localStorage there is no cloud sync between devices and no team features, shared projects or employee monitoring; opening the tool in a different browser, on another device, or in private/incognito mode starts fresh, and clearing browser data erases the log — which is why exporting backups regularly is recommended. The built-in timer needs the tab open, and although the elapsed time is measured from real timestamps so the logged minutes stay correct, browsers throttle background tabs so the live readout can lag; for very long or unattended sessions, entering the hours manually is more reliable than leaving a timer running in a hidden tab.

Work Log: in-browser (AnyTool) vs typical time-tracking apps
CapabilityAnyToolTypical time-tracking apps
Where data livesOnly in your browser’s localStorageUsually a cloud account / server
Time captureTimer + manual hours or start → endTimer + manual; often desktop agents
Billable + ratesPer-entry rate, totals the amount dueYes, often on paid tiers
TotalsToday, week, per project, billableDashboards, sometimes premium
ExportCSV (filter-aware) + JSON backupCSV/PDF export, often gated
PrivacyNothing uploaded, no account, no trackingSign-in and sync to a server
Cost / signupFree, no signupFree tier + paid plans / install

AnyTool stores every entry locally and uploads nothing; export CSV for invoicing/timesheets and JSON to back up or move devices.