Timesheet & Billable Hours Tracker
Track time against clients and projects, apply professional rounding rules, see billable utilisation and value in any currency, and turn uninvoiced time into an invoice-ready summary. Runs entirely in your browser. No installation, no account, no upload.
Version 1.0.0 · Updated Aug 5, 2026
Overview
How to use Timesheet & Billable Hours Tracker
The complete in-tool guidance, reproduced here so you can read it before you download.
What this tool does
CM8-18 records the time you work, decides how much of it is billable, applies your rounding rules and rates, and turns the result into a timesheet, an invoicing list and a printable report. It suits anyone who bills by the hour — consultants, lawyers, designers, accountants, trades, agencies — and anyone who simply wants to know where the week actually went.
Everything happens inside this single file. There is no account, no upload and no network request of any kind, so your client names, rates and hours never leave the computer you are using.
Getting started
- On Settings, set your currency, default rate, rounding rule and utilisation target.
- On Clients & projects, add the people you work for and the jobs you do for them. A rate set on a client flows down to its projects and entries.
- On Track, either start the timer or add entries by hand.
- Watch the tiles: tracked hours, billable hours, utilisation, billable value and the amount still waiting to be invoiced.
To see it working first, press Load sample week on the Settings tab — a believable week for a freelancer with three clients. It replaces whatever is loaded, so export a backup first if you have real data.
The running timer
Pick a client, a project and what you are working on, then press Start. The elapsed time appears in the tab strip so it stays visible while you work. Stop & save converts the elapsed time into an entry; Discard throws it away.
The timer uses your device clock and is written to local storage, so it survives a page reload or a browser restart — but it does not know that you went home. If it has been running for more than 24 hours the tool says so rather than silently billing it.
One timer runs at a time. That is deliberate: parallel timers produce hours you cannot defend.
Recording time by hand
Entries can be recorded two ways, chosen with Entry method:
- Start & end time — type 09:00 and 11:30. In 12-hour mode 9:00 AM and 11:30 AM work too. An end time before the start is treated as crossing midnight.
- Duration — type 1:30, 1.5, 90m or 1h30. All four mean ninety minutes.
The Computed box shows what the entry will actually bill before you add it: the tracked time, the billed time after rounding, the rate that applies and the value. Every entry can be edited or deleted from the list, and marked billable or non-billable and invoiced or not.
Write the description in the client's language. It is what appears on the printed report and, in most practices, on the invoice. “Reviewed and marked up the supply agreement” justifies itself; “work” does not.
Rounding and minimum blocks
Time can be billed exactly, or rounded to 5, 6, 10, 15 or 30-minute increments, either to the nearest increment or always up. A minimum billable block can also be set, so a two-minute phone call bills as your minimum rather than as nothing.
Rounding always applies to the individual entry, never to the daily or weekly total. Rounding a total hides which piece of work carried the uplift, and clients notice.
Rounding is a commercial decision, not an accounting one. Rounding up to the next 15 minutes on a six-minute call is legal in most places and still corrosive to trust. The Settings preview shows exactly what four sample durations would bill, so you can see the effect before you choose.
Tracked hours are always the truth: the rounding only changes billed hours and value. Both are reported separately, so the gap between what you worked and what you billed is never hidden from you.
How the rate is decided
Each entry resolves its rate in a fixed order, taking the first one that is set:
- The rate typed on the entry itself.
- The project rate.
- The client rate.
- The default rate on the Settings tab.
That order lets you keep one client rate and override it for the one project that is priced differently, without touching anything else.
Entry value = billed hours × resolved rate Effective rate = total billable value ÷ billed hours
The effective rate is the number worth watching. It is what you are really earning per hour once non-billable time, discounts and rounding have had their say, and it is almost always lower than the rate on your rate card.
Utilisation, and what it does not mean
Utilisation = billable tracked hours ÷ tracked hours × 100
Utilisation measures the share of recorded time that is billable. It does not measure how hard you worked, how well, or whether the work was worth doing. A week at 100 % utilisation with no proposals written, no invoices raised and no business development is not a good week.
Set a target you actually believe in. For most independent professionals a sustainable figure sits well below 100 % once admin, marketing and unpaid rework are counted honestly. The utilisation chart plots each week against your target so you can see the trend rather than react to a single bad Tuesday.
The weekly grid
The Week tab is the classic seven-column timesheet: one row per client and project, one column per day, hours in each cell. Today's column is highlighted. Move between weeks with the navigation buttons; the footer shows daily totals and the billable share.
It is the fastest way to spot a day with no time recorded at all — usually a day you forgot to record rather than a day you did not work.
Clients, projects and budgets
Clients hold a default rate. Projects belong to a client and can carry their own rate, a budget in hours and a fixed fee.
Where a budget is set, the project list shows hours used against it and flags the ones running hot before they overrun. Where a fixed fee is set, the tool compares the fee against the value of the time recorded, so you can see the moment a fixed-price job stops being profitable — the single most useful number a fixed-fee business can have.
Deleting a client removes its projects but keeps the time entries; they simply lose the link, so no recorded work ever disappears because of a housekeeping decision.
Getting paid
Ready to invoice lists billable time that has not yet been marked invoiced, grouped by client and project, within the current date filter. It shows entries, tracked hours, billed hours, effective rate and value.
Mark a client's time as invoiced once you have raised the invoice, or mark everything shown at once. This tool does not produce the invoice document itself and never sends anything — the flag is a record for you. For the invoice itself, see the CapsuleM8 invoice generator.
Nothing here checks whether you were actually paid. Marking time invoiced means the work has been billed, not that the money has arrived.
Reports and charts
The Reports tab summarises the current filter by client and project: tracked hours, billable hours, billed hours, utilisation, value, uninvoiced value and budget position. Three charts accompany it — hours per day for the selected week, hours and value by client, and billable utilisation by week against your target.
Every chart prints its own values as text, so the printed page remains readable in black and white and to anyone using a screen reader.
Two CSV exports are available: the filtered entry list, and the summary with its totals.
Printing
Print Report produces a report built from whatever the current filter shows: header, headline tiles, the weekly grid, the summary table, the charts, the entry list and your closing notes. Print to PDF to send it.
Set the report title, company, preparer and closing notes on the Settings tab. The scope line under the title states the filter and the rounding rule in force, so a reader cannot mistake a filtered report for a complete one.
Currency, dates and the week start
Forty-four currencies are supported and formatted using your device's regional settings, so amounts appear the way your reader expects them. Dates can be shown in ISO, day-month-year, month-day-year or day-month-name form, and times in 24-hour or 12-hour format.
The week can start on Monday, Sunday or Saturday. This affects the weekly grid, the “this week” and “last week” filters and the weekly utilisation chart — worth setting correctly before you read anything into the trend.
Saving your work
Entries, clients, projects, settings, the report header and any running timer are written to this browser's local storage as you work, and the toolbar shows the time of the last save. That storage belongs to one browser on one computer: another browser, a private window, a second machine or a clean-up tool that clears site data will not have it.
Treat Export .json as the real save — one file containing everything, which Import .json restores anywhere. Reset asks twice, then erases the in-memory data and every storage key this tool uses, returning it to a clean first run. There is no undo, so export first.
Accuracy & disclaimer
This tool records what you tell it and does the arithmetic. It cannot know whether the time was actually worked, whether it is billable under your engagement terms, or whether your rounding practice is acceptable to your client, your regulator or your professional body.
Time records are frequently evidence — in fee disputes, in assessments of costs, in audits and in employment matters. Keep them contemporaneous and honest, keep your own backups, and check your obligations where you practise. This is a record-keeping aid, not legal, tax or professional advice.