
A freelance timesheet records when you worked, which client or project the work belonged to, what you did, and how much time you spent. A useful template also distinguishes billable work from non-billable time and leaves room for notes that explain the entry.
You can copy the template below into a document or spreadsheet and start using it today. It works for hourly assignments and for understanding the effort behind fixed-price projects.
The template is free to copy. The SelfManager.ai workflow later in this article is a separate way to collect the task records that help you fill it.
Freelancer: [Your name]
Client: [Client name]
Project: [Project name]
Reporting period: [Start date to end date]
Time zone: [Time zone used for entries]
Time format: [Hours and minutes, or decimal hours]
Billing basis: [Hourly / fixed price / retainer]
Billable-time rules: [What you agreed to include]
Rounding rule: [If applicable, as agreed with the client]
| Date | Work description | Start | Finish | Breaks excluded | Time worked | Billable? | Notes |
|---|---|---|---|---|---|---|---|
| [Date] | [Specific task or activity] | [Time] | [Time] | [Minutes] | [Duration] | [Yes / No / Confirm] | [Outcome or context] |
| [Date] | [Specific task or activity] | [Time] | [Time] | [Minutes] | [Duration] | [Yes / No / Confirm] | [Outcome or context] |
| [Date] | [Specific task or activity] | [Time] | [Time] | [Minutes] | [Duration] | [Yes / No / Confirm] | [Outcome or context] |
Total recorded time: [Duration]
Confirmed billable time: [Duration]
Non-billable time: [Duration]
Time awaiting billing confirmation: [Duration]
Prepared on: [Date]
Questions or corrections: [Details]
Use one copy per client and reporting period if you want a simple document. If you prefer one master sheet, add Client and Project columns to every row.
You can remove Start, Finish, and Breaks excluded when your source record already provides an accurate duration. Keep them when the client needs that detail or when they help you verify the calculation.
This is a fictional example. Alex is a freelance web developer working on a website refresh for a fictional client, Cedar Studio.
Alex and the client have agreed that implementation and project meetings are billable. Alex treats organizing personal work records as non-billable. These rules are part of this example, rather than a rule for every freelance engagement.
Reporting period: October 5-9, 2026
Time zone: UTC
Time format: Hours and minutes
| Date | Work description | Start | Finish | Breaks excluded | Time worked | Billable? | Notes |
|---|---|---|---|---|---|---|---|
| Oct 5 | Review requirements and map page changes | 09:00 | 10:15 | 0 min | 1 h 15 min | Yes | Listed changes and questions for the client |
| Oct 5 | Build homepage layout | 10:30 | 12:30 | 15 min | 1 h 45 min | Yes | First desktop layout ready for review |
| Oct 6 | Project review call | 14:00 | 14:30 | 0 min | 30 min | Yes | Client confirmed revised navigation |
| Oct 7 | Implement mobile navigation | 09:00 | 11:00 | 0 min | 2 h | Yes | Navigation ready for testing |
| Oct 8 | Test forms and correct validation messages | 15:00 | 16:15 | 0 min | 1 h 15 min | Yes | Tested required fields and error messages |
| Oct 9 | Organize personal work records | 16:00 | 16:30 | 0 min | 30 min | No | Prepared the weekly time summary |
The homepage session spans two hours, but includes a 15-minute break. Its recorded work duration is therefore 1 hour 45 minutes.
The entries also explain what happened. “Build homepage layout” is more useful with a note saying the first desktop layout is ready for review. It does not imply that the client has approved the work.
For a work session that starts and finishes on the same day:
Time worked = finish time - start time - excluded breaks
Split a session into separate entries when you switch clients or activities and need to account for them separately. Include dates as well as times for sessions that cross midnight.
These formats express the same duration differently:
| Hours and minutes | Decimal hours |
|---|---|
| 15 minutes | 0.25 |
| 30 minutes | 0.50 |
| 45 minutes | 0.75 |
| 1 hour 15 minutes | 1.25 |
| 1 hour 45 minutes | 1.75 |
| 6 hours 45 minutes | 6.75 |
1 hour 30 minutes is 1.5 hours, not 1.30 hours.
To convert minutes to decimal hours, divide by 60. In the example, 45 minutes divided by 60 equals 0.75, making the billable total 6.75 hours.
Keep one format throughout the summary. If you use a spreadsheet, make sure the total preserves durations above 24 hours rather than wrapping around as a clock time.
Record the actual duration first. If your agreement uses rounding, minimum charges, or another adjustment, show that separately when needed.
This preserves an understandable work record. It also prevents a later reader from assuming a rounded billing quantity is an exact measurement of time worked.
Include the work that helps explain the engagement: implementation, research, meetings, testing, revisions, and relevant project administration.
Whether an activity is billable depends on your agreement. A client meeting might be included in one arrangement and covered by a fixed fee in another.
For unclear entries:
For a fixed-price project, a timesheet can help you understand effort and improve future estimates. Recording extra hours does not automatically change the agreed fee.
The slow part of a timesheet is often reconstructing the week. By Friday, “worked on the website” can hide several calls, revisions, and interrupted sessions.
SelfManager.ai organizes work into tables attached to dates, with time tracking for individual tasks. Comments and notes keep the surrounding decisions with the work. That gives you a daily record to consult when preparing your timesheet.
On the relevant date, create a table for the client or project. Add specific tasks such as:
Use names that will still make sense when you return to the records later.
Use the task’s time tracker while working. Stop tracking when you take a break or switch activities, and check the record if you forget.
A task can remain unfinished after a work session. Record the time you spent without marking the task complete until its actual completion condition is met.
A brief table comment can record a client decision, a blocker, or what remains:
“Client confirmed the revised menu. Mobile implementation is ready for testing; desktop changes remain open.”
That note helps you write an accurate work description later. Add the task name when a comment concerns a particular entry.
Review the dates in your reporting period and transfer the relevant task durations into your chosen template. Assign billing status using the agreement, check the descriptions, and calculate the totals.
You should still verify the finished timesheet and any billing classifications before sharing it.
Try SelfManager.ai free for seven days, with no card required, if you want to collect the work record while planning and completing your client tasks.
SelfManager.ai’s AI can use task data, tracked time, comments, and notes to help summarize work. You can ask it to draft concise descriptions from the available records.
A useful instruction is:
Summarize the recorded work for this client during this period. Use clear work descriptions. Include only recorded durations, flag missing information, and do not infer whether an activity is billable.
Review the output against the underlying entries. AI should not invent missing time or decide what your client agreed to pay for.
Check the client, reporting dates, included tasks, durations, and any uncertain entries before transferring a draft into the timesheet.
“Development” gives the reader little context. “Implemented mobile navigation and prepared it for testing” identifies the work and its state.
If you track one session in two tools, reconcile the records. Two overlapping entries do not necessarily represent two separate pieces of work.
A two-hour estimate is useful for planning. It is not evidence that you worked for two hours. Keep estimates and actual durations distinguishable.
Track the work first and classify it using the agreement. Keep uncertain time visible until the question is resolved.
Before sending your timesheet, confirm:
A simple timesheet is enough when the underlying record is reliable. The biggest improvement is making that record part of the working day.
Use SelfManager.ai’s seven-day trial to plan client tasks, track their time, and keep the comments you will need when preparing your next timesheet.
A freelance timesheet records work performed during a defined period, including dates, activities, and durations. It can also distinguish billable, non-billable, and unconfirmed time.
Yes. Copy the template into your preferred document or spreadsheet and adapt the fields to your work and client requirements.
Time records can help you compare estimates with actual effort and plan future work. They do not automatically change the fixed price agreed with the client.
Divide the minutes by 60. For example, 30 minutes equals 0.5 hours, and 45 minutes equals 0.75 hours.
Use reliable records to reconstruct what you can support. Clearly label any estimated duration and avoid presenting a guess as a precise timer record.
Yes. Dated task tables, task-level time tracking, comments, and notes provide records you can consult when filling a timesheet. AI can help draft descriptions, but you should verify durations and billing classifications before sharing.

Plan smarter, execute faster, achieve more
Create tasks in seconds, generate AI-powered plans, and review progress with intelligent summaries. Perfect for individuals and teams who want to stay organized without complexity.
Get started with your preferred account