Harborlight
Guide · last checked 12 Oct 2026

Track billable hours for free. From first minute to timesheet.

Billing by the hour comes down to three jobs: catch every minute, put the right price on it, and give the client a record they can check. A spreadsheet can do it. Here's how to set it up so nothing slips, and a free tool that does the arithmetic for you.

The basics

What each time entry needs

Whatever you use, every entry should hold the same few facts. Leave one out and the invoice becomes guesswork.

Pricing

Rates per client, and per project

Most freelancers end up with more than one rate: a long-standing client on one price, a new one on another, a rush job above both. Set a rate on each client, and override it on a project only when that project is priced differently. When you raise a rate, decide whether it applies to work already done, and make sure your records show which rate each invoice used.

Rounding

Round fairly, and say how

Rounding turns 13 minutes into a billable unit. Two choices matter: the step (6 minutes is a tenth of an hour, 15 minutes a quarter) and the direction (up, down or to the nearest).

Rounding each entry and rounding the total give different results. Three 10-minute calls rounded up to 15 minutes each bill 45 minutes; rounded as one 30-minute total, they bill 30. Neither is wrong, but your client should know which rule you use. Put it in your quote or contract, and apply it the same way every time.

To convert minutes into decimal hours for an invoice, divide by 60: 1 h 20 min is 1.33 h, 45 min is 0.75 h.

Spreadsheet

Doing it in a spreadsheet

Columns: Date, Start, End, Client, Project, Description, Billable, Hours, Rate, Amount. With Start in column B and End in column C, these formulas work in Excel and Google Sheets:

Hours:            =(C2-B2)*24
Rounded up to 15: =CEILING((C2-B2)*24, 0.25)
Amount:           =H2*I2
Past midnight:    =MOD(C2-B2, 1)*24

A spreadsheet is fine until you forget to write down a start time. That's where a timer helps.

Step by step

Track billable hours with Hourwright

  1. Add clients and rates. In Setup, add each client with an hourly rate and currency, then add projects. A project uses its client's rate unless you give it its own.
  2. Choose your rounding. In Setup, under Rounding, round each billable entry to 6, 15 or 30 minutes (or another step), up, down or to the nearest. Your tracked time itself never changes.
  3. Track the time. On Track, describe the task, pick the project and press Start timer, or press S. Forgot? Add the entry by hand with its date, start and end.
  4. Run the report. In Report, pick the date range and filter by client. You see tracked hours, billable hours and the amount.
  5. Send the timesheet. Download a CSV, print or save a PDF, copy a summary for your invoice email, or copy a client link with the timesheet inside it.

Hourwright does the arithmetic

A free time tracker for freelancers: a timer that keeps running if you close the tab, rates per client with project overrides, any currency, rounding per entry, reports over any date range, and exports as CSV, a printable timesheet, a summary for your invoice email or a read-only client link. No account, and your data stays in your browser.

What it doesn't do: it doesn't make invoices; it gives you exact hours and amounts to put on yours. Each browser keeps its own data, so move it with Download backup and Restore backup. Rates and rounding are applied when the report is calculated, so changing a rate later also changes the amounts shown for past entries: export the CSV or timesheet before you change a rate, or put the new rate on a new project.

Sending it

What a timesheet for your client should show

Hourwright's CSV has these columns: Date, Start, End, Client, Project, Description, Hours, Billable, Billable hours (rounded), Rate, Currency, Amount. It opens in any spreadsheet.

Comparing time trackers? Read the free-plan comparison with sources.