Time Tracker
Track how long you spend on each task and project. Start and stop a timer, fix or add entries by hand, and see daily and weekly totals, billable hours and earnings. Your data stays in your browser.
Last updated:
Rows are projects, columns are days. Entries count on the day they started. Billable time is shown in brackets.
Everything is saved only in this browser (localStorage). Download a CSV regularly as a backup.
How to use the Time Tracker
- Type what you are working on, pick a project and leave Billable ticked if you will charge for it.
- Press Start timer (or Enter). The counter runs, even if you close the tab and come back later.
- Press Stop timer when you finish. The entry appears under today with its duration.
- Fix mistakes with Edit, or use Add time manually for work you forgot to time.
- Open Projects to add clients and hourly rates, then check the Weekly timesheet and download the CSV for invoicing.
Converting tracked time to decimal hours
Invoices and payroll systems usually want decimal hours, not hours and minutes. Divide the minutes by 60: 1 h 45 min = 1 + 45 ÷ 60 = 1.75 h. The CSV export includes both formats, plus the amount for billable entries (decimal hours × hourly rate).
| Minutes | Decimal | Minutes | Decimal |
|---|---|---|---|
| 5 min | 0.08 h | 35 min | 0.58 h |
| 10 min | 0.17 h | 40 min | 0.67 h |
| 15 min | 0.25 h | 45 min | 0.75 h |
| 20 min | 0.33 h | 50 min | 0.83 h |
| 25 min | 0.42 h | 55 min | 0.92 h |
| 30 min | 0.50 h | 60 min | 1.00 h |
Tips for accurate time tracking
- Name tasks by outcome ("Fix checkout bug", "Draft Q3 report") so the CSV reads like a work log your client or manager understands.
- Use the ▶ button next to an entry to restart the same task later; each session becomes its own entry, so you keep a precise history.
- Forgot to start the timer? Use Add time manually with a start and end time, or a duration such as 1:30, 1.5 or 90m. An end time earlier than the start is treated as past midnight.
- Billable vs non-billable: mark admin, email and internal meetings as non-billable. Your billable ratio (billable ÷ total hours) shows how much of your week actually earns money; freelancers often plan prices assuming 60–75% of working time is billable.
- Back up: data lives only in this browser. Clearing site data or using private browsing removes it, so download the CSV at the end of each week.
Frequently asked questions
Where is my time tracking data stored?
Only in your own browser, using localStorage. Nothing is sent to a server and there is no account. That also means another browser or device will not see your entries, and clearing site data deletes them, so download a CSV backup regularly.
Does the timer keep running if I close the tab?
Yes. The tracker stores the start time, not a ticking counter, so when you reopen the page the running entry shows the correct elapsed time. Only one timer runs at a time; starting a task from an entry's ▶ button stops the current one.
How are earnings calculated?
For each billable entry, earnings = duration in decimal hours × the project's hourly rate. For example 1 h 45 min at $60/h is 1.75 × 60 = $105. Non-billable entries and projects without a rate count as hours only.
How do I add time I forgot to track?
Press Add time manually, enter the task, date and start time, then either an end time or a duration such as 1:30, 1.5 or 90m. If the end time is earlier than the start time, the entry is treated as running past midnight.
What is in the CSV export?
One row per entry with date, start, end, task, project, billable flag, duration as h:mm:ss, decimal hours, rate and amount. It opens in Excel, Google Sheets or Numbers and can be pasted into an invoice.
Which day does an entry crossing midnight count on?
Entries are counted on the day they started, the same convention most timesheet tools use. If you need the hours split across two days, edit the entry to end at midnight and add a second entry for the rest.
Are all the tools on FreeToolCabin tested for quality and accuracy?
Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.