Notion time tracking for freelancers: record hours with useful context
A list of hours tells you how long you worked. It becomes more useful when you can see what the work involved, which project it belonged to and whether the time was billable.
Notion time tracking for freelancers can be a practical manual workflow: record a session, retain its context and review the entries before they become difficult to reconstruct. If you already organise work in Notion, that may be enough without adding a separate timer app.
This guide explains a suggested DIY setup, the views that keep it usable and how BrainyShackās time-log structure fits into operational finance. It also explains when specialist time-tracking software is the more appropriate choice.
At a glance
Record a date, duration, activity and billing context for each work session.
Keep billable status separate from whether the work has been invoiced or paid.
Connect time to existing project or client records when those connections help you review the work.
Use separate views for entry, recent activity, missing information and dated review.
Choose specialist software when reliable timer capture or formal billing workflows are essential.
What should Notion time tracking for freelancers record?
Start with one Time Logs database and one entry per meaningful session. A session might be a consultation, a drafting block or a revision round. Avoid making every small action its own record unless that detail serves a real reporting need.
In an existing Notion page, type /database and create a table database. Use a database rather than a simple table so you can filter records and create different views. Notionās database creation guide explains the current entry route.
For a small DIY build, use these properties:
Property | Suggested type | What it preserves |
Activity | Title | A recognisable description of the session |
Work date | Date | When the work happened |
Duration in minutes | Number | The recorded length of the session |
Work type | Select | Delivery, admin, marketing or learning |
Billable | Checkbox | Whether the session is chargeable under your agreement |
Client | Relation, or a consistent label | Who the work belongs to, where relevant |
Project | Relation, or a consistent label | Which engagement the session supports |
Notes | Text | Scope, decisions or details needed for later review |
Notionās property documentation covers these property types. The suggested names above are a DIY design, not an exact specification of a BrainyShack product.
Use the work date rather than relying on the recordās creation timestamp. If you enter yesterdayās session this morning, those dates mean different things.
Choose one duration unit and label it clearly. Enter 90 for a 90-minute session, not 1.30. For an optional Hours formula, use prop("Duration in minutes") / 60, which converts 90 minutes to 1.5 hours. This is a calculation from your recorded value, not a timer. Notionās formula reference documents property references and division.
Keep the client, project and billing meaning attached
An activity title should tell you what happened. āWebsite copy revisionsā will be easier to understand later than āWorkā. Add the client or project separately so you can review several sessions belonging to the same engagement.
If you already maintain Clients or Projects databases, use Relation properties to connect the time entries to those existing records. Notionās relations documentation explains how pages in different databases connect. You can then return to the relevant work rather than maintaining another version of its details in the time log.
For a very small standalone tracker, consistent labels may be sufficient. Use one spelling for each client or project. A label identifies the engagement; it does not provide the connected record history that a relation offers.
Hypothetical example: a consultant spends 75 minutes preparing a workshop and 90 minutes delivering it for Alder Studio. Both entries belong to the same workshop project. A separate 30-minute session spent refining the consultantās own proposal template is internal admin.
Those records preserve 165 minutes of workshop effort and 30 minutes of internal work. Whether preparation is billable depends on the agreement. Marking a session as billable should reflect that agreement, rather than assuming every client-related activity is chargeable.
A billable checkbox also does not mean āinvoicedā, āpaidā or āready to invoiceā. If you invoice hourly, retain a separate invoice reference or billing status in your own workflow, or keep that information in your billing software. These are suggested additions, not claims about BrainyShackās built-in time-log fields.
For fixed-fee work, record the effort even when you do not charge by the hour. It helps you compare what the engagement required with what you expected when quoting it. Keep total project effort visible; reviewing only chargeable sessions can hide preparation and administration.
Create views for entry, review and cleanup
Use several views of the same database. Separate lists would create more places to maintain the same session. Each view should answer a different question.
A quick entry view
Show the properties needed to capture a session: activity, date, duration, work type, billable status and context. Keep longer notes inside the record when they make the table unwieldy.
Record the session when you finish it, or at a consistent point during the day. If the duration is an estimate, identify that in the note. A neatly formatted estimate is still an estimate.
A recent activity view
Filter the work date to the period you are reviewing and sort newest first. Group by work date if that makes the week easier to scan. Look for missing sessions, duplicate entries and vague descriptions while the work is still fresh.
For a weekly billable review, combine the date filter with Billable checked. To review total effort on an engagement, filter by its client or project without excluding non-billable sessions. In a table, use the duration propertyās Calculate ā Sum option to total the recorded minutes. Notionās table guide documents number calculations.
A cleanup view
Create a view for missing work dates or durations, and another for billable entries missing the context you require. In the DIY setup, if either a client or a project identifies the engagement, flag billable records only when both are empty.
Use the databaseās view settings to add filters, sorts and groups. Notionās views documentation explains how to combine AND and OR conditions. Check the resulting records: a cleanup queue should surface a real omission, not flag every internal session for lacking a client.
A work-date calendar
Add a calendar view using Work date. Show duration, work type and billable status on its cards where useful. The calendar helps you revisit the shape of the week; it is a view of recorded sessions, not proof that every working hour was captured. Notionās calendar guide explains date selection and visible card properties.
How BrainyShackās Time Logbook fits the workflow
BrainyShackās Income & Expenses System includes Time Logbook alongside Revenue Command, Expense Command, Finance File Shelf and Finance Cleanup. Its purpose is to keep working time visible beside expected income, outgoing costs and supporting finance records.
Time Logbook has distinct Log Time, Recent Logs and Billable Cleanup views, plus a Time Log Calendar. Log Time supports entry, Recent Logs supports activity review, Billable Cleanup surfaces billing-context issues, and the calendar gives logged effort a dated view. Finance Cleanup serves a different purpose: maintaining revenue and expense records.
The fuller BrainyStack Pro OS time-log structure includes minutes, calculated hours, work type, billable status, notes and connections to tasks, projects, clients and time periods. Those connections follow product scope. The standalone Income & Expenses System does not include Projects OS or Client OS, so it should not be understood as the complete Pro relationship structure.
If you need logged time connected to active projects and commercial delivery, Project Command Stack combines Projects OS and Finance OS. Projects OS manages projects, tasks, deadlines and delivery movement; Finance OS retains the money and time layer around that work. This Stack does not include Client OS.

When a manual Notion log is enough
A lightweight log is a reasonable fit when you work in recognisable sessions, can record durations consistently and mainly need to review effort alongside your work. Try it for one normal week before designing extra reporting layers.
During the review, ask whether you can identify what happened, recover its engagement context and find anything that needs correction. If maintaining the log repeatedly slips, adding more properties will not solve the capture problem.
Choose specialist timer software when you need dependable start/stop capture, reminders, idle-time handling, frequent switching between engagements, detailed client reports or a controlled approval and billing process. Check the specific software against those requirements rather than assuming every timer provides them.
You can keep a timer as the authoritative time record and use Notion for project context. Decide which tool owns the duration so conflicting totals do not develop. Any transfer or integration needs its own setup; it is not an included BrainyShack capability.
BrainyShackās systems provide manual time logging and operational visibility. They do not provide automatic timers, invoicing automation or payroll functionality. The useful starting point is the smallest routine that captures trustworthy time and enough context to make the next review worthwhile.
If you want that time-and-finance structure already organised in Notion, explore the focused system.

Comments